smd.iotkit.ch / Mbed 2 deprecated DotLEDMatrix

Dependencies:   mbed

Committer:
marcel1691
Date:
Sun Aug 16 19:32:25 2015 +0200
Revision:
1:5948937aac9a
Parent:
0:a0bbe9291005
Erweitert um Eclipse/gcc4mbed Konfiguration

Who changed what in which revision?

UserRevisionLine numberNew contents of line
stefan1691 0:a0bbe9291005 1 #ifndef LMDriver_H
stefan1691 0:a0bbe9291005 2 #define LMDriver_H
stefan1691 0:a0bbe9291005 3 #include <deque>
stefan1691 0:a0bbe9291005 4 #include <string>
stefan1691 0:a0bbe9291005 5
stefan1691 0:a0bbe9291005 6 #define reg_noop 0x00
stefan1691 0:a0bbe9291005 7 #define reg_column1 0x01
stefan1691 0:a0bbe9291005 8 #define reg_column2 0x02
stefan1691 0:a0bbe9291005 9 #define reg_column3 0x03
stefan1691 0:a0bbe9291005 10 #define reg_column4 0x04
stefan1691 0:a0bbe9291005 11 #define reg_column5 0x05
stefan1691 0:a0bbe9291005 12 #define reg_column6 0x06
stefan1691 0:a0bbe9291005 13 #define reg_column7 0x07
stefan1691 0:a0bbe9291005 14 #define reg_column8 0x08
stefan1691 0:a0bbe9291005 15 #define reg_decodeMode 0x09
stefan1691 0:a0bbe9291005 16 #define reg_intensity 0x0a
stefan1691 0:a0bbe9291005 17 #define reg_scanLimit 0x0b
stefan1691 0:a0bbe9291005 18 #define reg_shutdown 0x0c
stefan1691 0:a0bbe9291005 19 #define reg_displayTest 0x0f
stefan1691 0:a0bbe9291005 20
stefan1691 0:a0bbe9291005 21 #define MHz 1000000;
stefan1691 0:a0bbe9291005 22
stefan1691 0:a0bbe9291005 23 const uint8_t chars[]= {
stefan1691 0:a0bbe9291005 24 0xFF,0xC3,0xC3,0xC3,0xC3,0xC3,0xC3,0xFF
stefan1691 0:a0bbe9291005 25 ,0xFF,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0
stefan1691 0:a0bbe9291005 26 ,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0xFF
stefan1691 0:a0bbe9291005 27 ,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0xFF
stefan1691 0:a0bbe9291005 28 ,0x0C,0x18,0x30,0x7E,0x0C,0x18,0x30,0x00
stefan1691 0:a0bbe9291005 29 ,0xFF,0xC3,0xE7,0xDB,0xDB,0xE7,0xC3,0xFF
stefan1691 0:a0bbe9291005 30 ,0x00,0x01,0x03,0x06,0xCC,0x78,0x30,0x00
stefan1691 0:a0bbe9291005 31 ,0x3C,0x66,0xC3,0xC3,0xFF,0x24,0xE7,0x00
stefan1691 0:a0bbe9291005 32 ,0x00,0x00,0x30,0x60,0xFF,0x60,0x30,0x00
stefan1691 0:a0bbe9291005 33 ,0x00,0x00,0x0C,0x06,0xFF,0x06,0x0C,0x00
stefan1691 0:a0bbe9291005 34 ,0x18,0x18,0x18,0x18,0xDB,0x7E,0x3C,0x18
stefan1691 0:a0bbe9291005 35 ,0x18,0x3C,0x7E,0xDB,0x18,0x18,0x18,0x18
stefan1691 0:a0bbe9291005 36 ,0x18,0x5A,0x3C,0x99,0xDB,0x7E,0x3C,0x18
stefan1691 0:a0bbe9291005 37 ,0x00,0x03,0x33,0x63,0xFE,0x60,0x30,0x00
stefan1691 0:a0bbe9291005 38 ,0x3C,0x66,0xFF,0xDB,0xDB,0xFF,0x66,0x3C
stefan1691 0:a0bbe9291005 39 ,0x3C,0x66,0xC3,0xDB,0xDB,0xC3,0x66,0x3C
stefan1691 0:a0bbe9291005 40 ,0xFF,0xC3,0xC3,0xFF,0xC3,0xC3,0xC3,0xFF
stefan1691 0:a0bbe9291005 41 ,0x3C,0x7E,0xDB,0xDB,0xDF,0xC3,0x66,0x3C
stefan1691 0:a0bbe9291005 42 ,0x3C,0x66,0xC3,0xDF,0xDB,0xDB,0x7E,0x3C
stefan1691 0:a0bbe9291005 43 ,0x3C,0x66,0xC3,0xFB,0xDB,0xDB,0x7E,0x3C
stefan1691 0:a0bbe9291005 44 ,0x3C,0x7E,0xDB,0xDB,0xFB,0xC3,0x66,0x3C
stefan1691 0:a0bbe9291005 45 ,0x00,0x01,0x33,0x1E,0xCE,0x7B,0x31,0x00
stefan1691 0:a0bbe9291005 46 ,0x7E,0x66,0x66,0x66,0x66,0x66,0x66,0xE7
stefan1691 0:a0bbe9291005 47 ,0x03,0x03,0x03,0xFF,0x03,0x03,0x03,0x00
stefan1691 0:a0bbe9291005 48 ,0xFF,0x66,0x3C,0x18,0x18,0x3C,0x66,0xFF
stefan1691 0:a0bbe9291005 49 ,0x18,0x18,0x3C,0x3C,0x3C,0x3C,0x18,0x18
stefan1691 0:a0bbe9291005 50 ,0x3C,0x66,0x66,0x30,0x18,0x00,0x18,0x00
stefan1691 0:a0bbe9291005 51 ,0x3C,0x66,0xC3,0xFF,0xC3,0xC3,0x66,0x3C
stefan1691 0:a0bbe9291005 52 ,0xFF,0xDB,0xDB,0xDB,0xFB,0xC3,0xC3,0xFF
stefan1691 0:a0bbe9291005 53 ,0xFF,0xC3,0xC3,0xFB,0xDB,0xDB,0xDB,0xFF
stefan1691 0:a0bbe9291005 54 ,0xFF,0xC3,0xC3,0xDF,0xDB,0xDB,0xDB,0xFF
stefan1691 0:a0bbe9291005 55 ,0xFF,0xDB,0xDB,0xDB,0xDF,0xC3,0xC3,0xFF
stefan1691 0:a0bbe9291005 56 ,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 57 ,0x18,0x18,0x18,0x18,0x18,0x00,0x18,0x00
stefan1691 0:a0bbe9291005 58 ,0x6C,0x6C,0x6C,0x00,0x00,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 59 ,0x6C,0x6C,0xFE,0x6C,0xFE,0x6C,0x6C,0x00
stefan1691 0:a0bbe9291005 60 ,0x18,0x3E,0x58,0x3C,0x1A,0x7C,0x18,0x00
stefan1691 0:a0bbe9291005 61 ,0x00,0xC6,0xCC,0x18,0x30,0x66,0xC6,0x00
stefan1691 0:a0bbe9291005 62 ,0x38,0x6C,0x38,0x76,0xDC,0xCC,0x76,0x00
stefan1691 0:a0bbe9291005 63 ,0x18,0x18,0x30,0x00,0x00,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 64 ,0x0C,0x18,0x30,0x30,0x30,0x18,0x0C,0x00
stefan1691 0:a0bbe9291005 65 ,0x30,0x18,0x0C,0x0C,0x0C,0x18,0x30,0x00
stefan1691 0:a0bbe9291005 66 ,0x00,0x66,0x3C,0xFF,0x3C,0x66,0x00,0x00
stefan1691 0:a0bbe9291005 67 ,0x00,0x18,0x18,0x7E,0x18,0x18,0x00,0x00
stefan1691 0:a0bbe9291005 68 ,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x30
stefan1691 0:a0bbe9291005 69 ,0x00,0x00,0x00,0x7E,0x00,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 70 ,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x00
stefan1691 0:a0bbe9291005 71 ,0x06,0x0C,0x18,0x30,0x60,0xC0,0x80,0x00
stefan1691 0:a0bbe9291005 72 ,0x7C,0xC6,0xCE,0xD6,0xE6,0xC6,0x7C,0x00
stefan1691 0:a0bbe9291005 73 ,0x18,0x38,0x18,0x18,0x18,0x18,0x7E,0x00
stefan1691 0:a0bbe9291005 74 ,0x3C,0x66,0x06,0x3C,0x60,0x66,0x7E,0x00
stefan1691 0:a0bbe9291005 75 ,0x3C,0x66,0x06,0x1C,0x06,0x66,0x3C,0x00
stefan1691 0:a0bbe9291005 76 ,0x1C,0x3C,0x6C,0xCC,0xFE,0x0C,0x1E,0x00
stefan1691 0:a0bbe9291005 77 ,0x7E,0x62,0x60,0x7C,0x06,0x66,0x3C,0x00
stefan1691 0:a0bbe9291005 78 ,0x3C,0x66,0x60,0x7C,0x66,0x66,0x3C,0x00
stefan1691 0:a0bbe9291005 79 ,0x7E,0x66,0x06,0x0C,0x18,0x18,0x18,0x00
stefan1691 0:a0bbe9291005 80 ,0x3C,0x66,0x66,0x3C,0x66,0x66,0x3C,0x00
stefan1691 0:a0bbe9291005 81 ,0x3C,0x66,0x66,0x3E,0x06,0x66,0x3C,0x00
stefan1691 0:a0bbe9291005 82 ,0x00,0x00,0x18,0x18,0x00,0x18,0x18,0x00
stefan1691 0:a0bbe9291005 83 ,0x00,0x00,0x18,0x18,0x00,0x18,0x18,0x30
stefan1691 0:a0bbe9291005 84 ,0x0C,0x18,0x30,0x60,0x30,0x18,0x0C,0x00
stefan1691 0:a0bbe9291005 85 ,0x00,0x00,0x7E,0x00,0x00,0x7E,0x00,0x00
stefan1691 0:a0bbe9291005 86 ,0x60,0x30,0x18,0x0C,0x18,0x30,0x60,0x00
stefan1691 0:a0bbe9291005 87 ,0x3C,0x66,0x66,0x0C,0x18,0x00,0x18,0x00
stefan1691 0:a0bbe9291005 88 ,0x7C,0xC6,0xDE,0xDE,0xDE,0xC0,0x7C,0x00
stefan1691 0:a0bbe9291005 89 ,0x18,0x3C,0x66,0x66,0x7E,0x66,0x66,0x00
stefan1691 0:a0bbe9291005 90 ,0xFC,0x66,0x66,0x7C,0x66,0x66,0xFC,0x00
stefan1691 0:a0bbe9291005 91 ,0x3C,0x66,0xC0,0xC0,0xC0,0x66,0x3C,0x00
stefan1691 0:a0bbe9291005 92 ,0xF8,0x6C,0x66,0x66,0x66,0x6C,0xF8,0x00
stefan1691 0:a0bbe9291005 93 ,0xFE,0x62,0x68,0x78,0x68,0x62,0xFE,0x00
stefan1691 0:a0bbe9291005 94 ,0xFE,0x62,0x68,0x78,0x68,0x60,0xF0,0x00
stefan1691 0:a0bbe9291005 95 ,0x3C,0x66,0xC0,0xC0,0xCE,0x66,0x3E,0x00
stefan1691 0:a0bbe9291005 96 ,0x66,0x66,0x66,0x7E,0x66,0x66,0x66,0x00
stefan1691 0:a0bbe9291005 97 ,0x7E,0x18,0x18,0x18,0x18,0x18,0x7E,0x00
stefan1691 0:a0bbe9291005 98 ,0x1E,0x0C,0x0C,0x0C,0xCC,0xCC,0x78,0x00
stefan1691 0:a0bbe9291005 99 ,0xE6,0x66,0x6C,0x78,0x6C,0x66,0xE6,0x00
stefan1691 0:a0bbe9291005 100 ,0xF0,0x60,0x60,0x60,0x62,0x66,0xFE,0x00
stefan1691 0:a0bbe9291005 101 ,0xC6,0xEE,0xFE,0xFE,0xD6,0xC6,0xC6,0x00
stefan1691 0:a0bbe9291005 102 ,0xC6,0xE6,0xF6,0xDE,0xCE,0xC6,0xC6,0x00
stefan1691 0:a0bbe9291005 103 ,0x38,0x6C,0xC6,0xC6,0xC6,0x6C,0x38,0x00
stefan1691 0:a0bbe9291005 104 ,0xFC,0x66,0x66,0x7C,0x60,0x60,0xF0,0x00
stefan1691 0:a0bbe9291005 105 ,0x38,0x6C,0xC6,0xC6,0xDA,0xCC,0x76,0x00
stefan1691 0:a0bbe9291005 106 ,0xFC,0x66,0x66,0x7C,0x6C,0x66,0xE6,0x00
stefan1691 0:a0bbe9291005 107 ,0x3C,0x66,0x60,0x3C,0x06,0x66,0x3C,0x00
stefan1691 0:a0bbe9291005 108 ,0x7E,0x5A,0x18,0x18,0x18,0x18,0x3C,0x00
stefan1691 0:a0bbe9291005 109 ,0x66,0x66,0x66,0x66,0x66,0x66,0x3C,0x00
stefan1691 0:a0bbe9291005 110 ,0x66,0x66,0x66,0x66,0x66,0x3C,0x18,0x00
stefan1691 0:a0bbe9291005 111 ,0xC6,0xC6,0xC6,0xD6,0xFE,0xEE,0xC6,0x00
stefan1691 0:a0bbe9291005 112 ,0xC6,0x6C,0x38,0x38,0x6C,0xC6,0xC6,0x00
stefan1691 0:a0bbe9291005 113 ,0x66,0x66,0x66,0x3C,0x18,0x18,0x3C,0x00
stefan1691 0:a0bbe9291005 114 ,0xFE,0xC6,0x8C,0x18,0x32,0x66,0xFE,0x00
stefan1691 0:a0bbe9291005 115 ,0x3C,0x30,0x30,0x30,0x30,0x30,0x3C,0x00
stefan1691 0:a0bbe9291005 116 ,0xC0,0x60,0x30,0x18,0x0C,0x06,0x02,0x00
stefan1691 0:a0bbe9291005 117 ,0x3C,0x0C,0x0C,0x0C,0x0C,0x0C,0x3C,0x00
stefan1691 0:a0bbe9291005 118 ,0x18,0x3C,0x7E,0x18,0x18,0x18,0x18,0x00
stefan1691 0:a0bbe9291005 119 ,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF
stefan1691 0:a0bbe9291005 120 ,0x30,0x18,0x0C,0x00,0x00,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 121 ,0x00,0x00,0x78,0x0C,0x7C,0xCC,0x76,0x00
stefan1691 0:a0bbe9291005 122 ,0xE0,0x60,0x7C,0x66,0x66,0x66,0xDC,0x00
stefan1691 0:a0bbe9291005 123 ,0x00,0x00,0x3C,0x66,0x60,0x66,0x3C,0x00
stefan1691 0:a0bbe9291005 124 ,0x1C,0x0C,0x7C,0xCC,0xCC,0xCC,0x76,0x00
stefan1691 0:a0bbe9291005 125 ,0x00,0x00,0x3C,0x66,0x7E,0x60,0x3C,0x00
stefan1691 0:a0bbe9291005 126 ,0x1C,0x36,0x30,0x78,0x30,0x30,0x78,0x00
stefan1691 0:a0bbe9291005 127 ,0x00,0x00,0x3E,0x66,0x66,0x3E,0x06,0x7C
stefan1691 0:a0bbe9291005 128 ,0xE0,0x60,0x6C,0x76,0x66,0x66,0xE6,0x00
stefan1691 0:a0bbe9291005 129 ,0x18,0x00,0x38,0x18,0x18,0x18,0x3C,0x00
stefan1691 0:a0bbe9291005 130 ,0x06,0x00,0x0E,0x06,0x06,0x66,0x66,0x3C
stefan1691 0:a0bbe9291005 131 ,0xE0,0x60,0x66,0x6C,0x78,0x6C,0xE6,0x00
stefan1691 0:a0bbe9291005 132 ,0x38,0x18,0x18,0x18,0x18,0x18,0x3C,0x00
stefan1691 0:a0bbe9291005 133 ,0x00,0x00,0x6C,0xFE,0xD6,0xD6,0xC6,0x00
stefan1691 0:a0bbe9291005 134 ,0x00,0x00,0xDC,0x66,0x66,0x66,0x66,0x00
stefan1691 0:a0bbe9291005 135 ,0x00,0x00,0x3C,0x66,0x66,0x66,0x3C,0x00
stefan1691 0:a0bbe9291005 136 ,0x00,0x00,0xDC,0x66,0x66,0x7C,0x60,0xF0
stefan1691 0:a0bbe9291005 137 ,0x00,0x00,0x76,0xCC,0xCC,0x7C,0x0C,0x1E
stefan1691 0:a0bbe9291005 138 ,0x00,0x00,0xDC,0x76,0x60,0x60,0xF0,0x00
stefan1691 0:a0bbe9291005 139 ,0x00,0x00,0x3C,0x60,0x3C,0x06,0x7C,0x00
stefan1691 0:a0bbe9291005 140 ,0x30,0x30,0x7C,0x30,0x30,0x36,0x1C,0x00
stefan1691 0:a0bbe9291005 141 ,0x00,0x00,0x66,0x66,0x66,0x66,0x3E,0x00
stefan1691 0:a0bbe9291005 142 ,0x00,0x00,0x66,0x66,0x66,0x3C,0x18,0x00
stefan1691 0:a0bbe9291005 143 ,0x00,0x00,0xC6,0xD6,0xD6,0xFE,0x6C,0x00
stefan1691 0:a0bbe9291005 144 ,0x00,0x00,0xC6,0x6C,0x38,0x6C,0xC6,0x00
stefan1691 0:a0bbe9291005 145 ,0x00,0x00,0x66,0x66,0x66,0x3E,0x06,0x7C
stefan1691 0:a0bbe9291005 146 ,0x00,0x00,0x7E,0x4C,0x18,0x32,0x7E,0x00
stefan1691 0:a0bbe9291005 147 ,0x0E,0x18,0x18,0x70,0x18,0x18,0x0E,0x00
stefan1691 0:a0bbe9291005 148 ,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x00
stefan1691 0:a0bbe9291005 149 ,0x70,0x18,0x18,0x0E,0x18,0x18,0x70,0x00
stefan1691 0:a0bbe9291005 150 ,0x76,0xDC,0x00,0x00,0x00,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 151 ,0xCC,0x33,0xCC,0x33,0xCC,0x33,0xCC,0x33
stefan1691 0:a0bbe9291005 152 ,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 153 ,0xF0,0xF0,0xF0,0xF0,0x00,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 154 ,0x0F,0x0F,0x0F,0x0F,0x00,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 155 ,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 156 ,0x00,0x00,0x00,0x00,0xF0,0xF0,0xF0,0xF0
stefan1691 0:a0bbe9291005 157 ,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0
stefan1691 0:a0bbe9291005 158 ,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0
stefan1691 0:a0bbe9291005 159 ,0xFF,0xFF,0xFF,0xFF,0xF0,0xF0,0xF0,0xF0
stefan1691 0:a0bbe9291005 160 ,0x00,0x00,0x00,0x00,0x0F,0x0F,0x0F,0x0F
stefan1691 0:a0bbe9291005 161 ,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F
stefan1691 0:a0bbe9291005 162 ,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F
stefan1691 0:a0bbe9291005 163 ,0xFF,0xFF,0xFF,0xFF,0x0F,0x0F,0x0F,0x0F
stefan1691 0:a0bbe9291005 164 ,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF
stefan1691 0:a0bbe9291005 165 ,0xF0,0xF0,0xF0,0xF0,0xFF,0xFF,0xFF,0xFF
stefan1691 0:a0bbe9291005 166 ,0x0F,0x0F,0x0F,0x0F,0xFF,0xFF,0xFF,0xFF
stefan1691 0:a0bbe9291005 167 ,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF
stefan1691 0:a0bbe9291005 168 ,0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 169 ,0x18,0x18,0x18,0x18,0x18,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 170 ,0x00,0x00,0x00,0x1F,0x1F,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 171 ,0x18,0x18,0x18,0x1F,0x0F,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 172 ,0x00,0x00,0x00,0x18,0x18,0x18,0x18,0x18
stefan1691 0:a0bbe9291005 173 ,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18
stefan1691 0:a0bbe9291005 174 ,0x00,0x00,0x00,0x0F,0x1F,0x18,0x18,0x18
stefan1691 0:a0bbe9291005 175 ,0x18,0x18,0x18,0x1F,0x1F,0x18,0x18,0x18
stefan1691 0:a0bbe9291005 176 ,0x00,0x00,0x00,0xF8,0xF8,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 177 ,0x18,0x18,0x18,0xF8,0xF0,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 178 ,0x00,0x00,0x00,0xFF,0xFF,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 179 ,0x18,0x18,0x18,0xFF,0xFF,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 180 ,0x00,0x00,0x00,0xF0,0xF8,0x18,0x18,0x18
stefan1691 0:a0bbe9291005 181 ,0x18,0x18,0x18,0xF8,0xF8,0x18,0x18,0x18
stefan1691 0:a0bbe9291005 182 ,0x00,0x00,0x00,0xFF,0xFF,0x18,0x18,0x18
stefan1691 0:a0bbe9291005 183 ,0x18,0x18,0x18,0xFF,0xFF,0x18,0x18,0x18
stefan1691 0:a0bbe9291005 184 ,0x10,0x38,0x6C,0xC6,0x00,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 185 ,0x0C,0x18,0x30,0x00,0x00,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 186 ,0x66,0x66,0x00,0x00,0x00,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 187 ,0x3C,0x66,0x60,0xF8,0x60,0x66,0xFE,0x00
stefan1691 0:a0bbe9291005 188 ,0x38,0x44,0xBA,0xA2,0xBA,0x44,0x38,0x00
stefan1691 0:a0bbe9291005 189 ,0x7E,0xF4,0xF4,0x74,0x34,0x34,0x34,0x00
stefan1691 0:a0bbe9291005 190 ,0x1E,0x30,0x38,0x6C,0x38,0x18,0xF0,0x00
stefan1691 0:a0bbe9291005 191 ,0x18,0x18,0x0C,0x00,0x00,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 192 ,0x40,0xC0,0x44,0x4C,0x54,0x1E,0x04,0x00
stefan1691 0:a0bbe9291005 193 ,0x40,0xC0,0x4C,0x52,0x44,0x08,0x1E,0x00
stefan1691 0:a0bbe9291005 194 ,0xE0,0x10,0x62,0x16,0xEA,0x0F,0x02,0x00
stefan1691 0:a0bbe9291005 195 ,0x00,0x18,0x18,0x7E,0x18,0x18,0x7E,0x00
stefan1691 0:a0bbe9291005 196 ,0x18,0x18,0x00,0x7E,0x00,0x18,0x18,0x00
stefan1691 0:a0bbe9291005 197 ,0x00,0x00,0x00,0x7E,0x06,0x06,0x00,0x00
stefan1691 0:a0bbe9291005 198 ,0x18,0x00,0x18,0x30,0x66,0x66,0x3C,0x00
stefan1691 0:a0bbe9291005 199 ,0x18,0x00,0x18,0x18,0x18,0x18,0x18,0x00
stefan1691 0:a0bbe9291005 200 ,0x00,0x00,0x73,0xDE,0xCC,0xDE,0x73,0x00
stefan1691 0:a0bbe9291005 201 ,0x7C,0xC6,0xC6,0xFC,0xC6,0xC6,0xF8,0xC0
stefan1691 0:a0bbe9291005 202 ,0x00,0x66,0x66,0x3C,0x66,0x66,0x3C,0x00
stefan1691 0:a0bbe9291005 203 ,0x3C,0x60,0x60,0x3C,0x66,0x66,0x3C,0x00
stefan1691 0:a0bbe9291005 204 ,0x00,0x00,0x1E,0x30,0x7C,0x30,0x1E,0x00
stefan1691 0:a0bbe9291005 205 ,0x38,0x6C,0xC6,0xFE,0xC6,0x6C,0x38,0x00
stefan1691 0:a0bbe9291005 206 ,0x00,0xC0,0x60,0x30,0x38,0x6C,0xC6,0x00
stefan1691 0:a0bbe9291005 207 ,0x00,0x00,0x66,0x66,0x66,0x7C,0x60,0x60
stefan1691 0:a0bbe9291005 208 ,0x00,0x00,0x00,0xFE,0x6C,0x6C,0x6C,0x00
stefan1691 0:a0bbe9291005 209 ,0x00,0x00,0x00,0x7E,0xD8,0xD8,0x70,0x00
stefan1691 0:a0bbe9291005 210 ,0x03,0x06,0x0C,0x3C,0x66,0x3C,0x60,0xC0
stefan1691 0:a0bbe9291005 211 ,0x03,0x06,0x0C,0x66,0x66,0x3C,0x60,0xC0
stefan1691 0:a0bbe9291005 212 ,0x00,0xE6,0x3C,0x18,0x38,0x6C,0xC7,0x00
stefan1691 0:a0bbe9291005 213 ,0x00,0x00,0x66,0xC3,0xDB,0xDB,0x7E,0x00
stefan1691 0:a0bbe9291005 214 ,0xFE,0xC6,0x60,0x30,0x60,0xC6,0xFE,0x00
stefan1691 0:a0bbe9291005 215 ,0x00,0x7C,0xC6,0xC6,0xC6,0x6C,0xEE,0x00
stefan1691 0:a0bbe9291005 216 ,0x18,0x30,0x60,0xC0,0x80,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 217 ,0x18,0x0C,0x06,0x03,0x01,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 218 ,0x00,0x00,0x00,0x01,0x03,0x06,0x0C,0x18
stefan1691 0:a0bbe9291005 219 ,0x00,0x00,0x00,0x80,0xC0,0x60,0x30,0x18
stefan1691 0:a0bbe9291005 220 ,0x18,0x3C,0x66,0xC3,0x81,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 221 ,0x18,0x0C,0x06,0x03,0x03,0x06,0x0C,0x18
stefan1691 0:a0bbe9291005 222 ,0x00,0x00,0x00,0x81,0xC3,0x66,0x3C,0x18
stefan1691 0:a0bbe9291005 223 ,0x18,0x30,0x60,0xC0,0xC0,0x60,0x30,0x18
stefan1691 0:a0bbe9291005 224 ,0x18,0x30,0x60,0xC1,0x83,0x06,0x0C,0x18
stefan1691 0:a0bbe9291005 225 ,0x18,0x0C,0x06,0x83,0xC1,0x60,0x30,0x18
stefan1691 0:a0bbe9291005 226 ,0x18,0x3C,0x66,0xC3,0xC3,0x66,0x3C,0x18
stefan1691 0:a0bbe9291005 227 ,0xC3,0xE7,0x7E,0x3C,0x3C,0x7E,0xE7,0xC3
stefan1691 0:a0bbe9291005 228 ,0x03,0x07,0x0E,0x1C,0x38,0x70,0xE0,0xC0
stefan1691 0:a0bbe9291005 229 ,0xC0,0xE0,0x70,0x38,0x1C,0x0E,0x07,0x03
stefan1691 0:a0bbe9291005 230 ,0xCC,0xCC,0x33,0x33,0xCC,0xCC,0x33,0x33
stefan1691 0:a0bbe9291005 231 ,0xAA,0x55,0xAA,0x55,0xAA,0x55,0xAA,0x55
stefan1691 0:a0bbe9291005 232 ,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 233 ,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03
stefan1691 0:a0bbe9291005 234 ,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF
stefan1691 0:a0bbe9291005 235 ,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0
stefan1691 0:a0bbe9291005 236 ,0xFF,0xFE,0xFC,0xF8,0xF0,0xE0,0xC0,0x80
stefan1691 0:a0bbe9291005 237 ,0xFF,0x7F,0x3F,0x1F,0x0F,0x07,0x03,0x01
stefan1691 0:a0bbe9291005 238 ,0x01,0x03,0x07,0x0F,0x1F,0x3F,0x7F,0xFF
stefan1691 0:a0bbe9291005 239 ,0x80,0xC0,0xE0,0xF0,0xF8,0xFC,0xFE,0xFF
stefan1691 0:a0bbe9291005 240 ,0xAA,0x55,0xAA,0x55,0x00,0x00,0x00,0x00
stefan1691 0:a0bbe9291005 241 ,0x0A,0x05,0x0A,0x05,0x0A,0x05,0x0A,0x05
stefan1691 0:a0bbe9291005 242 ,0x00,0x00,0x00,0x00,0xAA,0x55,0xAA,0x55
stefan1691 0:a0bbe9291005 243 ,0xA0,0x50,0xA0,0x50,0xA0,0x50,0xA0,0x50
stefan1691 0:a0bbe9291005 244 ,0xAA,0x54,0xA8,0x50,0xA0,0x40,0x80,0x00
stefan1691 0:a0bbe9291005 245 ,0xAA,0x55,0x2A,0x15,0x0A,0x05,0x02,0x01
stefan1691 0:a0bbe9291005 246 ,0x01,0x02,0x05,0x0A,0x15,0x2A,0x55,0xAA
stefan1691 0:a0bbe9291005 247 ,0x00,0x80,0x40,0xA0,0x50,0xA8,0x54,0xAA
stefan1691 0:a0bbe9291005 248 ,0x7E,0xFF,0x99,0xFF,0xBD,0xC3,0xFF,0x7E
stefan1691 0:a0bbe9291005 249 ,0x7E,0xFF,0x99,0xFF,0xC3,0xBD,0xFF,0x7E
stefan1691 0:a0bbe9291005 250 ,0x38,0x38,0xFE,0xFE,0xFE,0x10,0x38,0x00
stefan1691 0:a0bbe9291005 251 ,0x10,0x38,0x7C,0xFE,0x7C,0x38,0x10,0x00
stefan1691 0:a0bbe9291005 252 ,0x6C,0xFE,0xFE,0xFE,0x7C,0x38,0x10,0x00
stefan1691 0:a0bbe9291005 253 ,0x10,0x38,0x7C,0xFE,0xFE,0x10,0x38,0x00
stefan1691 0:a0bbe9291005 254 ,0x00,0x3C,0x66,0xC3,0xC3,0x66,0x3C,0x00
stefan1691 0:a0bbe9291005 255 ,0x00,0x3C,0x7E,0xFF,0xFF,0x7E,0x3C,0x00
stefan1691 0:a0bbe9291005 256 ,0x00,0x7E,0x66,0x66,0x66,0x66,0x7E,0x00
stefan1691 0:a0bbe9291005 257 ,0x00,0x7E,0x7E,0x7E,0x7E,0x7E,0x7E,0x00
stefan1691 0:a0bbe9291005 258 ,0x0F,0x07,0x0D,0x78,0xCC,0xCC,0xCC,0x78
stefan1691 0:a0bbe9291005 259 ,0x3C,0x66,0x66,0x66,0x3C,0x18,0x7E,0x18
stefan1691 0:a0bbe9291005 260 ,0x0C,0x0C,0x0C,0x0C,0x0C,0x3C,0x7C,0x38
stefan1691 0:a0bbe9291005 261 ,0x18,0x1C,0x1E,0x1B,0x18,0x78,0xF8,0x70
stefan1691 0:a0bbe9291005 262 ,0x99,0x5A,0x24,0xC3,0xC3,0x24,0x5A,0x99
stefan1691 0:a0bbe9291005 263 ,0x10,0x38,0x38,0x38,0x38,0x38,0x7C,0xD6
stefan1691 0:a0bbe9291005 264 ,0x18,0x3C,0x7E,0xFF,0x18,0x18,0x18,0x18
stefan1691 0:a0bbe9291005 265 ,0x18,0x18,0x18,0x18,0xFF,0x7E,0x3C,0x18
stefan1691 0:a0bbe9291005 266 ,0x10,0x30,0x70,0xFF,0xFF,0x70,0x30,0x10
stefan1691 0:a0bbe9291005 267 ,0x08,0x0C,0x0E,0xFF,0xFF,0x0E,0x0C,0x08
stefan1691 0:a0bbe9291005 268 ,0x00,0x00,0x18,0x3C,0x7E,0xFF,0xFF,0x00
stefan1691 0:a0bbe9291005 269 ,0x00,0x00,0xFF,0xFF,0x7E,0x3C,0x18,0x00
stefan1691 0:a0bbe9291005 270 ,0x80,0xE0,0xF8,0xFE,0xF8,0xE0,0x80,0x00
stefan1691 0:a0bbe9291005 271 ,0x02,0x0E,0x3E,0xFE,0x3E,0x0E,0x02,0x00
stefan1691 0:a0bbe9291005 272 ,0x38,0x38,0x92,0x7C,0x10,0x28,0x28,0x28
stefan1691 0:a0bbe9291005 273 ,0x38,0x38,0x10,0xFE,0x10,0x28,0x44,0x82
stefan1691 0:a0bbe9291005 274 ,0x38,0x38,0x12,0x7C,0x90,0x28,0x24,0x22
stefan1691 0:a0bbe9291005 275 ,0x38,0x38,0x90,0x7C,0x12,0x28,0x48,0x88
stefan1691 0:a0bbe9291005 276 ,0x00,0x3C,0x18,0x3C,0x3C,0x3C,0x18,0x00
stefan1691 0:a0bbe9291005 277 ,0x3C,0xFF,0xFF,0x18,0x0C,0x18,0x30,0x18
stefan1691 0:a0bbe9291005 278 ,0x18,0x3C,0x7E,0x18,0x18,0x7E,0x3C,0x18
stefan1691 0:a0bbe9291005 279 ,0x00,0x24,0x66,0xFF,0x66,0x24,0x00,0x00
stefan1691 0:a0bbe9291005 280 };
stefan1691 0:a0bbe9291005 281
stefan1691 0:a0bbe9291005 282
stefan1691 0:a0bbe9291005 283 class LMDriver
stefan1691 0:a0bbe9291005 284 {
stefan1691 0:a0bbe9291005 285
stefan1691 0:a0bbe9291005 286 SPI* spi;
stefan1691 0:a0bbe9291005 287 DigitalOut* cs;
stefan1691 0:a0bbe9291005 288 PinName _msoi,_miso,_sclk,_cs;
stefan1691 0:a0bbe9291005 289 float wtime;
stefan1691 0:a0bbe9291005 290 float cwtime;
stefan1691 0:a0bbe9291005 291 int freq;
stefan1691 0:a0bbe9291005 292 void writeToReg(int reg, int value) {
stefan1691 0:a0bbe9291005 293 cs->write(0);
stefan1691 0:a0bbe9291005 294 spi->write(reg);
stefan1691 0:a0bbe9291005 295 spi->write(value);
stefan1691 0:a0bbe9291005 296 cs->write(1);
stefan1691 0:a0bbe9291005 297 }
stefan1691 0:a0bbe9291005 298 void zeroFill() {
stefan1691 0:a0bbe9291005 299 for(int i=1; i<=8; i++)
stefan1691 0:a0bbe9291005 300 writeToReg(i,0);
stefan1691 0:a0bbe9291005 301 }
stefan1691 0:a0bbe9291005 302 void writeArray(const uint8_t* array, uint8_t size=8) {
stefan1691 0:a0bbe9291005 303 int count=0;
stefan1691 0:a0bbe9291005 304 for(int i=1; i<=8; i++)
stefan1691 0:a0bbe9291005 305 writeToReg(i,array[count++]);
stefan1691 0:a0bbe9291005 306 }
stefan1691 0:a0bbe9291005 307
stefan1691 0:a0bbe9291005 308 void displayDeque(const deque<uint8_t>& output) {
stefan1691 0:a0bbe9291005 309 int count=0;
stefan1691 0:a0bbe9291005 310 for(int i=1; i<=8; i++)
stefan1691 0:a0bbe9291005 311 writeToReg(i,output[count++]);
stefan1691 0:a0bbe9291005 312 }
stefan1691 0:a0bbe9291005 313 void allocate(const LMDriver& lm) {
stefan1691 0:a0bbe9291005 314 this->spi=new SPI(lm._msoi,lm._miso,lm._sclk);
stefan1691 0:a0bbe9291005 315 this->cs=new DigitalOut(lm._cs);
stefan1691 0:a0bbe9291005 316 this->_msoi=lm._msoi;
stefan1691 0:a0bbe9291005 317 this->_miso=lm._miso;
stefan1691 0:a0bbe9291005 318 this->_cs=lm._cs;
stefan1691 0:a0bbe9291005 319 this->freq=lm.freq;
stefan1691 0:a0bbe9291005 320 spi->format(8,0);
stefan1691 0:a0bbe9291005 321 spi->frequency(freq);
stefan1691 0:a0bbe9291005 322 this->cwtime=lm.cwtime;
stefan1691 0:a0bbe9291005 323 this->wtime=lm.wtime;
stefan1691 0:a0bbe9291005 324 }
stefan1691 0:a0bbe9291005 325 void deallocate() {
stefan1691 0:a0bbe9291005 326 delete this->spi;
stefan1691 0:a0bbe9291005 327 this->spi=0;
stefan1691 0:a0bbe9291005 328 delete this->cs;
stefan1691 0:a0bbe9291005 329 this->cs=0;
stefan1691 0:a0bbe9291005 330 }
stefan1691 0:a0bbe9291005 331 void fillDeque(deque<uint8_t>& regs, char c, int shift,bool test=true) {
stefan1691 0:a0bbe9291005 332 int bin=0;
stefan1691 0:a0bbe9291005 333 if(test)
stefan1691 0:a0bbe9291005 334 bin=0xff>>(7-shift);
stefan1691 0:a0bbe9291005 335 else
stefan1691 0:a0bbe9291005 336 bin=0xff<<(7-shift);
stefan1691 0:a0bbe9291005 337 for(int i=0; i<8; i++) {
stefan1691 0:a0bbe9291005 338 int value=chars[c*8+i];
stefan1691 0:a0bbe9291005 339 value=value&bin;
stefan1691 0:a0bbe9291005 340 if(test) {
stefan1691 0:a0bbe9291005 341 value=value<<(7-shift);
stefan1691 0:a0bbe9291005 342 value=value&128;
stefan1691 0:a0bbe9291005 343 regs[i]=regs[i]>>1;
stefan1691 0:a0bbe9291005 344 } else {
stefan1691 0:a0bbe9291005 345 value=value>>(7-shift);
stefan1691 0:a0bbe9291005 346 value=value&1;
stefan1691 0:a0bbe9291005 347 regs[i]=regs[i]<<1;
stefan1691 0:a0bbe9291005 348 }
stefan1691 0:a0bbe9291005 349 regs[i]=regs[i]|value;
stefan1691 0:a0bbe9291005 350 }
stefan1691 0:a0bbe9291005 351 }
stefan1691 0:a0bbe9291005 352 public:
stefan1691 0:a0bbe9291005 353 LMDriver(PinName msoi, PinName miso, PinName sclk, PinName chip_select);
stefan1691 0:a0bbe9291005 354 LMDriver(const LMDriver& lm);
stefan1691 0:a0bbe9291005 355 LMDriver& operator= (const LMDriver& lm);
stefan1691 0:a0bbe9291005 356 ~LMDriver();
stefan1691 0:a0bbe9291005 357 void Setup();
stefan1691 0:a0bbe9291005 358 void DisplayChar(char c);
stefan1691 0:a0bbe9291005 359 void DisplayString(const string& str);
stefan1691 0:a0bbe9291005 360 void DisplayStringCont(const string& str);
stefan1691 0:a0bbe9291005 361 void DisplayStringStep(const string& str, bool test=true);
stefan1691 0:a0bbe9291005 362 void SetSPIFreq(int freq) {
stefan1691 0:a0bbe9291005 363 if(freq<0)
stefan1691 0:a0bbe9291005 364 return;
stefan1691 0:a0bbe9291005 365 this->spi->frequency(freq);
stefan1691 0:a0bbe9291005 366 }
stefan1691 0:a0bbe9291005 367 void SetWaitTime(float time, bool test=true) {
stefan1691 0:a0bbe9291005 368 if(test) wtime=time;
stefan1691 0:a0bbe9291005 369 else cwtime=time;
stefan1691 0:a0bbe9291005 370 }
stefan1691 0:a0bbe9291005 371 void operator=(char c) {
stefan1691 0:a0bbe9291005 372 DisplayChar(c);
stefan1691 0:a0bbe9291005 373 }
stefan1691 0:a0bbe9291005 374 void operator=(const string& str) {
stefan1691 0:a0bbe9291005 375 DisplayStringCont(str);
stefan1691 0:a0bbe9291005 376 }
stefan1691 0:a0bbe9291005 377 void Clear() {
stefan1691 0:a0bbe9291005 378 zeroFill();
stefan1691 0:a0bbe9291005 379 }
stefan1691 0:a0bbe9291005 380
stefan1691 0:a0bbe9291005 381
stefan1691 0:a0bbe9291005 382 };
stefan1691 0:a0bbe9291005 383
stefan1691 0:a0bbe9291005 384 void LMDriver:: DisplayStringStep(const string& str, bool test)
stefan1691 0:a0bbe9291005 385 {
stefan1691 0:a0bbe9291005 386 deque<uint8_t> regs;
stefan1691 0:a0bbe9291005 387 for(int i=0; i<8; i++)
stefan1691 0:a0bbe9291005 388 regs.push_back(0);
stefan1691 0:a0bbe9291005 389
stefan1691 0:a0bbe9291005 390 displayDeque(regs);
stefan1691 0:a0bbe9291005 391
stefan1691 0:a0bbe9291005 392 for(int i=0; i<str.length(); i++) {
stefan1691 0:a0bbe9291005 393 for(int j=0; j<=8; j++) {
stefan1691 0:a0bbe9291005 394 if(j<8)
stefan1691 0:a0bbe9291005 395 fillDeque(regs,str[i],j,test);
stefan1691 0:a0bbe9291005 396 else if(j==8)
stefan1691 0:a0bbe9291005 397 fillDeque(regs,' ',7,test);
stefan1691 0:a0bbe9291005 398 displayDeque(regs);
stefan1691 0:a0bbe9291005 399 wait(cwtime);
stefan1691 0:a0bbe9291005 400 }
stefan1691 0:a0bbe9291005 401 }
stefan1691 0:a0bbe9291005 402 }
stefan1691 0:a0bbe9291005 403
stefan1691 0:a0bbe9291005 404 LMDriver& LMDriver:: operator=(const LMDriver& lm)
stefan1691 0:a0bbe9291005 405 {
stefan1691 0:a0bbe9291005 406 if(this==&lm)
stefan1691 0:a0bbe9291005 407 return *this;
stefan1691 0:a0bbe9291005 408 if(this->spi!=0 && this->cs!=0)
stefan1691 0:a0bbe9291005 409 deallocate();
stefan1691 0:a0bbe9291005 410 allocate(lm);
stefan1691 0:a0bbe9291005 411 return *this;
stefan1691 0:a0bbe9291005 412 }
stefan1691 0:a0bbe9291005 413
stefan1691 0:a0bbe9291005 414 LMDriver::LMDriver(const LMDriver& lm)
stefan1691 0:a0bbe9291005 415 {
stefan1691 0:a0bbe9291005 416 allocate(lm);
stefan1691 0:a0bbe9291005 417 }
stefan1691 0:a0bbe9291005 418
stefan1691 0:a0bbe9291005 419
stefan1691 0:a0bbe9291005 420
stefan1691 0:a0bbe9291005 421 void LMDriver::DisplayStringCont(const string& str)
stefan1691 0:a0bbe9291005 422 {
stefan1691 0:a0bbe9291005 423 if(str.length()==0)
stefan1691 0:a0bbe9291005 424 return;
stefan1691 0:a0bbe9291005 425
stefan1691 0:a0bbe9291005 426 if(str.length()==1) {
stefan1691 0:a0bbe9291005 427 DisplayChar(str[0]);
stefan1691 0:a0bbe9291005 428 return;
stefan1691 0:a0bbe9291005 429 }
stefan1691 0:a0bbe9291005 430
stefan1691 0:a0bbe9291005 431 deque<uint8_t> output;
stefan1691 0:a0bbe9291005 432
stefan1691 0:a0bbe9291005 433 for(int i=0; i<8; i++)
stefan1691 0:a0bbe9291005 434 output.push_back(0);
stefan1691 0:a0bbe9291005 435
stefan1691 0:a0bbe9291005 436 for(int i=0; i<str.size(); i++) {
stefan1691 0:a0bbe9291005 437 for(int j=0; j<10; j++) {
stefan1691 0:a0bbe9291005 438 displayDeque(output);
stefan1691 0:a0bbe9291005 439 wait(cwtime);
stefan1691 0:a0bbe9291005 440 output.pop_front();
stefan1691 0:a0bbe9291005 441 if(j<2)
stefan1691 0:a0bbe9291005 442 output.push_back(0);
stefan1691 0:a0bbe9291005 443 else if(j>=2)
stefan1691 0:a0bbe9291005 444 output.push_back(*(chars+str[i]*8+(j-2)));
stefan1691 0:a0bbe9291005 445 }
stefan1691 0:a0bbe9291005 446 displayDeque(output);
stefan1691 0:a0bbe9291005 447 }
stefan1691 0:a0bbe9291005 448 }
stefan1691 0:a0bbe9291005 449
stefan1691 0:a0bbe9291005 450
stefan1691 0:a0bbe9291005 451 void LMDriver::DisplayString(const string& str)
stefan1691 0:a0bbe9291005 452 {
stefan1691 0:a0bbe9291005 453 if(str.length()==0)
stefan1691 0:a0bbe9291005 454 return;
stefan1691 0:a0bbe9291005 455 for(int i=0; i<str.size(); i++) {
stefan1691 0:a0bbe9291005 456 DisplayChar(str[i]);
stefan1691 0:a0bbe9291005 457 wait(wtime);
stefan1691 0:a0bbe9291005 458 }
stefan1691 0:a0bbe9291005 459 zeroFill();
stefan1691 0:a0bbe9291005 460 }
stefan1691 0:a0bbe9291005 461
stefan1691 0:a0bbe9291005 462 void LMDriver::DisplayChar(char c)
stefan1691 0:a0bbe9291005 463 {
stefan1691 0:a0bbe9291005 464 if(c>255)
stefan1691 0:a0bbe9291005 465 return;
stefan1691 0:a0bbe9291005 466 const uint8_t* array=chars+c*8;
stefan1691 0:a0bbe9291005 467 writeArray(array);
stefan1691 0:a0bbe9291005 468 }
stefan1691 0:a0bbe9291005 469
stefan1691 0:a0bbe9291005 470 void LMDriver::Setup()
stefan1691 0:a0bbe9291005 471 {
stefan1691 0:a0bbe9291005 472 writeToReg(reg_decodeMode,0x00);
stefan1691 0:a0bbe9291005 473 writeToReg(reg_intensity,0x0f);
stefan1691 0:a0bbe9291005 474 writeToReg(reg_scanLimit,0x07);
stefan1691 0:a0bbe9291005 475 writeToReg(reg_shutdown,0x01);
stefan1691 0:a0bbe9291005 476 writeToReg(0xff,0x00);
stefan1691 0:a0bbe9291005 477 zeroFill();
stefan1691 0:a0bbe9291005 478 }
stefan1691 0:a0bbe9291005 479 LMDriver::LMDriver(PinName msoi, PinName miso, PinName sclk,PinName chip_select):spi(0),cs(0)
stefan1691 0:a0bbe9291005 480 {
stefan1691 0:a0bbe9291005 481 spi=new SPI(msoi,miso,sclk);
stefan1691 0:a0bbe9291005 482 spi->format(8,0);
stefan1691 0:a0bbe9291005 483 freq=1*MHz;
stefan1691 0:a0bbe9291005 484 spi->frequency(freq);
stefan1691 0:a0bbe9291005 485 cs= new DigitalOut(chip_select);
stefan1691 0:a0bbe9291005 486 _miso=miso;
stefan1691 0:a0bbe9291005 487 _msoi=msoi;
stefan1691 0:a0bbe9291005 488 _sclk=sclk;
stefan1691 0:a0bbe9291005 489 _cs=chip_select;
stefan1691 0:a0bbe9291005 490 wtime=0.5;
stefan1691 0:a0bbe9291005 491 cwtime=0.1;
stefan1691 0:a0bbe9291005 492 }
stefan1691 0:a0bbe9291005 493 LMDriver::~LMDriver()
stefan1691 0:a0bbe9291005 494 {
stefan1691 0:a0bbe9291005 495 deallocate();
stefan1691 0:a0bbe9291005 496 }
stefan1691 0:a0bbe9291005 497
stefan1691 0:a0bbe9291005 498 #endif