void column(char);
void port_initialization()
{
volatile char *portF_dir;
volatile char *portK_dir;
portF_dir=0x30;
portK_dir=0x107;
*portF_dir=0xFF;
*portK_dir=0xFF;
}
void outportF(char outdata)
{
volatile char *portF_data;
portF_data=0x31;
*portF_data=outdata;
}
void outportK(char outdata)
{
volatile char *portF_data;
portF_data=0x108;
*portF_data=outdata;
}
void ideal_state()
{
outportF(0x00);
outportK(0xFF);
}
void column(char input)
{
outportK(~input);
}
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
port_initialization();
while(1)
{
/*############ character 'A'
outportF(0xFE);
outportK(0xDB);
delay(50);
outportF(0x11);
outportK(0xE7);
delay(50);
############*/
/*############ character 'B'
outportF(0xFF);
outportK(0xFB);
delay(10);
outportF(0x99);
outportK(0xE3);
delay(10);
outportF(0x66);
outportK(0xDF);
delay(10);
outportF(0x00);
outportK(0xFF);
delay(3);
############*/
/*############ character '1'
outportF(0xFF);
outportK(0xEF);
delay(1);
outportF(0x00);
outportK(0xFF);
outportF(0x02);
outportK(0xF7);
delay(1);
outportF(0x00);
outportK(0xFF);
outportF(0x04);
outportK(0xFB);
delay(1);
outportF(0x00);
outportK(0xFF);
outportF(0x80);
outportK(0x00);
delay(1);
outportF(0x00);
outportK(0xFF);
############*/
/*############ character '2'
outportF(0xE6);
outportK(0xFB);
delay(1);
outportF(0x00);
outportK(0xFF);
outportF(0x91);
outportK(0xF7);
delay(1);
outportF(0x00);
outportK(0xFF);
outportF(0x89);
outportK(0xEF);
delay(1);
outportF(0x00);
outportK(0xFF);
outportF(0x89);
outportK(0xDF);
delay(1);
outportF(0x00);
outportK(0xFF);
outportF(0x86);
outportK(0xBF);
delay(1);
outportF(0x00);
outportK(0xFF);
############*/
/*############ character 'a'
outportF(0xE6);
outportK(0xFB);
delay(1);
outportF(0x00);
outportK(0xFF);
outportF(0x91);
outportK(0xF7);
delay(1);
outportF(0x00);
outportK(0xFF);
outportF(0x89);
outportK(0xEF);
delay(1);
outportF(0x00);
outportK(0xFF);
outportF(0x89);
outportK(0xDF);
delay(1);
outportF(0x00);
outportK(0xFF);
outportF(0xFE);
outportK(0xBF);
delay(1);
outportF(0x00);
outportK(0xFF);
############*/
/*############ character '$'
outportF(0x0C);
outportK(0xFB);
delay(1);
outportF(0x00);
outportK(0xFF);
outportF(0x12);
outportK(0xE7);
delay(1);
outportF(0x00);
outportK(0xFF);
outportF(0xFF);
outportK(0xDF);
delay(1);
outportF(0x00);
outportK(0xFF);
############*/
/*############ character '$'
outportF(0x24);
outportK(0xBB);
delay(1);
ideal_state();
outportF(0x4A);
outportK(0xF7);
delay(1);
ideal_state();
outportF(0xFF);
outportK(0xEF);
delay(1);
ideal_state();
outportF(0x52);
outportK(0xDF);
delay(1);
ideal_state();
############*/
/*############ character '$'
outportF(0xFF);
outportK(0xDB);
delay(1);
ideal_state();
outportF(0x24);
outportK(0x24);
delay(1);
ideal_state();
############*/
/*############ character 'alpha'
outportF(0x18);
column(0x01);
delay(1);
ideal_state();
outportF(0x24);
column(0x02);
delay(1);
ideal_state();
outportF(0x42);
column(0x24);
delay(1);
ideal_state();
outportF(0x81);
column(0x18);
delay(1);
ideal_state();
outportF(0x18);
column(0x40);
delay(1);
ideal_state();
outportF(0x66);
column(0x80);
delay(1);
ideal_state();
############*/
outportF(0x98);
column(0x81);
delay(1);
ideal_state();
outportF(0xA4);
column(0x42);
delay(1);
ideal_state();
outportF(0xC2);
column(0x24);
delay(1);
ideal_state();
outportF(0x01);
column(0x18);
delay(1);
ideal_state();
}
}
void loop() {
// put your main code here, to run repeatedly:
}