LEDmatrix

Dependencies:   mbed

Revision:
0:ddaa166a52da
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Sat Sep 01 09:48:17 2018 +0000
@@ -0,0 +1,202 @@
+#include "led_func.h"
+
+/*int main(){
+    while(1){
+    myLED=L;
+    CLK=L;
+    LAT=L;
+    Address=0;
+    wait(0.1);
+    for(char i=0;i<1;i++){
+        CLK=H;
+        wait(0.1);
+        CLK=L;
+        wait(0.1);
+        Red1=1;
+        wait(0.1);
+    }
+    LAT=H;
+    wait(0.1);
+    LAT=L;
+    wait(0.1);
+    OE=L;
+    myLED=H;
+    wait(0.1);
+    }
+}*/
+
+int main(){
+    ResetBoard();
+    for(char i=0;i<16;i++){
+        for(char j=0;j<8;j++){
+            led_board[i][j].blue=true;    
+        }
+    }
+    while(1){
+        PrintBoard();   
+    }
+}
+
+/*int main(){
+    LED LedBoard;
+    LedBoard.ResetBoard();
+    char test[16][16]={{0,1,2,4,3,5,6,7,0,0,0,0,0,0,0,0}};
+    LedBoard.led_board[0][0]=B;
+    while(1){
+        LedBoard.PrintBoard();
+    }
+}*/
+/*char k=0;
+
+void Init(){
+    OE=1;
+    Address=0;
+    CLK=0;
+    LAT=0;
+}
+
+void WriteLine(uint8_t line){
+    Init();
+    OE=1;
+    Red1=1;
+    Green1=0;
+    Blue1=0;
+    Red2=1;
+    Green2=0;
+    Blue2=0;
+    Address=line;
+    for(int j=0;j<32;j++){
+        if(line==3&&j==31)Blue1=1;
+        CLK=1;
+        CLK=0;
+    }
+    LAT=1;
+    LAT=0;
+    OE=0;
+}
+
+int main(){
+    while(1){
+        for(int i=0;i<4;i++){
+            WriteLine(i);
+            wait_us(100);
+        }
+    }    
+}*/
+/*BusOut pin(PC_7,PB_6,PA_7);//9 DS(データ),10 ST_CP(ラッチ),11 SH_CP(クロック)
+DigitalOut datapin(PC_7);//9 DS
+DigitalOut latchpin(PB_6);//10 ST_CP
+DigitalOut clockpin(PA_7);//11 SH_CP
+
+uint8_t datared;
+uint8_t datagreen;
+uint8_t datablue;
+uint8_t dataarrayred[10];
+uint8_t dataarraygreen[10];
+uint8_t dataarrayblue[10];
+
+void setup(){
+    dataarrayred[0]=0xff;
+    dataarrayred[1]=0xfe;
+    dataarrayred[2]=0xfc;
+    dataarrayred[3]=0xf8;
+    dataarrayred[4]=0xf0;
+    dataarrayred[5]=0xe0;
+    dataarrayred[6]=0xc0;
+    dataarrayred[7]=0x80;
+    dataarrayred[8]=0x00;
+    
+    dataarraygreen[0]=0xff;
+    dataarraygreen[1]=0xfe;
+    dataarraygreen[2]=0xfc;
+    dataarraygreen[3]=0xf8;
+    dataarraygreen[4]=0xf0;
+    dataarraygreen[5]=0xe0;
+    dataarraygreen[6]=0xc0;
+    dataarraygreen[7]=0x80;
+    dataarraygreen[8]=0x00;
+    
+    dataarrayblue[0]=0xff;
+    dataarrayblue[1]=0xfe;
+    dataarrayblue[2]=0xfc;
+    dataarrayblue[3]=0xf8;
+    dataarrayblue[4]=0xf0;
+    dataarrayblue[5]=0xe0;
+    dataarrayblue[6]=0xc0;
+    dataarrayblue[7]=0x80;
+    dataarrayblue[8]=0x00;
+}
+
+void shiftout(uint8_t data){
+    datapin=0;
+    clockpin=0;
+    for(int i=7;i>0;i--){
+        clockpin=0;
+        wait_us(1);
+        if (data&(1<<i)){
+            datapin=0;
+        }else{
+            datapin=1;
+        }
+        wait_us(1);
+        clockpin=1;
+        wait_us(1);
+        datapin=0;
+        wait_us(1);
+    }
+    clockpin=0;
+}
+
+void loop(){
+    for(int i=0;i<10;i++){
+        datared=dataarrayred[i];
+        datagreen=dataarraygreen[i];
+        datablue=dataarrayblue[i];
+        latchpin=1;
+        shiftout(datagreen);
+        shiftout(datared);
+        shiftout(datablue);
+        latchpin=0;
+        wait(3);
+    }
+}
+
+int main(){
+    setup();
+    while(1){
+        loop();
+    }
+}*/
+/*BusInOut kathode(PC_1,PB_0,PA_4,PA_1);
+//BusInOut led(PD_2,PC_11,PC_10,PC_12,PA_13,PA_14,PA_15,PB_7,PC_13,PC_3,PC_0,PA_0);
+BusInOut redled(PA_13,PC_13,PA_0,PA_13);
+BusInOut greenled(PB_7,PC_0,PD_2,PC_12);
+BusInOut blueled(PA_15,PC_3,PC_11,PC_10);
+
+int main() {
+    kathode.output();
+    redled.output();
+    redled.mode(OpenDrain);
+    greenled.output();
+    greenled.mode(OpenDrain);
+    blueled.output();
+    blueled.mode(OpenDrain);
+    while(1){
+        kathode=0b0001;
+        for(int i=0;i<4;i++){
+            redled=0b0000;
+            greenled=0b0000;
+            blueled=0b1111;
+            wait_us(1);
+            redled=0;
+            greenled=0;
+            blueled=0;
+            kathode=kathode<<1;
+        }
+    }
+    kathode=0b1111;
+    led.output();
+    led.mode(OpenDrain);
+    led=0xffff;
+    while(1){}
+}*/