Simple test app to run a NeoStrip connected to a nRF51 Dongle

Dependencies:   RedBearNano_NeoPixels

Committer:
kuehn
Date:
Fri Feb 02 12:09:22 2018 +0000
Revision:
0:41668480cbeb
First running version

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kuehn 0:41668480cbeb 1 #include "mbed.h"
kuehn 0:41668480cbeb 2
kuehn 0:41668480cbeb 3 #include "neopixel.h"
kuehn 0:41668480cbeb 4
kuehn 0:41668480cbeb 5 #define NRF51_DONGLE
kuehn 0:41668480cbeb 6
kuehn 0:41668480cbeb 7 #define LED_COUNT 15
kuehn 0:41668480cbeb 8
kuehn 0:41668480cbeb 9 #ifdef NRF51_DONGLE
kuehn 0:41668480cbeb 10 #define LED_0 p21
kuehn 0:41668480cbeb 11 #define LED_1 p23
kuehn 0:41668480cbeb 12 #define LED_2 p22
kuehn 0:41668480cbeb 13
kuehn 0:41668480cbeb 14 #define STRIP_0 p15
kuehn 0:41668480cbeb 15 #define STRIP_1 p16
kuehn 0:41668480cbeb 16
kuehn 0:41668480cbeb 17 #define PULSE_0 p17
kuehn 0:41668480cbeb 18
kuehn 0:41668480cbeb 19 #elif NRF51_MICROBIT
kuehn 0:41668480cbeb 20 #define LED_0 p18
kuehn 0:41668480cbeb 21 #define LED_1 p19
kuehn 0:41668480cbeb 22 #endif
kuehn 0:41668480cbeb 23
kuehn 0:41668480cbeb 24 DigitalOut myled_0(LED_0);
kuehn 0:41668480cbeb 25 DigitalOut myled_1(LED_1);
kuehn 0:41668480cbeb 26
kuehn 0:41668480cbeb 27 DigitalOut myledError(LED_2);
kuehn 0:41668480cbeb 28
kuehn 0:41668480cbeb 29 neopixel_strip_t m_strip;
kuehn 0:41668480cbeb 30 uint8_t dig_pin_num = 15;
kuehn 0:41668480cbeb 31 uint8_t leds_per_strip = 24;
kuehn 0:41668480cbeb 32 uint8_t result;
kuehn 0:41668480cbeb 33
kuehn 0:41668480cbeb 34 uint8_t current = 0;
kuehn 0:41668480cbeb 35
kuehn 0:41668480cbeb 36 //clear and remove strip
kuehn 0:41668480cbeb 37 // neopixel_clear(&m_strip);
kuehn 0:41668480cbeb 38 // neopixel_destroy(&m_strip);
kuehn 0:41668480cbeb 39
kuehn 0:41668480cbeb 40 void renderLine()
kuehn 0:41668480cbeb 41 {
kuehn 0:41668480cbeb 42 result = neopixel_set_color_and_show(&m_strip, current, 0x22, 0xAA, 0x88);
kuehn 0:41668480cbeb 43
kuehn 0:41668480cbeb 44 current = (current + 1) % LED_COUNT;
kuehn 0:41668480cbeb 45
kuehn 0:41668480cbeb 46 if (result) {
kuehn 0:41668480cbeb 47 myledError = 1;
kuehn 0:41668480cbeb 48 }
kuehn 0:41668480cbeb 49 else {
kuehn 0:41668480cbeb 50 myledError = 0;
kuehn 0:41668480cbeb 51 }
kuehn 0:41668480cbeb 52 }
kuehn 0:41668480cbeb 53
kuehn 0:41668480cbeb 54 int main ()
kuehn 0:41668480cbeb 55 {
kuehn 0:41668480cbeb 56 neopixel_init(&m_strip, STRIP_0, LED_COUNT);
kuehn 0:41668480cbeb 57 neopixel_clear(&m_strip);
kuehn 0:41668480cbeb 58
kuehn 0:41668480cbeb 59 while (1) {
kuehn 0:41668480cbeb 60 myled_0 = 1;
kuehn 0:41668480cbeb 61 myled_1 = 0;
kuehn 0:41668480cbeb 62 wait (0.2);
kuehn 0:41668480cbeb 63
kuehn 0:41668480cbeb 64 myled_0 = 0;
kuehn 0:41668480cbeb 65 myled_1 = 1;
kuehn 0:41668480cbeb 66 wait (0.2);
kuehn 0:41668480cbeb 67
kuehn 0:41668480cbeb 68 renderLine();
kuehn 0:41668480cbeb 69 }
kuehn 0:41668480cbeb 70 }