contiki/cpu/mc1322x
2013-11-29 11:59:04 -08:00
..
board Merge branch 'master' of git://git.devl.org/git/malvira/libmc1322x into bump-libmc1322x 2012-11-18 18:27:39 -05:00
dev
doc Rename to md 2013-03-26 23:15:37 +01:00
lib A massive all-tree automated update of all double inclusion guard #defines that changes from using two underscores as a prefix, which are reserved, to not using two underscores as a prefix 2013-11-24 20:20:11 +01:00
src Merge branch 'master' of git://git.devl.org/git/malvira/libmc1322x into bump-libmc1322x 2012-11-18 18:27:39 -05:00
tests Merge branch 'master' of git://git.devl.org/git/malvira/libmc1322x into bump-libmc1322x 2012-11-18 18:27:39 -05:00
tools Merge branch 'master' of git://git.devl.org/git/malvira/libmc1322x into bump-libmc1322x 2012-11-18 18:27:39 -05:00
.gitignore
clock.c Use the RTC only as the main timer. 2013-02-03 15:15:05 -05:00
config.c Newer and cleaner TARGET=econotag as well as robust mc13224v 2012-11-19 19:16:29 -05:00
config.h Newer and cleaner TARGET=econotag as well as robust mc13224v 2012-11-19 19:16:29 -05:00
contiki-maca.c add working routines to turn the mc1322x radio on and off 2013-02-03 14:48:38 -05:00
contiki-maca.h
contiki-mc1322x-conf.h A massive all-tree automated update of all double inclusion guard #defines that changes from using two underscores as a prefix, which are reserved, to not using two underscores as a prefix 2013-11-24 20:20:11 +01:00
contiki-misc.c
contiki-uart.c
contiki-uart.h
COPYING Merge remote branch 'libmc1322x/master' into update-libmc1322x 2011-02-17 14:41:47 -05:00
CREDITS
dbg-io.c
debug-uart.c
debug-uart.h A massive all-tree automated update of all double inclusion guard #defines that changes from using two underscores as a prefix, which are reserved, to not using two underscores as a prefix 2013-11-24 20:20:11 +01:00
init.c Use the RTC only as the main timer. 2013-02-03 15:15:05 -05:00
io.h
leds-arch.c
Makefile.include
Makefile.mc1322x Enable the silent compilation mode from the latest Contiki 2013-11-22 15:53:30 +01:00
mc1322x.lds.S run the linker script through CPP so that the stack sizes can be 2013-01-05 17:08:59 -05:00
mtarch.h A massive all-tree automated update of all double inclusion guard #defines that changes from using two underscores as a prefix, which are reserved, to not using two underscores as a prefix 2013-11-24 20:20:11 +01:00
README.md Rename to md 2013-03-26 23:15:37 +01:00
README.subtree.md Rename to md 2013-03-26 23:15:37 +01:00
rtimer-arch.c Use the RTC only as the main timer. 2013-02-03 15:15:05 -05:00
rtimer-arch.h A massive all-tree automated update of all double inclusion guard #defines that changes from using two underscores as a prefix, which are reserved, to not using two underscores as a prefix 2013-11-24 20:20:11 +01:00
slip-uart1.c
TODO
watchdog.c An implementation of the mc1322x watchdog 2013-11-22 15:54:06 +01:00

MC1322x

libmc1322x is a library, build system, test code, and utilities for using the mc13224v from Freescale.

Getting Started

cd tests
make

this will build all the test files in libmc1322x/tests for each board defined in libmc1322x/board. You will have programs like:

rftest-tx_redbee-dev.bin rftest-tx_redbee-r1.bin

rftest-rx_redbee-dev.bin rftest-rx_redbee-r1.bin

if you only wanted to build binaries for one board you can do:

make BOARD=redbee-dev

You can use mc1322x-load.pl in libmc1322x/tools to run your code:

../tools/mc1322x-load.pl -f rftest-tx_redbee-dev.bin

Incorporating libmc1322x into your own code

The best way to incorporate libmc1322x into your code is as a git submodule:

mkdir newproject
cd newproject
git init

Initialized empty Git repository in /home/malvira/newproject/.git/

git submodule add git://git.devl.org/git/malvira/libmc1322x.git

This will add libmc1322x to your repository. Now to setup the Makefile:

cp libmc1322x/tests/Makefile .

You need to edit the Makefile to point MC1322X to your libmc1322x submodule:

Change line 1

MC1322X := ..

to

MC1322X := libmc1322x

and edit COBJS and TARGETS accordings. COBJS are all of your common code for any of your programs. TARGETS are the names of your programs.

For instance, you can have a common routine that prints a welcome message that is used by two programs a and b. You would add common.o to COBJS:

COBJS:= common.o

and your target line would read:

TARGETS := a b

COBJS are made for each board so it is ok to have board specific code in there. As an example, tests uses this in tests.c to print the name of the board in the welcome message. You could also use this to change your GPIO mappings between boards.