Midi controlled 4 digit display boards The digits are numbered left to right! msb = note1 lsb = note4 Components: 28 BS170 mosfets 5 78L05 regulators 4 18F2525 PIC controllers 4 Kingbright displays typeSA23-12EWA 1 xppower module 15W - 12V (type ECL15US12-E) 1 6N137 optocoupler Pic port mapping: a-segment: RC4 b-segment: RC3 c-segment: RB0 d-segment: RB1 e-segment: RB2 f-segment: RB3 g-segment: RB4 dot: RC5 watchdog : RA0 Number-lookup: 0 = abcdef RC4,RC3.RB0,RB1,RB2,RB3 High RB4 low 1 = bc RC3,RB0 High RC4,RB1,RB2,RB3,RB4 low 2 = abged 3 = abcdg 4 = bcfg 5 = acdfg 6 = acdefg 7 = abc 8 = abcdefg 9 = abcdfg Hexadecimal extension: 10 = A = abcefg 11 = b = cdegf 12 = c = adef 13 = d = bcdeg 14 = E = adefg 15 = F = aefg Midi implementation: note 1 = msb display (digit 4), velo= 0-9 or 16 for blank. Bit 5= dot note 2 = digit 3 note 3 = digit 2 note 4 = digit 1 note-off: blanks display all notes off: blanks all displays Program change: prog 0 = as above (numeric with hex extension) prog 1 = note velo should be ascii value of the character to display. Note pressure: note 1= display selection, pressure= a.b.c.d.e.f.g segments binary