📄 用8255与74ls154设计的16×16点阵屏.c
字号:
//-----------------------------------------------------------------
// 名称: 用8255与74LS154设计的16×16点阵屏
//-----------------------------------------------------------------
// 说明: 本例用8255扩展接口,发送4片8×8点阵屏的行编码,列码由4-16
// 译码器控制,实现了16×16点阵文字的显示.
//
//-----------------------------------------------------------------
#define F_CPU 2000000UL
#include <avr/io.h>
#include <avr/pgmspace.h>
#include <avr/interrupt.h>
#include <util/delay.h>
#define INT8U unsigned char
#define INT16U unsigned int
//PA,PB,PC端口及命令端口地址定义
//74LS154译码器开关
//存放在Flash内存中的汉字点阵数据
prog_uchar Word_Set_OF_16x16[] =
{
/*-- 上 --*/
0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0x60,0x60,0x60,0x60,0x60,0x60,0x00,0x00,
0x30,0x30,0x30,0x30,0x30,0x30,0x3F,0x3F,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x00,
/*-- 海 --*/
0x30,0x63,0x66,0x04,0x30,0xFC,0xFF,0x37,0x76,0xF6,0x36,0xF6,0xF6,0x06,0x00,0x00,
0x30,0x7E,0x0E,0x00,0x03,0x1F,0x1F,0x1B,0x1F,0x5F,0x7B,0x7F,0x3F,0x1B,0x03,0x00,
/*-- 大 --*/
0x00,0x30,0x30,0x30,0x30,0x30,0xFF,0xFF,0x30,0x30,0x30,0x30,0x30,0x30,0x00,0x00,
0x00,0x40,0x60,0x30,0x18,0x0E,0x07,0x03,0x06,0x0C,0x18,0x30,0x60,0x40,0x00,0x00,
/*-- 众 --*/
0x00,0x60,0x60,0x30,0xD8,0xCC,0x07,0x07,0x0C,0xD8,0xF0,0x20,0x60,0x60,0x00,0x00,
0x00,0x30,0x18,0x0C,0x07,0x0F,0x58,0x60,0x30,0x1F,0x0F,0x18,0x30,0x60,0x40,0x00,
/*-- 汽 --*/
0x00,0x22,0x66,0xCC,0x20,0xB8,0x9F,0xAF,0xAC,0xAC,0xAC,0xAC,0xAC,0x0C,0x00,0x00,
0x20,0x70,0x3C,0x06,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x3F,0x7F,0x60,0x30,0x00,
/*-- 车 --*/
0x00,0x0C,0x8C,0xEC,0xFC,0xBC,0x8F,0xEF,0xEC,0x8C,0x8C,0x8C,0x8C,0x0C,0x00,0x00,
0x00,0x18,0x19,0x19,0x19,0x19,0x19,0x7F,0x7F,0x19,0x19,0x19,0x19,0x18,0x00,0x00,
};
//当前待显示的汉字索引
//T0中断程序要使用主程序中不断变化的wIndex,因此前面必须添加volatile
volatile INT8U wIndex = 0xFF;
//待显示汉字总个数
INT8U Total_Words = sizeof(Word_Set_OF_16x16) / 32;
//-----------------------------------------------------------------
// 定时器0中断,以2ms的间隔动态显示每列数据
// 所显示的每列数据由8255并行输出
//-----------------------------------------------------------------
ISR (TIMER0_OVF_vect)
{
}
//-----------------------------------------------------------------
// 主程序
//-----------------------------------------------------------------
int main()
{
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -