diff options
author | João Paulo Rechi Vita <jprvita@gmail.com> | 2013-12-27 18:09:07 -0300 |
---|---|---|
committer | João Paulo Rechi Vita <jprvita@gmail.com> | 2013-12-27 18:50:02 -0300 |
commit | ee2f0fd746eec69a0db399cbbb42f3dbb3549e89 (patch) | |
tree | 7b3358598d7b74708ce6bf3c8244cea49fedb8c1 | |
parent | 80145c884e79532c7399b5766fd8f78cf8facbdf (diff) |
example: Broadcaster example that uses the Link Layerll-devel
-rw-r--r-- | Makefile.am | 1 | ||||
-rw-r--r-- | configure.nrf | 1 | ||||
-rw-r--r-- | examples/ll-broadcaster/Makefile | 7 | ||||
-rw-r--r-- | examples/ll-broadcaster/Makefile.am | 45 | ||||
-rw-r--r-- | examples/ll-broadcaster/main.c | 44 |
5 files changed, 98 insertions, 0 deletions
diff --git a/Makefile.am b/Makefile.am index b56b0c9..3930bcd 100644 --- a/Makefile.am +++ b/Makefile.am @@ -6,6 +6,7 @@ if PLATFORM_NRF SUBDIRS = stack \ platform/nrf51822 \ examples/helloworld \ + examples/ll-broadcaster \ examples/logging \ examples/PIR \ examples/radio-broadcaster \ diff --git a/configure.nrf b/configure.nrf index 0354381..b64bd32 100644 --- a/configure.nrf +++ b/configure.nrf @@ -37,6 +37,7 @@ AC_OUTPUT([ Makefile stack/Makefile platform/nrf51822/Makefile examples/helloworld/Makefile + examples/ll-broadcaster/Makefile examples/logging/Makefile examples/PIR/Makefile examples/radio-broadcaster/Makefile diff --git a/examples/ll-broadcaster/Makefile b/examples/ll-broadcaster/Makefile new file mode 100644 index 0000000..e8c2c8b --- /dev/null +++ b/examples/ll-broadcaster/Makefile @@ -0,0 +1,7 @@ +# Makefile for radio-broadcaster example + +PROJECT_TARGET = ll-broadcaster-example +PROJECT_SOURCE_FILES = main.c + +BLESTACK_PATH = ../.. +-include $(BLESTACK_PATH)/Makefile.common diff --git a/examples/ll-broadcaster/Makefile.am b/examples/ll-broadcaster/Makefile.am new file mode 100644 index 0000000..fa0c918 --- /dev/null +++ b/examples/ll-broadcaster/Makefile.am @@ -0,0 +1,45 @@ +AM_CFLAGS=-mcpu=cortex-m0 -mthumb +AM_LDFLAGS=--specs=nano.specs -mabi=aapcs -Xlinker -Map=ll-broadcaster.map \ + -T$(top_builddir)/platform/nrf51822/gcc_nrf51_blank_xxaa.ld \ + -L$(SDK_DIR)/Nordic/nrf51822/Source/templates/gcc + +PLATFORM_LIBS = $(top_builddir)/stack/libblestack.a \ + $(top_builddir)/platform/nrf51822/libnrf.a + +AM_CPPFLAGS = -I$(top_builddir)/stack \ + -I$(top_builddir)/platform/nrf51822 + +LL_BROADCASTER_SOURCE_FILES = main.c +LL_BROADCASTER_OBJECT_FILES = $(LL_BROADCASTER_SOURCE_FILES:.c=.o) + +do_subst = sed -e 's,BIN_FILE,$(abs_builddir)/ll-broadcaster.bin,g' + +all: ll-broadcaster.bin flash.jlink + +ll-broadcaster.bin: ll-broadcaster.out + $(OBJCOPY) -Obinary ll-broadcaster.out $@ + +flash.jlink: + $(do_subst) < $(top_builddir)/platform/nrf51822/flash.jlink.in > $@ + +ll-broadcaster.out: $(LL_BROADCASTER_OBJECT_FILES) + + $(CC) $(AM_LDFLAGS) $(AM_CFLAGS) $(LL_BROADCASTER_OBJECT_FILES) $(PLATFORM_LIBS) -o $@ + + $(OBJDUMP) -h ll-broadcaster.out + +# Build object files from C source files +%.o: %.c + $(CC) -c $(CFLAGS) $(AM_CPPFLAGS) -o $@ $< + +MAINTAINERCLEANFILES = Makefile.in \ + ll-broadcaster.bin \ + ll-broadcaster.out \ + ll-broadcaster.map \ + flash.jlink + +clean-local: + $(RM) -rf $(MAINTAINERCLEANFILES) + $(RM) *.o + +.PHONY: all clean-local diff --git a/examples/ll-broadcaster/main.c b/examples/ll-broadcaster/main.c new file mode 100644 index 0000000..b085dd1 --- /dev/null +++ b/examples/ll-broadcaster/main.c @@ -0,0 +1,44 @@ +/** + * The MIT License (MIT) + * + * Copyright (c) 2013 Paulo B. de Oliveira Filho <pauloborgesfilho@gmail.com> + * Copyright (c) 2013 Claudio Takahasi <claudio.takahasi@gmail.com> + * Copyright (c) 2013 João Paulo Rechi Vita <jprvita@gmail.com> + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +#include <string.h> +#include <stdint.h> + +#include "log.h" +#include "ll.h" + +int main(void) +{ + ll_init(); + log_init(); + + DBG("Starting advertise using the Link Layer"); + ll_advertise_start(LL_ADV_NONCONN_UNDIR, NULL, 0); + + while (1); + + return 0; +} |