‘It’s all in the game’ workshop
“Moddr_” crew gave one day workshop on microcontrollers. The participants had to quickly learn basics of C hacking, device prototyping and soldering. “Attiny 2313”, LED displays and batteries were put together to create abstract digital automatons. >>> design credits – evilmadscientist.com <<< During the workshop we tried to create a new font table for a weird dual display. The time run out very fast, so as an alternative we flashed poor Attiny with pseudo-random data ;) , which in-fact produced nicely unstable results. PSC08-12 vs. ATTINY 2313 pinout alignment Almost all pins connected respectively to each other except that ATTINY pin3 goes to PSC pin10 (use a little wire!), ATTINY pin10 to PSC pin12. PSC pin17 is not used (second ground pin) and pin12 connected to ATTINY pin10 (ground) attiny: 2 3 4 5 6 7 10 9 8 11 12 13 14 15 16 17 18 19 PSC08-12: 18 10 16 15 14 13 12 11 - 9 8 7 6 5 4 3 2 1 segment: n e p c u d - f - r t s m g k h a b PSA08-12 pin| LED segment| | I/O port| | | AT2313 pin| | | | | | | | 1 reset unused 2 d0 n 18 3 d1 e 10 4 a1 p 16 5 a0 c 15 6 d2 u 14 7 d3 d 13 8 d4 unused 9 d5 f 11 10 grnd - 12 11 d6 r 9 12 b0 t 8 13 b1 s 7 14 b2 m 6 15 b3 g 5 16 b4 k 4 17 b5 h 3 18 b6 a 2 19 b7 b 1 DISPLAY SEGMENTS: a b ===== ===== | \ | / | h | \k |m /n | c | \ | / | | u \|/ p | ===== ===== | /|\ | g | / | \ | d | t/ s| r\ | | / | \ | ===== ===== f e decimal point seems to be unwired on PSC08-12 this is how ATTINY ports correspond to alphanumeric segments: segment: p c r f d u e n b a h k g m s t I/O pin: a1 a0 d6 d5 d3 d2 d1 d0 b7 b6 b5 b4 b3 b2 b1 b0 segment: p c r f d u e n b a h k g m s t I/O pin: a1 a0 d6 d5 d3 d2 d1 d0 b7 b6 b5 b4 b3 b2 b1 b0 1 amsfe 0001 0010 0100 0110 23272 2 abcpugfe 1101 0110 1100 1000 54984 3 abcpdef 0001 1010 1100 0000 6848 4 hupcd 1100 1100 0010 0000 52256 5 abhupdfe 1001 1110 1110 0000 40672 6 abhupgdfe 1001 1110 1110 1000 40680 7 abcd 0100 1000 1100 0000 18624 8 abcdefghup 1101 1110 1110 1000 57064 9 abcdfeuph 1101 1110 1110 0000 57056 0 abcdefghtn 0101 1011 1110 1001 23529 knowing high/low bits order for ATTINY2313 we can make a table of the segments to be lit in order to display a character (i did it by hand, can you believe it?!). PSC08-12 font table: character segments lit bite blocks decimal a ghkru 0010 0100 0011 1000 9272 b abcdefmps 1101 1010 1100 0110 56006 c abefgh 0001 0010 1110 1000 4840 d abcdefms 0101 1010 1100 0110 23238 e abefghu 0001 0110 1110 1000 5864 f abghpu 1000 0100 1110 1000 34024 g abdefghp 1001 1010 1110 1000 39656 h cdghpu 1100 1100 0010 1000 52264 i abefms 0001 0010 1100 0110 4806 j cdefg 0101 1010 0000 1000 23048 k ghnru 0010 0101 0010 1000 9512 l efgh 0001 0010 0010 1000 4648 m cdghkn 0100 1001 0011 1000 18744 n cdghkr 0110 1000 0011 1000 26680 o abcdefgh 0101 1010 1110 1000 23272 p abcdghpu 1100 1100 1110 1000 52456 q abcdefghr 0111 1010 1110 1000 31464 r abcghpru 1110 0100 1110 1000 58600 s abdefhpu 1001 1110 1110 0000 40672 t abms 0000 0000 1100 0110 198 u cdghef 0101 1010 0010 1000 23080 v ghnt 0000 0001 0010 1001 297 w cdghrt 0110 1000 0010 1001 26665 x knrt 0010 0001 0001 0001 8465 y kns 0000 0001 0001 0010 274 z abefnt 0001 0011 1100 0001 5057 * kmnprstu 1010 0101 0001 0111 42263 spc - 0000 0000 0000 0000 0 / nt 0000 0001 0000 0001 257 1 amsfe 0001 0010 0100 0110 23272 2 abcpugfe 1101 0110 1100 1000 54984 3 abcpdef 0001 1010 1100 0000 6848 4 hupcd 1100 1100 0010 0000 52256 5 abhupdfe 1001 1110 1110 0000 40672 6 abhupgdfe 1001 1110 1110 1000 40680 7 abcd 0100 1000 1100 0000 18624 8 abcdefghup 1101 1110 1110 1000 57064 9 abcdfeuph 1101 1110 1110 0000 57056 0 abcdefghtn 0101 1011 1110 1001 23529 |