[0] = A_array[0] | m1;
}
}
}
向上连续移动6个汉字
前面的例子告诉我们,在16 X 16点阵屏上显示一个汉字,要占用32个字节的存储空间。光靠SRAM是显示不了几个字的,我们可以利用片上的EEPROM。下面的例子是利用EEPROM存储汉字点阵数据,连续显示六个汉字自下向上移动的程序。我们知道Atmega48具有片上256个字节的EEPROM空间,最多可以存储8个汉字的点阵,要想再多,就要换芯片了。
//16X16点阵屏,六字向上移动
//六个汉字点阵字模存在EEPROM中
#include
//六个汉字的数据存贮在EEPROM存储器中
//Arduino不具备向FLASH下载程序代码的同时写入EEPROM数据的功能,
//本程序所用EEPROM数据要借助其他工具写入。
void setup()
{
PORTB = 0x00; //初始化端口B,C,D功能为输出,端口状态为0
DDRB = 0xFF;
PORTC = 0x00;
DDRC = 0x0F;
PORTD = 0x00;
DDRD = 0xFF;
}
void loop()
{
unsigned char B_port[32]; //汉字点阵数组
int I;
int J;
int K;
int L;
for (K = 0;K < 3