diff options
author | jaseg <git@jaseg.net> | 2018-01-05 11:39:20 +0100 |
---|---|---|
committer | jaseg <git@jaseg.net> | 2018-01-05 11:39:20 +0100 |
commit | 31fc78d0e00f9c82f03c88367a7e23b2df918ca6 (patch) | |
tree | 4a57797df736e40574b1448afe95c049df13022b /fw/README.rst | |
parent | a70ad99b36b5212525cc6c1957802d3eab8e0d99 (diff) | |
download | 7seg-31fc78d0e00f9c82f03c88367a7e23b2df918ca6.tar.gz 7seg-31fc78d0e00f9c82f03c88367a7e23b2df918ca6.tar.bz2 7seg-31fc78d0e00f9c82f03c88367a7e23b2df918ca6.zip |
Add some documentation
Diffstat (limited to 'fw/README.rst')
-rw-r--r-- | fw/README.rst | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/fw/README.rst b/fw/README.rst new file mode 100644 index 0000000..1e81c46 --- /dev/null +++ b/fw/README.rst @@ -0,0 +1,20 @@ +Note on the LED modulation +========================== + +To control LED brightness, this project uses a modulation technique known as +"Binary Code Modulation" (BCM) or "Bit Angle Modulation" (BAM). The base idea is +to clock out all outputs in parallel bit-by-bit, then modulate this with a +precisely timed output enable signal. In contrast to PWM this allows almost +arbitrarily high channel counts and configurable modulation resolution at low +CPU overhead and high frame rates. In this project that is needed due to the +large number of channels (32) and the medium oversampling rate (1:8). + +A good article explaining BCM can be found on batsocks.co.uk_ and a nice video +explaining has been published by mikeselectricstuff_. A possible optimization +for even smoother brightness fading (probably mostly in unmultiplexed +applications) has been discussed in the forums at picbasic.co.uk_. + +.. _mikeselectricstuff: https://www.youtube.com/watch?v=Sq8SxVDO5wE +.. _`picbasic.co.uk`: http://www.picbasic.co.uk/forum/showthread.php?t=7393 +.. _batsocks.co.uk: http://www.batsocks.co.uk/readme/art_bcm_1.htm + |