单片机原理与接口技术LED显示屏单字滚动报告[推荐]由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“单片机原理与接口技术”。
单片机课程设计
LED 点 阵 单 字 滚 动
系别:
班级: 设计人: 指导老师:
2013年1月6日星期日 一.设计任务
本设计要使用新的开发箱,使用16*16点阵LED显示滚动的文字信息,类似于大家在商店门口看到的电子广告牌。新的开发箱使用的难度不大。
二. 设计目的1、学习点阵电路的控制方法
2、学习并行通信和串行通信的综合应用 三.设计内容
用行列扫描方式显示,滚动的汉字,类似于广告信息屏。
四、设计仪器
本实验采取一个74HC154和两个74HC595芯片和51单片机。了解两个芯片的原理,设计程序。连线:连接P1.0-P1.3到点阵显示A0-A3连接P1.5-SCK,P1.6-SI,P1.7-RCK。
五、实验理论介绍
1.对于74HC154译码器,它可接受4位高有效二进制地址输入,并提供16个互斥的低有效输出,将4个二进制编码输入译成16个彼此独
立的输出之一将数据从一个输入线分配到16个输出的任意一个。
用其控制列的选择,即A0~A3对应P1.0~P1.3。其功能类似于3-8译码器。对于74HC595,SI为数据线把它与上0x01发送到引脚上,连接到SCLK 是数据发送锁存,电平一拉高一拉低它就会接收一个引脚送来的数据,直到接收8位数据,电平一拉高一拉低RCLK就会向外发送8位数据,因为是16*16点阵所以需要两片74HC595芯片。
六、设计原理图与接线图
七、设计步骤
1、根据电路使用新开发箱连接电路;
2、打开电源总开关和模块开关;
3、使用Keil软件编写、调试实验程序;
4、使用STC_ISP软件下载程序,查看运行结果。八.程序设计思想
首先考虑怎样扫描行列的点阵,由资料了解了各个芯片的功能,其中的一个用来定义列的选择,由此定义了列函数。另一个定义行函数,由芯片功能写出行函数,定义主函数时,需要控制字符的显示形式和扫描的行列,从左到右滚动或是从右到左或欧式从上到下,或是从下到上,需要主函数来实现。主函数中主要的是怎么实现滚动,lie(i);hang(bi[i+j]),由此可以实现汉字的滚动。
九、设计程序 #include #define uchar unsigned char #define uint unsigned int
sbit Sclk=P1^5;sbit SI=P1^6;sbit Rclk=P1^7;//控制行 sbit A0=P1^0;sbit A1=P1^1;sbit A2=P1^2;sbit A3=P1^3;//控制列
void Hang(uint k);// 控制行的数据 void Lie(uchar i);// 控制列的数据 uchar i,j;uint
code bi[ ]={0x0002,0x0062,0x0384,0x0008,0x0FFC,0x8814,0x4024,0x3044,0x2084,0x0304,0x0C04,0x7204,0x211C, 0x00E0,0x0040,0x0000};uint
code sheng[]={0x0002,0x000C,0x7FF0,0x4884,0x4882,0x7FFC,0x0404,0x3884,0x0884,0x0884,0xFFFC,0x0884,0x0884, 0x0884,0x0004,0x0000};void delayms(unsigned int delay)//1ms延时函数 { unsigned int i,x;for(x=0;x
for(i=0;i
void main(void){ while(1){ for(j=0;j
控制点阵列扫 } for(j=0;j
{ Lie(i);Hang(sheng[i+j]);delayms(1);} } } } void Hang(uint k)//行函数的定义 { uchar i;for(i=0;i
k>>=1;//将发送的数据右移1位 } Rclk=0;Rclk=1;//锁存输出 } void Lie(uchar i)//l列函数的定义 { switch(i){ case 0:{A0=0;A1=0;A2=0;A3=0;}break;case 1:{A0=1;A1=0;A2=0;A3=0;}break;case 2:{A0=0;A1=1;A2=0;A3=0;}break;case 3:{ A0=1;A1=1;A2=0;A3=0;}break;case 4:{A0=0;A1=0;A2=1;A3=0;}break;case 5:{A0=1;A1=0;A2=1;A3=0;}break;case 6:{A0=0;A1=1;A2=1;A3=0;}break;case 7:{A0=1;A1=1;A2=1;A3=0;}break;case 8:{A0=0;A1=0;A2=0;A3=1;}break;case 9:{A0=1;A1=0;A2=0;A3=1;}break;case 10:{A0=0;A1=1;A2=0;A3=1;}break;case 11:{A0=1;A1=1;A2=0;A3=1;}break;case 12:{A0=0;A1=0;A2=1;A3=1;}break;case 13:{A0=1;A1=0;A2=1;A3=1;}break;case 14:{A0=0;A1=1;A2=1;A3=1;}break;
case 15:{A0=1;A1=1;A2=1;A3=1;}break;} } 十.设计结果
“必胜”两个字在LED点阵上从右到左循环显示。十一.设计感想及领悟
LED的单字滚动更接近现实生活,更贴近生活,更实用,通过在实验室的设计和不断尝试,对单片机的了解更深了。联系生活,实践能力,进一步加深了对单片机的喜爱和探索研究的热情。LED的实验在现实生活中应用领域很广,通过对设计任务的完成,理解了原理和方法。希望有机会多多接触这类设计任务。