TG-LPC11U35-501に対応

Dependencies:   mbed

こちらのページのプログラムを、TG-LPC11U35-501に対応させました。
https://developer.mbed.org/users/tkasa/code/LEDTape_WS2812/wiki/Homepage

動作に疑問があるため、教えを請うための公開です。
疑問が解消され次第公開を終了します。

(2016/04/13 追記)
おかしな動作解消されました。

プログラム LEDstrip_WS2812.cpp を修正しました。
修正点はコメントを加えてあります。

しばらくしたら、削除する予定です。

main.cpp

Committer:
hirobe0913
Date:
2016-04-13
Revision:
2:ebd3f4b4e0a3
Parent:
1:4aff1ebb42c1

File content as of revision 2:ebd3f4b4e0a3:

/*
 * WS2812 tape led IC
 */
#include "mbed.h"
#include "LEDStrip.h"


#if defined(TARGET_LPC1768)
    Serial pc(USBTX, USBRX);
#elif defined(TARGET_LPC11U35_501)
    Serial pc(p9, p10);
#endif
DigitalOut led1(LED1), led2(LED2);  //  , led3(LED3), led4(LED4);

extern "C"
void HardFault_Handler() {
    printf("Hard Fault!\r\n");
    exit(-1);
}

int main() {
    int j, k = 0;
    int vall[4];

    pc.baud(115200);
    tapeInit(0, 16);
    led1 = 1;

    pc.printf("led\r\n");

    for (;;) {
        for (long int i = 0; i < 128; i++) {
            vall[0] = (i << 8)|(127-i);
            vall[1] = (i << 16)|((127-i)<<8);
            vall[2] = ((127-i)<<16)|i;
//            vall[3] = i;
            vall[3] = ((127-i)<<16)|(127-i);
            for(int j=0;j<4;j++){
//              j = 0;
                tapeSet(j, vall[j]);
                tapeSend();
                wait(0.1);
                pc.printf("i= %d\r\n",i);
            }
            wait_ms(2);
        }
    }

/*
    for (;;) {
        for (long int i = 0; i < 256; i++) {
            int val = (i << 8)|(255-i);
            for(int j=0;j<16;j++){
              tapeSet(j, val);
            }
            tapeSend();
            wait_ms(2);
        }
        for (long int i = 0; i < 256; i++) {
            int val = (i << 16)|((255-i)<<8);
            for(int j=0;j<16;j++){
              tapeSet(j, val);
            }
            tapeSend();
            wait_ms(2);
        }
        for (long int i = 0; i < 256; i++) {
            int val = ((255-i)<<16)|i;
            for(int j=0;j<16;j++){
              tapeSet(j, val);
            }
            tapeSend();
            wait_ms(2);
            
        }
    pc.printf("test3\r\n");
//            while (1);
        for (long int i = 0; i < 160; i ++) {
            tapeSet(i, 0);
        }
        tapeSend();
    }
*/

}