文章目录
基于51单片机点阵汉字显示程序设计
一、实践目的
本次实践是用51单片机最小系统为核心,并使用4块8×8LED点阵组成的16×16LED点阵、2块74HC595位移寄存器芯片作为16×16LED点阵的行驱动、2块74HC138译码器芯片作为16×16LED点阵的列驱动、和8个独立按键组成的51单片机系统,实现汉字在LED点阵屏幕上进行多种功能的显示:实现静态显示、动态显示包括向上移动、向下移动、向左移动、向右移动、移动显示暂停与继续、移动加速和减速的功能。
二、实践依托的实验设备与软件
1、设备
51单片机、74HC595芯片、74HC138芯片、独立按键、LED点阵屏幕、程序下载器等。
2、软件
编写51单片机代码的软件:Keil uVision4、绘制原理图与PCB的软件:立创EDA、进行仿真的软件:Proteus 8 Professional。
二、 系统或装置的设计
1、 硬件原理图设计
原理图包括了51单片机、晶振电路、复位电路、USB电源接口电路、74HC595寄存器串口转并口芯片电路、74HC138译码器芯片电路、4个8×8LED点阵组成的16×16点阵汉字显示电路和独立按键电路组成。绘制的原理图如图2.1到图2.5所示。
图2.1:51单片机、晶振电路和复位电路组成51单片机最小系统
51单片机为整个系统的核心,控制着595芯片与138芯片驱动LED点阵汉字显示等功能。晶振电路为51单片机LED点阵汉字显示系统提供时钟信号。
图2.2:独立按键与USB电源接口电路
USB电源接口电路为系统提供电源,独立按键电路实现LED点阵汉字显示的模式切换功能。其具体功能是按键key1~key4分别控制LED点阵显示汉字的向上移动、向下移动、向左移动、向右移动。按键key5控制LED点阵显示汉字的暂停移动与继续移动。Key7、key8分别控制LED点阵屏显示汉字移动的速度。
图2.3:两块595芯片电路
74HC595寄存器串口转并口芯片电路驱动16×16点阵屏的行选,当其输出端口为高电平时,对应的LED点阵的行被选中。即LED点阵的行为高电平有效。
图2.4:两块138芯片电路
74HC138译码器芯片电路驱动16×16点阵屏的列选,当其输出端口低电平时,对应LED点阵的列被选中。即LED点阵的列为低电平有效。
图2.5:16×16LED点阵电路
16×16点阵是由四块8×8点阵电路组成的,16×16点阵汉字显示电路可以实现汉字的静态显示效果以及向上、向下、向左和向右动态滚动显示的效果。
2、印制板图绘制
根据绘制的原理图,先将其转换成PCB图,然后对其各个元器件进行合理的布局,然后用软件自动布线的功能进行布线操作。绘制的印制板图如图2.6所示
图2.6:51单片机LED点阵汉字显示系统PCB图
三、程序框架及主要算法流程图及描述
图2.7:程序的基本框架流程图
程序的基本框架是从主函数开始的,先进行相关变量的初始化操作,然后进行定时中断初始化的操作,打开51单片机的定时器对