2010-02-28 15:17:58 +01:00
|
|
|
libmc1322x is a library, build system, test code, and utilities for
|
|
|
|
using the mc13224v from Freescale.
|
2010-02-28 00:20:34 +01:00
|
|
|
|
|
|
|
Getting Started
|
|
|
|
---------------
|
|
|
|
$ cd tests
|
|
|
|
$ make
|
|
|
|
|
2010-02-28 15:17:58 +01:00
|
|
|
this will build all the test files in libmc1322x/tests for each board
|
2010-02-28 00:20:34 +01:00
|
|
|
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
|
|
|
|
|
2010-02-28 15:17:58 +01:00
|
|
|
You can use mc1322x-load.pl in libmc1322x/tools to run your code:
|
2010-02-28 00:20:34 +01:00
|
|
|
|
|
|
|
$ ../tools/mc1322x-load.pl -f rftest-tx_redbee-dev.bin
|
|
|
|
|
|
|
|
|
|
|
|
Incorporating libmc1322x into your own code
|
|
|
|
-------------------------------------------
|
|
|
|
|
2010-02-28 15:17:58 +01:00
|
|
|
The best way to incorporate libmc1322x into your code is as a git
|
|
|
|
submodule:
|
2010-02-28 00:20:34 +01:00
|
|
|
|
|
|
|
$ mkdir newproject
|
|
|
|
$ cd newproject
|
|
|
|
$ git init
|
|
|
|
|
2010-02-28 15:17:58 +01:00
|
|
|
Initialized empty Git repository in /home/malvira/newproject/.git/
|
2010-02-28 00:20:34 +01:00
|
|
|
|
|
|
|
$ 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 .
|
|
|
|
|
2010-02-28 15:17:58 +01:00
|
|
|
You need to edit the Makefile to point MC1322X to your libmc1322x
|
|
|
|
submodule:
|
2010-02-28 00:20:34 +01:00
|
|
|
|
|
|
|
Change line 1
|
|
|
|
|
2010-02-28 15:17:58 +01:00
|
|
|
MC1322X := ..
|
2010-02-28 00:20:34 +01:00
|
|
|
|
|
|
|
to
|
|
|
|
|
2010-02-28 15:17:58 +01:00
|
|
|
MC1322X := libmc1322x
|
2010-02-28 00:20:34 +01:00
|
|
|
|
|
|
|
and edit COBJS and TARGETS accordings. COBJS are all of your common
|
2010-02-28 15:17:58 +01:00
|
|
|
code for any of your programs. TARGETS are the names of your programs.
|
2010-02-28 00:20:34 +01:00
|
|
|
|
|
|
|
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
|
2010-02-28 15:17:58 +01:00
|
|
|
to COBJS:
|
2010-02-28 00:20:34 +01:00
|
|
|
|
2010-02-28 15:17:58 +01:00
|
|
|
COBJS:= common.o
|
2010-02-28 00:20:34 +01:00
|
|
|
|
2010-02-28 15:17:58 +01:00
|
|
|
and your target line would read:
|
2010-02-28 00:20:34 +01:00
|
|
|
|
2010-02-28 15:17:58 +01:00
|
|
|
TARGETS := a b
|
2010-02-28 00:20:34 +01:00
|
|
|
|
2010-02-28 15:17:58 +01:00
|
|
|
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.
|
2010-02-28 00:20:34 +01:00
|
|
|
|