Commit Graph
17 Commits
Author SHA1 Message Date
root c0b3b2c663 Clean up the previous a bit. 2013-08-21 18:10:29 +00:00
root 8cd7f6f0d0 Modified the algorithm so it can scroll text continuously with no funky end
condition.
2013-08-21 18:03:32 +00:00
root c03aa14156 The display wasn't properly updated during a reseed, sometimes leaving weird
glitches like a single apparently alive cell.

Also reduced the code size a bit.
2013-08-21 07:14:52 +00:00
root 0d7daf3b9c Experimental: Allow commenting out DOUBLE_BUFFER and/or GRAYSCALE to remove
the relevant code.  In particular, turning off both reduces the video buffer
RAM from 336 bytes to 24.
2013-08-20 18:28:46 +00:00
root 2853bbb288 Also fix the last row for Draw90(). 2013-08-20 17:59:43 +00:00
root 134730bfd4 Move ledMap[] into PROGMEM, saving precious RAM. 2013-08-20 17:44:47 +00:00
root b2b335ce0e Undef MEASURE_ISR_TIME. 2013-08-20 07:36:25 +00:00
root 5067125687 Change the grayscale curve to something that seems subjectively better. 2013-08-20 06:54:34 +00:00
root 99638f81c5 Remove unneeded Serial.Begin(). 2013-08-20 06:43:24 +00:00
root 796e2e6b15 Fix drawing in the last row (per issue 28). 2013-08-20 06:19:14 +00:00
root 8ba1f20048 More cleanup to LedSign::SetBrightness(). Reduces code size another 82 bytes. 2013-08-20 06:03:03 +00:00
root c4198ad518 Make these run in double buffer mode. 2013-08-20 05:56:27 +00:00
root 1cd3d973ba Rename these so that the Arduino IDE shows them in the examples. 2013-08-20 05:49:47 +00:00
root ef824cdf00 Make this actually compile again. 2013-08-20 05:48:18 +00:00
root 7f827f214e Patch from issue 34 (updated from issue 16).
Add Mega 1280/2560 support.
2013-08-20 05:41:32 +00:00
root c96d9da167 Patch from issue #33.
Fix off by one errors that were sending too large a value to LedSign:Set()
for the grayscale level.
2013-08-20 05:38:46 +00:00
root c36882dfa2 Patch from Issue #32.
This patch reduces the code size and improves the CPU performance of
Charliplexing.cpp by:
* removing zeroed data in videoPage
* precalculating information for LedSign::Set()
* removing unneeded register writes in TIMER2_OVF_vect()
* using a roving pointer to access the display buffer rather than recalculating the array index each time
* eliminating the extra blank interval (1/8 display cycles)
* eliminating an extra display “cycle” (which could also display garbage)

Also fixed several bugs in LedSign::SetBrightness(), which caused weird
grayscale gradiations and reduced brightness by not using a 100% duty cycle
for the maximum setting.
2013-08-20 05:35:53 +00:00