/fx2lib

Library routines for creating firmware for the Cypress FX2 (CY7C68013 and variants) with SDCC

Primary LanguageCGNU Lesser General Public License v3.0LGPL-3.0

Before building this library, you need have sdcc installed and in
your path.  It is available from http://sdcc.sf.net and packages are
shipping with an array of Linux distributions (Debian and derivatives,
SuSE). The test routines also demand for header files of libusb 1.0
(shipping with Debian as libusb-1.0-0-dev).

To build this library, run make

> make

This produces lib/fx2.lib.  You can also run make in the lib folder.

You can also build the documentation if you have doxygen installed
(Debian packages doxygen and rubber).

> make docs

** Firmware framework Quickstart

> cd fw
> make

You can copy the fw directory to your own directory and customize it as needed.

** Firmware on OSX

You will need `sdcc`, which can be obtained via Homebrew (http://brew.sh):

> brew install sdcc

Then, you can simply run `make' as per above.

fx2load is needed to load the firmware on OSX; see examples/fx2. This is a
Python package and can be built with setuptools (a virtualenv is highly
recommended):

> cd examples/fx2
> python setup.py install

You may need to install libusb for this; this can be done via Homebrew:

> brew install libusb

** More custom firmware

To use routines included with this library in your own firmware,
add the include files to your include path and the lib file to your compile command:

> sdcc -mmcs51 -I<path to includes> <your c file> fx2.lib -L <path to fx2.lib dir>

fx2lib also includes an example program for loading firmware onto your device. 
See examples/fx2.


Enjoy!
Comments, Patches, all welcome.

Contributors
 Dennis Muhlestein
 Ubixum, Inc
 Steve Calfee
 Sven Schnelle
 Tim 'mithro' Ansell