Forked PololuLedStrip and modified it to work with the KL25Z. Renamed it to Adafruit_NeoPixel.

Fork of PololuLedStrip by David Grayson

Committer:
DavidEGrayson
Date:
Wed Feb 27 00:28:26 2013 +0000
Revision:
0:06475317f283
Child:
4:d3b60bd43811
Still working;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
DavidEGrayson 0:06475317f283 1 AREA asm_func, CODE, READONLY
DavidEGrayson 0:06475317f283 2 EXPORT led_strip_write_color
DavidEGrayson 0:06475317f283 3
DavidEGrayson 0:06475317f283 4 led_strip_write_color
DavidEGrayson 0:06475317f283 5 push {r12, r7}
DavidEGrayson 0:06475317f283 6
DavidEGrayson 0:06475317f283 7 ldr r12, [r0] ; Read the next color.
DavidEGrayson 0:06475317f283 8 rbit r12, r12 ; Reverse the order of the bits.
DavidEGrayson 0:06475317f283 9 rev r12, r12 ; Reverse the order of the bytes.
DavidEGrayson 0:06475317f283 10 mov r7, #24 ; Initialize the loop counter register.
DavidEGrayson 0:06475317f283 11
DavidEGrayson 0:06475317f283 12 send_led_strip_bit
DavidEGrayson 0:06475317f283 13 str r3, [r1] ; Drive the line high.
DavidEGrayson 0:06475317f283 14 rrxs r12, r12 ; Rotate right through carry.
DavidEGrayson 0:06475317f283 15
DavidEGrayson 0:06475317f283 16 nop
DavidEGrayson 0:06475317f283 17 nop
DavidEGrayson 0:06475317f283 18 nop
DavidEGrayson 0:06475317f283 19 nop
DavidEGrayson 0:06475317f283 20 nop
DavidEGrayson 0:06475317f283 21 nop
DavidEGrayson 0:06475317f283 22 nop
DavidEGrayson 0:06475317f283 23 nop
DavidEGrayson 0:06475317f283 24 nop
DavidEGrayson 0:06475317f283 25 nop
DavidEGrayson 0:06475317f283 26
DavidEGrayson 0:06475317f283 27 nop
DavidEGrayson 0:06475317f283 28 nop
DavidEGrayson 0:06475317f283 29 nop
DavidEGrayson 0:06475317f283 30 nop
DavidEGrayson 0:06475317f283 31 nop
DavidEGrayson 0:06475317f283 32 nop
DavidEGrayson 0:06475317f283 33 nop
DavidEGrayson 0:06475317f283 34 nop
DavidEGrayson 0:06475317f283 35 nop
DavidEGrayson 0:06475317f283 36 nop
DavidEGrayson 0:06475317f283 37
DavidEGrayson 0:06475317f283 38 nop
DavidEGrayson 0:06475317f283 39 nop
DavidEGrayson 0:06475317f283 40 nop
DavidEGrayson 0:06475317f283 41 nop
DavidEGrayson 0:06475317f283 42 nop
DavidEGrayson 0:06475317f283 43 nop
DavidEGrayson 0:06475317f283 44 nop
DavidEGrayson 0:06475317f283 45 nop
DavidEGrayson 0:06475317f283 46 nop
DavidEGrayson 0:06475317f283 47 nop
DavidEGrayson 0:06475317f283 48
DavidEGrayson 0:06475317f283 49 nop
DavidEGrayson 0:06475317f283 50 nop
DavidEGrayson 0:06475317f283 51 nop
DavidEGrayson 0:06475317f283 52 nop
DavidEGrayson 0:06475317f283 53 nop
DavidEGrayson 0:06475317f283 54 nop
DavidEGrayson 0:06475317f283 55 nop
DavidEGrayson 0:06475317f283 56 nop
DavidEGrayson 0:06475317f283 57 nop
DavidEGrayson 0:06475317f283 58 nop
DavidEGrayson 0:06475317f283 59
DavidEGrayson 0:06475317f283 60 nop
DavidEGrayson 0:06475317f283 61 nop
DavidEGrayson 0:06475317f283 62 nop
DavidEGrayson 0:06475317f283 63 nop
DavidEGrayson 0:06475317f283 64 nop
DavidEGrayson 0:06475317f283 65 nop
DavidEGrayson 0:06475317f283 66 nop
DavidEGrayson 0:06475317f283 67 nop
DavidEGrayson 0:06475317f283 68 nop
DavidEGrayson 0:06475317f283 69 nop
DavidEGrayson 0:06475317f283 70
DavidEGrayson 0:06475317f283 71 nop
DavidEGrayson 0:06475317f283 72 nop
DavidEGrayson 0:06475317f283 73 nop
DavidEGrayson 0:06475317f283 74 nop
DavidEGrayson 0:06475317f283 75 nop
DavidEGrayson 0:06475317f283 76 nop
DavidEGrayson 0:06475317f283 77 nop
DavidEGrayson 0:06475317f283 78 nop
DavidEGrayson 0:06475317f283 79 nop
DavidEGrayson 0:06475317f283 80 nop
DavidEGrayson 0:06475317f283 81
DavidEGrayson 0:06475317f283 82 nop
DavidEGrayson 0:06475317f283 83 nop
DavidEGrayson 0:06475317f283 84 nop
DavidEGrayson 0:06475317f283 85 nop
DavidEGrayson 0:06475317f283 86
DavidEGrayson 0:06475317f283 87 it cc ; If the bit to send it 0...
DavidEGrayson 0:06475317f283 88 strcc r3, [r2] ; Drive the line low.
DavidEGrayson 0:06475317f283 89
DavidEGrayson 0:06475317f283 90 nop
DavidEGrayson 0:06475317f283 91 nop
DavidEGrayson 0:06475317f283 92 nop
DavidEGrayson 0:06475317f283 93 nop
DavidEGrayson 0:06475317f283 94 nop
DavidEGrayson 0:06475317f283 95 nop
DavidEGrayson 0:06475317f283 96 nop
DavidEGrayson 0:06475317f283 97 nop
DavidEGrayson 0:06475317f283 98 nop
DavidEGrayson 0:06475317f283 99 nop
DavidEGrayson 0:06475317f283 100
DavidEGrayson 0:06475317f283 101 nop
DavidEGrayson 0:06475317f283 102 nop
DavidEGrayson 0:06475317f283 103 nop
DavidEGrayson 0:06475317f283 104 nop
DavidEGrayson 0:06475317f283 105 nop
DavidEGrayson 0:06475317f283 106 nop
DavidEGrayson 0:06475317f283 107 nop
DavidEGrayson 0:06475317f283 108 nop
DavidEGrayson 0:06475317f283 109 nop
DavidEGrayson 0:06475317f283 110 nop
DavidEGrayson 0:06475317f283 111
DavidEGrayson 0:06475317f283 112 nop
DavidEGrayson 0:06475317f283 113 nop
DavidEGrayson 0:06475317f283 114 nop
DavidEGrayson 0:06475317f283 115 nop
DavidEGrayson 0:06475317f283 116 nop
DavidEGrayson 0:06475317f283 117 nop
DavidEGrayson 0:06475317f283 118 nop
DavidEGrayson 0:06475317f283 119 nop
DavidEGrayson 0:06475317f283 120 nop
DavidEGrayson 0:06475317f283 121 nop
DavidEGrayson 0:06475317f283 122
DavidEGrayson 0:06475317f283 123 nop
DavidEGrayson 0:06475317f283 124 nop
DavidEGrayson 0:06475317f283 125 nop
DavidEGrayson 0:06475317f283 126 nop
DavidEGrayson 0:06475317f283 127 nop
DavidEGrayson 0:06475317f283 128 nop
DavidEGrayson 0:06475317f283 129 nop
DavidEGrayson 0:06475317f283 130 nop
DavidEGrayson 0:06475317f283 131 nop
DavidEGrayson 0:06475317f283 132 nop
DavidEGrayson 0:06475317f283 133
DavidEGrayson 0:06475317f283 134 nop
DavidEGrayson 0:06475317f283 135 nop
DavidEGrayson 0:06475317f283 136 nop
DavidEGrayson 0:06475317f283 137 nop
DavidEGrayson 0:06475317f283 138 nop
DavidEGrayson 0:06475317f283 139 nop
DavidEGrayson 0:06475317f283 140 nop
DavidEGrayson 0:06475317f283 141 nop
DavidEGrayson 0:06475317f283 142 nop
DavidEGrayson 0:06475317f283 143 nop
DavidEGrayson 0:06475317f283 144
DavidEGrayson 0:06475317f283 145 nop
DavidEGrayson 0:06475317f283 146 nop
DavidEGrayson 0:06475317f283 147 nop
DavidEGrayson 0:06475317f283 148 nop
DavidEGrayson 0:06475317f283 149 nop
DavidEGrayson 0:06475317f283 150 nop
DavidEGrayson 0:06475317f283 151 nop
DavidEGrayson 0:06475317f283 152 nop
DavidEGrayson 0:06475317f283 153 nop
DavidEGrayson 0:06475317f283 154
DavidEGrayson 0:06475317f283 155
DavidEGrayson 0:06475317f283 156 it cs ; If the bit to send is 1...
DavidEGrayson 0:06475317f283 157 strcs r3, [r2] ; Drive the line low.
DavidEGrayson 0:06475317f283 158
DavidEGrayson 0:06475317f283 159 nop
DavidEGrayson 0:06475317f283 160 nop
DavidEGrayson 0:06475317f283 161 nop
DavidEGrayson 0:06475317f283 162 nop
DavidEGrayson 0:06475317f283 163 nop
DavidEGrayson 0:06475317f283 164 nop
DavidEGrayson 0:06475317f283 165 nop
DavidEGrayson 0:06475317f283 166 nop
DavidEGrayson 0:06475317f283 167 nop
DavidEGrayson 0:06475317f283 168 nop
DavidEGrayson 0:06475317f283 169
DavidEGrayson 0:06475317f283 170 nop
DavidEGrayson 0:06475317f283 171 nop
DavidEGrayson 0:06475317f283 172 nop
DavidEGrayson 0:06475317f283 173 nop
DavidEGrayson 0:06475317f283 174 nop
DavidEGrayson 0:06475317f283 175 nop
DavidEGrayson 0:06475317f283 176 nop
DavidEGrayson 0:06475317f283 177 nop
DavidEGrayson 0:06475317f283 178 nop
DavidEGrayson 0:06475317f283 179 nop
DavidEGrayson 0:06475317f283 180
DavidEGrayson 0:06475317f283 181 nop
DavidEGrayson 0:06475317f283 182 nop
DavidEGrayson 0:06475317f283 183 nop
DavidEGrayson 0:06475317f283 184 nop
DavidEGrayson 0:06475317f283 185 nop
DavidEGrayson 0:06475317f283 186 nop
DavidEGrayson 0:06475317f283 187 nop
DavidEGrayson 0:06475317f283 188 nop
DavidEGrayson 0:06475317f283 189 nop
DavidEGrayson 0:06475317f283 190 nop
DavidEGrayson 0:06475317f283 191
DavidEGrayson 0:06475317f283 192 nop
DavidEGrayson 0:06475317f283 193 nop
DavidEGrayson 0:06475317f283 194 nop
DavidEGrayson 0:06475317f283 195 nop
DavidEGrayson 0:06475317f283 196 nop
DavidEGrayson 0:06475317f283 197 nop
DavidEGrayson 0:06475317f283 198 nop
DavidEGrayson 0:06475317f283 199 nop
DavidEGrayson 0:06475317f283 200 nop
DavidEGrayson 0:06475317f283 201 nop
DavidEGrayson 0:06475317f283 202
DavidEGrayson 0:06475317f283 203 nop
DavidEGrayson 0:06475317f283 204 nop
DavidEGrayson 0:06475317f283 205 nop
DavidEGrayson 0:06475317f283 206 nop
DavidEGrayson 0:06475317f283 207 nop
DavidEGrayson 0:06475317f283 208 nop
DavidEGrayson 0:06475317f283 209 nop
DavidEGrayson 0:06475317f283 210 nop
DavidEGrayson 0:06475317f283 211 nop
DavidEGrayson 0:06475317f283 212 nop
DavidEGrayson 0:06475317f283 213
DavidEGrayson 0:06475317f283 214 nop
DavidEGrayson 0:06475317f283 215 nop
DavidEGrayson 0:06475317f283 216 nop
DavidEGrayson 0:06475317f283 217 nop
DavidEGrayson 0:06475317f283 218 nop
DavidEGrayson 0:06475317f283 219 nop
DavidEGrayson 0:06475317f283 220 nop
DavidEGrayson 0:06475317f283 221 nop
DavidEGrayson 0:06475317f283 222 nop
DavidEGrayson 0:06475317f283 223 nop
DavidEGrayson 0:06475317f283 224
DavidEGrayson 0:06475317f283 225 nop
DavidEGrayson 0:06475317f283 226 nop
DavidEGrayson 0:06475317f283 227 nop
DavidEGrayson 0:06475317f283 228 nop
DavidEGrayson 0:06475317f283 229 nop
DavidEGrayson 0:06475317f283 230 nop
DavidEGrayson 0:06475317f283 231 nop
DavidEGrayson 0:06475317f283 232 nop
DavidEGrayson 0:06475317f283 233 nop
DavidEGrayson 0:06475317f283 234 nop
DavidEGrayson 0:06475317f283 235
DavidEGrayson 0:06475317f283 236 nop
DavidEGrayson 0:06475317f283 237 nop
DavidEGrayson 0:06475317f283 238 nop
DavidEGrayson 0:06475317f283 239 nop
DavidEGrayson 0:06475317f283 240 nop
DavidEGrayson 0:06475317f283 241 nop
DavidEGrayson 0:06475317f283 242 nop
DavidEGrayson 0:06475317f283 243 nop
DavidEGrayson 0:06475317f283 244 nop
DavidEGrayson 0:06475317f283 245 nop
DavidEGrayson 0:06475317f283 246
DavidEGrayson 0:06475317f283 247 nop
DavidEGrayson 0:06475317f283 248 nop
DavidEGrayson 0:06475317f283 249 nop
DavidEGrayson 0:06475317f283 250 nop
DavidEGrayson 0:06475317f283 251 nop
DavidEGrayson 0:06475317f283 252 nop
DavidEGrayson 0:06475317f283 253 nop
DavidEGrayson 0:06475317f283 254 nop
DavidEGrayson 0:06475317f283 255 nop
DavidEGrayson 0:06475317f283 256 nop
DavidEGrayson 0:06475317f283 257
DavidEGrayson 0:06475317f283 258 nop
DavidEGrayson 0:06475317f283 259 nop
DavidEGrayson 0:06475317f283 260 nop
DavidEGrayson 0:06475317f283 261 nop
DavidEGrayson 0:06475317f283 262 nop
DavidEGrayson 0:06475317f283 263 nop
DavidEGrayson 0:06475317f283 264 nop
DavidEGrayson 0:06475317f283 265 nop
DavidEGrayson 0:06475317f283 266 nop
DavidEGrayson 0:06475317f283 267 nop
DavidEGrayson 0:06475317f283 268
DavidEGrayson 0:06475317f283 269 nop
DavidEGrayson 0:06475317f283 270 nop
DavidEGrayson 0:06475317f283 271 nop
DavidEGrayson 0:06475317f283 272 nop
DavidEGrayson 0:06475317f283 273 nop
DavidEGrayson 0:06475317f283 274 nop
DavidEGrayson 0:06475317f283 275 nop
DavidEGrayson 0:06475317f283 276
DavidEGrayson 0:06475317f283 277 sub r7, r7, #1 ; Decrement the loop counter.
DavidEGrayson 0:06475317f283 278 cbz r7, led_strip_asm_end ; If we have sent 24 bits, go to the end.
DavidEGrayson 0:06475317f283 279 b send_led_strip_bit ; Otherwise, go back and send another bit.
DavidEGrayson 0:06475317f283 280
DavidEGrayson 0:06475317f283 281 led_strip_asm_end
DavidEGrayson 0:06475317f283 282 pop {r12, r7}
DavidEGrayson 0:06475317f283 283 bx lr
DavidEGrayson 0:06475317f283 284
DavidEGrayson 0:06475317f283 285 END