Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FastLED/FastLED.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Garcia <danielgarcia@gmail.com>2015-02-04 22:47:09 +0300
committerDaniel Garcia <danielgarcia@gmail.com>2015-02-04 22:47:09 +0300
commit3f7d484dab68205cb1f04a750f84674e101e21ed (patch)
tree494ea7d69e2c48995fc63876d0dc4be34166bf95 /PORTING.md
parent95817e8a71f6e7ea64a8718c1216665a0375348e (diff)
Initial directory layout for the teensy-lc's k26. Preliminary FastPin implementation.
Diffstat (limited to 'PORTING.md')
-rw-r--r--PORTING.md19
1 files changed, 19 insertions, 0 deletions
diff --git a/PORTING.md b/PORTING.md
new file mode 100644
index 00000000..99ce4faf
--- /dev/null
+++ b/PORTING.md
@@ -0,0 +1,19 @@
+=New platform porting guide=
+
+== Setting up the basic files/folders ==
+
+* Create platform directory (e.g. platforms/arm/k26)
+* Create configuration header led_sysdefs_arm_k26.h:
+ * Define platform flags (like FASTLED_ARM/FASTLED_TEENSY)
+ * Define configuration parameters re: interrupts, or clock doubling
+ * Include extar system header files if needed
+* Create main platform include, fastled_arm_k26.h
+ * Include the various other header files as needed
+* Modify led_sysdefs.h to conditionally include platform sysdefs header file
+* Modify platforms.h to conditionally include platform fastled header
+
+== Porting fastpin.h ==
+
+The heart of the FastLED library is the fast pin accesss. This is a templated class that provides 1-2 cycle pin access, bypassing digital write and other such things. As such, this will usually be the first bit of the library that you will want to port when moving to a new platform. Once you have FastPIN up and running then you can do some basic work like testing toggles or running bit-bang'd SPI output.
+
+There's two low level FastPin classes. There's the base FastPIN template class, and then there is FastPinBB which is for bit-banded access on those MCUs that support bitbanding. Note that the bitband class is optional and primarily useful in the implementation of other functionality internal to the platform.