void setup() {
// put your setup code here, to run once:
volatile char *dirf,*dirk;
dirf=0x30;
dirk=0x107;
*dirf=0xFF;
*dirk=0xFF;
volatile char *outf,*outk;
outf=0x31;
outk=0x108;
/**outf=0x80;
*outk=0xFE;//top left most led
delay(1000);
*outf=0x40;
*outk=0xFD;
delay(1000);
*outf=0x20;
*outk=0xFB;*/
//*outf=0x01;
//*outk=0x7F;bottom right most led
//*outf=0x80;
//*outk=0x7F;bottom left most led
//*outf=0xFF;
//*outk=0xFE;top row led
//*outf=0xFF;
//*outk=0x7F;bottom row led
//*outf=0X80;
//*outk=0x00;left side coloumn
//*outf=0x01;
//*outk=0x00; right side coloumn
}
void out_r(char out)
{
volatile char *outf;
outf=0x31;
*outf=out;
}
void out_c(char out)
{
volatile char *outf;
outf=0x108;
*outf=out;
}
void loop() {
// put your main code here, to run repeatedly:
volatile char *outf,*outk;
outf=0x31;
outk=0x108;
volatile char c;
volatile char row,row1,disp;
volatile int arra[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
volatile int arr_q[3][8]={{0xBF,0x7F,0x89,0xF6,0xF6,0xF6,0xF6,0xF9},
{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},
{0xCE,0xB6,0xB6,0xB6,0xB6,0xB6,0xB6,0xB9}
};
for(row=0;row<3;row++)
{
for(int r=0;r<5;r++){
for(c=0;c<8;c++)
{
*outf=arra[c];
*outk=arr_q[row][c];
delay(5);
}
}
delay(1000);
}
}
/*volatile char row,value;
for(row=0;row<8;row++)
{
out_r(0x80>>row);
out_c(0xFE & ~(1<<row));
delay(1000);
}*/
//volatile int arr_A[]={0x07,0xDB,0xDD,0xDE,0xDD,0xDB,0x07};
/*volatile int arra[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
volatile int arr_s[]={0xCE,0xB6,0xB6,0xB6,0xB6,0xB6,0xB6,0xB9};*/
/*volatile int arra[]={0x20,0x10,0x08,0x04,0x02};
volatile int arr_1[]={0xBD,0xBE,0x80,0xBF,0xBF};*/
/*volatile int arra[]={0x01,0x02,0x04,0x08,0x10,0x20};
volatile int arr_a[]={0xBF,0xC9,0xB6,0xB6,0xB6,0xCE};*/
/*volatile int arra[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
volatile int arr_q[]={0xBF,0x7F,0x89,0xF6,0xF6,0xF6,0xF6,0xF9};*/