8×8点阵数字滚动显示

合集下载

滚动显示“verilog”字符串程序代码及相关说明

滚动显示“verilog”字符串程序代码及相关说明

实验报告一、 实验题目8*8点阵显示设计二、 题目要求用8*8点阵滚动显示一组字符串本题中,设计使用8*8点阵循环滚动显示VerilogHDL字符串。

三、 设计思路显示效果:字符串VerilogHDL向左以一速度移动,每次移动一步。

显示原理:首先应该实现一个字符的静态显示任务。

由于人的视觉暂留效应,只要图像的变化速率大于25帧每秒,人所看到的图像就是一副运动的景象。

由于显示一个字符就是需要控制每一个像素——每一个LED点的亮灭来组合形成整个一副图像,所以为了达到静态显示的目的,必须先使得显示每个点的时间小于(1 / 64) * ( 1 / 25)S,既一帧中每个点的暂留时间。

由于一次可对一行或者一列赋值(控制),所以时间上只需每次刷屏时间小于1 / 25 s 、每行属性显示的时间小于( 1 / 8 ) * ( 1 /25 ) s。

为了达到字符运动的效果,需要在每一帧画面的时间( 1 / 25 ) s 里改变一次需要显示的屏幕的内容即可。

如图一,\图一、显示字样图示首先,L7=1(置高),L5—L0都置低,行信号为:H=8’h00,此步骤显示第一列LED。

按照这个方法,分别:L6=1,H=8’H40;显示第二列LEDL5=1,H=8’H78;显示第三列LED… …L0=1,H=8’H40;显示第八列LED每条语句持续时间小于( 1 / 8 ) * ( 1 /25 ) s;如此构成第一幅图像。

接下来使数据向左移动,只需重复上述步骤,唯一不同的是以前的L7的那一列数据不再是H=8’h00,而是H=8’H40;L6的数据H=8’H78变成同理,依次向后移动一位。

这样一个移动后,又显示了一屏。

之后就按照这个规律对后来的数据进行如此操作,形成连续的可移动的图像了。

程序流程图参考如下:如图,按照图二、图三所示的程序流程图即可达到显示一个向左流动的字符运动效果。

图二、程序流程图图三、任务display的流程图系统设计循环移动字符串的各字符编码如下(使用PCtoLCD2002取字模软件)V:00H 40H 78H 04H 02H 04H 78H 40He: 00H 3CH 52H 92H 92H 52H 34H 00Hr: 00H 00H 80H FEH 10H 20H 40H 40Hi: 00H 00H 00H 20H BFH 02H 00H 00Hl: 00H 00H 00H 7EH 02H 02H 00H 00Ho: 00H 3CH 42H 42H 42H 3CH 00H 00Hg: 00H 00H 64H 92H 92H 6CH 00H 00HH: 00H FEH 10H 10H 10H 10H FEH 00HD: 00H 7EH 42H 42H 42H 3CH 00H 00HL: 00H 00H 7EH 02H 02H 02H 02H 00h结构框图如下:图四、系统框图四、 实验总结本实验作为一个显示系统还存在很多问题,还不具备数据更新、方向调节、颜色控制等功能,只是简单的使用了任务、寄存器来实现一个字符串的循环滚动功能,但是时序的思想将会在以后的设计中作为主要的指导思想。

8×8LED点阵屏仿电梯数字滚动显示

8×8LED点阵屏仿电梯数字滚动显示

8×8LED点阵屏仿电梯数字滚动显示摘要:伴随着我国现代化程度的提高,电梯成为高层建筑中的重要交通工具,它是高层建筑中安全、可靠、垂直上下的运载工具,对改善劳动条件、减轻劳动强度起到很大的作用。

同时也给人们的生活带来了便利,为我国现代化建设的加速发展提供了强大的保障。

电梯的应用范围很广,可用于宾馆、饭店、办公大楼、商场、娱乐场所,仓库以及居民住宅大楼等。

因此,在现代社会中电梯已成为人类必不可少的垂直运输交通工具。

利用单片机控制电梯有成本低,通用性强,灵活性大以及易于实现复杂控制等优点。

基于单片机的电梯智能控制系统的设计分别从系统要求、硬件设计、软件设计等几个部分设计,介绍了以AT89C51系列单片机为核心,并结合74LS245和LED等芯片以及与之相配套的汇编语言软件等进行电梯模拟的具体实现方法,该方法不仅可以实现电梯的基本功能,而且可以设置电梯直达、急停、停电检修等功能,从而可实现电梯的智能控制及相应的最佳路线选择,提高电梯的有效利用率。

关键词:单片机;电梯;系统;控制目录1. 课题设计内容 (3)2. 硬件电路中器件选择 (3)3. 硬件设计 (8)3.1 控制模块 (9)3.2按键模块 (10)3.3 LED显示模块 (11)3.4 电源电路 (12)4. 软件设计 (11)4.1 主程序模块 (12)4.2 判断子程序 (13)5. 结束语 (14)参考文献 (15)附录 (16)程序清单 (16)1.课题设计内容本课题的主要任务是完成一个电梯系统的智能控制模块,即根据每个楼层不同顾客的按键要求,让电梯做出合理的判断,正确高效的指导电梯完成各项载客任务。

设计基于单片机的电梯智能控制系统的硬件电路与软件程序,给出硬件系统的电路原理图,对硬件电路与软件分别进行调试,得到调试成功的基于单片机的电梯智能控制系统。

根据此任务,本课题需要研究的内容有:1、根据系统的技术要求,进行系统硬件的总体方案设计;2、学习单片机的相关知识,并且加以运用;3、选择适当的芯片,并对其内部协议有所掌握,便于应用。

51单片机8X8点阵滚动显示 - C51源代码

51单片机8X8点阵滚动显示 - C51源代码

51单片机8X8点阵滚动显示- C51源代码51单片机8X8点阵滚动显示- C51源代码/*--------------------------------------------------------------*///LED8*8滚动显示//列扫描,低电平有效/*--------------------------------------------------------------*///包含头文件#include <reg52.h>#include "74HC595.H"/*--------------------------------------------------------------*///全局变量定义unsigned char i;unsigned int m,n;/*--------------------------------------------------------------*///代码库#define num sizeof(table) //代码长度unsigned char codeaa[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; unsigned char code table[]= {//取模方式阴码列扫描逆向0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",0*/0x00,0x7F,0x7F,0x39,0x6F,0x46,0x00,0x00,/*"R",1 */0x00,0x41,0x7F,0x7F,0x41,0x00,0x00,0x00,/*"I",2 */0x00,0x3E,0x7F,0x41,0x63,0x22,0x00,0x00,/*"C",3 */0x00,0x7F,0x7F,0x08,0x7F,0x7F,0x00,0x00,/*"H",4 */0x00,0x7F,0x7F,0x06,0x7F,0x7F,0x00,0x00,/*"M",5 */0x00,0x3E,0x7F,0x41,0x63,0x22,0x00,0x00,/*"C",6 */0x00,0x3F,0x7F,0x40,0x7F,0x3F,0x00,0x00,/*"U",7 */0x00,0x36,0x7F,0x49,0x7F,0x36,0x00,0x00,/*"8",9 */0x00,0x63,0x7F,0x1C,0x7F,0x63,0x00,0x00,/*"X",1 0*/1*/0x00,0x01,0x7F,0x7F,0x01,0x01,0x00,0x00,/*"T",1 3*/0x00,0x7F,0x7F,0x49,0x49,0x41,0x00,0x00,/*"E",1 4*/0x00,0x26,0x6F,0x49,0x7B,0x32,0x00,0x00,/*"S",1 5*/0x00,0x01,0x7F,0x7F,0x01,0x01,0x00,0x00,/*"T",1 6*/0x00,0x7F,0x7F,0x39,0x6F,0x46,0x00,0x00,/*"R",1 8*/0x00,0x61,0x79,0x5D,0x4F,0x43,0x00,0x00,/*"Z",1 9*/0x00,0x08,0x08,0x08,0x08,0x08,0x00,0x00,/*"-",2 0*/0x00,0x62,0x73,0x59,0x4F,0x46,0x00,0x00,/*"2",2 1*/0x00,0x3E,0x7F,0x41,0x7F,0x3E,0x00,0x00,/*"0",2 2*/0x00,0x3E,0x7F,0x41,0x7F,0x3E,0x00,0x00,/*"0",2 3*/4*/0x00,0x7F,0x7F,0x41,0x7F,0x3E,0x00,0x00,/*"D",2 6*/0x00,0x7F,0x7F,0x49,0x49,0x41,0x00,0x00,/*"E",2 7*/0x00,0x7F,0x7F,0x06,0x7F,0x7F,0x00,0x00,/*"M",2 8*/0x00,0x7F,0x7F,0x41,0x7F,0x7F,0x00,0x00,/*"O",2 9*/0x00,0x26,0x6F,0x49,0x7B,0x32,0x00,0x00,/*"S",3 1*/0x03,0x07,0x7C,0x7C,0x07,0x03,0x00,0x00,/*"Y",3 2*/0x00,0x26,0x6F,0x49,0x7B,0x32,0x00,0x00,/*"S",3 3*/0x00,0x01,0x7F,0x7F,0x01,0x01,0x00,0x00,/*"T",3 4*/0x00,0x7F,0x7F,0x49,0x49,0x41,0x00,0x00,/*"E",3 5*/0x00,0x7F,0x7F,0x06,0x7F,0x7F,0x00,0x00,/*"M",3 6*/0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",37*/};/*--------------------------------------------------------------*///显示函数void Display(void){Ser_IN((aa[i])); //列扫描数据Ser_IN(table[i + n]); //查表取出行扫描数据Par_OUT(); //输出显示i++; if(i == 8) i = 0; //循环扫描m++; if(m == 500) {m = 0; n++;} //滚动速度控制if(n == num-7) n = 0; //循环显示}/*--------------------------------------------------------------*///定时器初始化void T0_init(void){TMOD = 0xf8;TH0 = 0xcc; //5000usTL0 = 0x00;IE = 0x82;TR0 = 1;}/*--------------------------------------------------------------*///定时器中断服务void T0_intservice(void) interrupt 1 using 0 {TH0 = 0xf8;TL0 = 0xcc;Display();}/*--------------------------------------------------------------*///主函数void main (void){T0_init();while(1);}74HC595.H//Note: 74HC595驱动// __ __//Note: MR 主复位接电源正极, OE 使能端,输出有效接电源负极/*--------------------------------------------* /#ifndef __74HC595_H__#define __74HC595_H__/*--------------------------------------------* /sbit SD = P1^4; //串行数据输入sbit ST_CK = P1^5; //存储寄存器时钟输入sbit SH_CK = P1^6; //移位寄存器时钟输入/*--------------------------------------------*///数码管断码和位码的定义//unsigned char codeseg[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0x00,0x ff};//0 1 2 3 4 5 6 7 8 9 a b c d e f 8 无//unsigned char codepos[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};//1 2 3 4 5 6 7 8/*--------------------------------------------* ///函数声明void Ser_IN(unsigned char Data); //串行数据输入void Par_OUT(void); //串行数据输出//void Ser_Par(unsigned char Data); //串行输入,并行输出/*--------------------------------------------* ///串行数据输入void Ser_IN(unsigned char Data)unsigned char i;for(i = 0; i < 8; i++){SH_CK = 0; //CLOCK_MAX=100MHzSD = Data & 0x80;Data <<= 1;SH_CK = 1;}}/*--------------------------------------------* ///并行数据输出void Par_OUT(void){ST_CK = 0;ST_CK = 1;}/*--------------------------------------------* ///串行输入,并行输出/*void Ser_Par(unsigned char Data){Ser_IN(Data);Par_OUT();}*//*--------------------------------------------* /#endif网站统计Powered by Tiki Wiki CMS Groupware | Theme: Fivealive - Lemon。

期中测试-8×8点阵LED显示

期中测试-8×8点阵LED显示

参数
备注 单片机
8*8LED点阵
双向三态总 线驱动门
ncusc hy
1
单片机原理及应用
要求:
在 Proteus ISIS 中画出此应用电路(可以忽略复位电路和时钟电路)。ISIS 设计文件命 名格式为:“学号-QZ.DSN”,如 8000XXXXXX-QZ.DSN。(注意:中间的连接符采用半角的 减号)
U2
2 3 4 5 6 7 8 9
A0 A1 A2 A3 A4 A5 A6 A7
B0 B1 B2 B3 B4 B5 B6 B7
18 R0 17 R1 16 R2 15 R3 14 R4 13 R5 12 R6 11 R7
19 1
CE AB/BA
74LS245
C[0..7] C7 C6 C5 C4 C3 C2 C1 C0
PSEN ALE EA
1 2 3 4 5 6 7 8
P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7
AT89C51
P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7
P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15
元件名 AT89C51
MATRIX-8x8-GREEN
74LS245
元件清单 所 在 大类、小类 Microprocessor ICs 8051 Family Optoelectronics Dot Matrix Displays TTL 74LS Series Transceivers
预备:

8×8点阵数字滚动显示

8×8点阵数字滚动显示

项目一8×8点阵数字滚动显示LED点阵的元件符号及内部结构图:对应编码:00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H ;NULL00H, 00H, 3EH, 41H, 41H, 41H, 3EH, 00H ; 000H, 00H, 00H, 00H, 21H, 7FH, 01H, 00H ; 100H, 00H, 27H, 45H, 45H, 45H, 39H, 00H ; 200H, 00H, 22H, 49H, 49H, 49H, 36H, 00H ; 300H, 00H, 0CH, 14H, 24H, 7FH, 04H, 00H ; 400H, 00H, 72H, 51H, 51H, 51H, 4EH, 00H ; 500H, 00H, 3EH, 49H, 49H, 49H, 26H, 00H ; 600H, 00H, 40H, 40H, 40H, 4FH, 70H, 00H ; 700H, 00H, 36H, 49H, 49H, 49H, 36H, 00H ; 800H, 00H, 32H, 49H, 49H, 49H, 3EH, 00H ; 900H, 00H, 00H, 00H, 00H, 00H, 00H, 00H ;NULL硬件设计原理:单片机利用外部晶振作为时钟信号输入,RST端口接入上电复位信号使它加电后自动进行复位操作。

将要显示的字符码表编入单片机的程序中,由单片机控制时序输出相应的扫描数据和字符数据。

行码数据由单片机P0口输出,经一个双向总线收发器控制传输方向后进入LED点阵,点亮相应的发光二极管。

列码扫描信号由P3口输出后,直接输入LED点阵控制8列的扫描,每列选通时间为5ms,看上去就像8列同时显示的效果一样。

加上行中相应的LED灯被点亮,就能看到显示的字符了。

三、源程序代码:R_CNT EQU 31H ;列码R_NCT=31H单元NUMB EQU 32H ;行码NUMB=32H单元TCOUNT EQU 33H;拉幕计数值TCOUNT=33H单元ORG 00H ;程序起始地址LJMP STARTORG 0BH;中断入口地址LJMP INT_T0ORG 30H;子程序入口地址START:;主程序开始MOV R0, #00H ;每列的行码起始序号置0MOV R_CNT,#00H;列:初值00送到31H单元MOV NUMB,#00H;行:初值00送到32H单元MOV TCOUNT,#00H;计数单元初值置0MOV TMOD, #01H;计数定时器选用16位的计数器,工作在方式1MOV TH0, #(65536—5000)/256;定时5ms。

点阵显示汉字滚动图解

点阵显示汉字滚动图解

点阵的汉字滚动实现其实很简单,用一句话概括就是:一边在行(列)上进行扫描,一遍循环依次取出显示代码输入到列(行)上。

以我们板上载有的8×8点阵为例,当要实现2个汉字的滚动时,我们把整个滚动的过程拆开,会发现每一次完整的滚动,点阵要显示2×8=16个状态。

我们可以把两个汉字的行(或列)扫描代码通过字模提取软件提出后保存在数组里,然后顺序循环的去取数组里的数据放到行(或列)上就可。

我们用图示来解析一下整个过程。

我们假设要显示两个汉字”人”和”天”的左右滚动。

首先我们假设在行和列的输入数据中,1代表亮,0代表灭。

数组code里保存好从字模软件中按行提取出来的扫描码,假设code[15]=A0,A1,A2,A3,A4,A5,A6,A7,B0,B1,B2,B3,B4,B5,B6,B7(A代表“人”字的列扫描码,B代表“天”字的列扫描码)思路是这样的:第1个时段T1:(完整的汉字“天”)时刻t0,R=0000_0001,L=A0,R0那一列显示;、时刻t1,R=0000_0010,L=A1,R1那一列显示;时刻t2,R=0000_0100,;L=A2,R2那一列显示;…….时刻t7,R=1000_0000,;L=A7,R7那一列显示;然后又回到时刻t0的扫描状态,循环扫描。

只要在这个T1时间段内按这样扫描的话,就形成了A0—A7所代表的数据,即汉字“人”第2个时段T2:(开始滚入“天”字)时刻t0,R=0000_0001,L=A1,R0那一列显示;、时刻t1,R=0000_0010,L=A2,R1那一列显示;时刻t2,R=0000_0100,L=A3,R2那一列显示;…….时刻t7,R=1000_0000,L=B0,R7那一列显示;“天”字第1列然后又回到时刻t0的扫描状态,循环扫描。

只要在这个T2时间段内按这样扫描的话,就形成了A1—A7和B0所代表的数据,如下图:第3个时段T3:时刻t0,R=0000_0001,L=A2,R0那一列显示;、时刻t1,R=0000_0010,L=A3,R1那一列显示;时刻t2,R=0000_0100,;L=A4,R2那一列显示;…….时刻t6,R=1000_0000,L=B0,R6那一列显示;“天”字第1列时刻t7,R=1000_0000,L=B1,R7那一列显示;“天”字第2列然后又回到时刻t0的扫描状态,循环扫描。

以单片机为核心的8×8LED点阵动态显示设计

以单片机为核心的8×8LED点阵动态显示设计

以单片机为核心的8×8LED点阵动态显示设计
 LED 电子显示屏具有投影仪器、液晶显示屏无法比拟的优点:高亮度、功耗小、工作电压低、寿命长、稳定和耐冲击等优点。

 本文所提出的即为一种基于AT89C51 系列单片机的8&TImes;8 LED点阵动态显示的设计原理。

1 8&TImes;8 LED 点阵电路及显示原理
1.1 单片机及其主控接口简介
 本文采用的AT89C51 系列单片机是8 位机,是一款很有代表性的经典单片机。

 P 口又称I /O 口,是单片机的输入输出口,其中共有4 组(P0-P3),每组都有8 根管脚。

而这里我们要用到的只有两组,P1 口和P2 口。

 P1 口是一个双向的8 位I /O 口,其内部有一个上拉电阻。

51单片机8*8点阵LED显示原理及程序

51单片机8*8点阵LED显示原理及程序

51单片机8*8点阵LED显示原理及程序更多发布时间:2008年8月16日在8X8点阵LED上显示柱形,让其先从左到右平滑移动三次,其次从右到左平滑移动三次,再次从上到下平滑移动三次,最后从下到上平滑移动三次,如此循环下去。

1.程序设计内容8X8点阵LED工作原理说明:8X8点阵共需要64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一列置1电平,某一行置0电平,则相应的二极管就亮;因此要实现一根柱形的亮法,如图49所示,对应的一列为一根竖柱,或者对应的一行为一根横柱,因此实现柱的亮的方法如下所述:一根竖柱:对应的列置1,而行则采用扫描的方法来实现。

一根横柱:对应的行置0,而列则采用扫描的方法来实现。

2.硬件电路3.汇编源程序ORG 00HSTART: NOPMOV R3,#3LOP2: MOV R4,#8MOV R2,#0LOP1: MOV P1,#0FFHMOV DPTR,#TABAMOV A,R2MOVC A,@A+DPTR MOV P3,AINC R2LCALL DELAY DJNZ R4,LOP1 DJNZ R3,LOP2MOV R3,#3LOP4: MOV R4,#8 MOV R2,#7LOP3: MOV P1,#0FFH MOV DPTR,#TABA MOV A,R2MOVC A,@A+DPTR MOV P3,ADEC R2LCALL DELAY DJNZ R4,LOP3 DJNZ R3,LOP4MOV R3,#3LOP6: MOV R4,#8 MOV R2,#0LOP5: MOV P3,#00H MOV DPTR,#TABB MOV A,R2MOVC A,@A+DPTR MOV P1,AINC R2LCALL DELAY DJNZ R4,LOP5 DJNZ R3,LOP6 MOV R3,#3LOP8: MOV R4,#8 MOV R2,#7LOP7: MOV P3,#00H MOV DPTR,#TABB MOV A,R2MOVC A,@A+DPTR MOV P1,ADEC R2LCALL DELAYDJNZ R4,LOP7DJNZ R3,LOP8LJMP STARTDELAY: MOV R5,#10D2: MOV R6,#20D1: MOV R7,#248DJNZ R7,$DJNZ R6,D1DJNZ R5,D2RETTABA: DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH TABB: DB 01H,02H,04H,08H,10H,20H,40H,80HEND4.C51语言源程序#include <AT89X52.H>unsigned CHAR code taba[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; unsigned CHAR code tabb[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};void DELAY(void){unsigned CHAR i,j;for(i=10;i>0;i--)for(j=248;j>0;j--);}void DELAY1(void){unsigned CHAR i,j,k;for(k=10;k>0;k--)for(i=20;i>0;i--)for(j=248;j>0;j--);}void main(void){unsigned CHAR i,j;while(1){for(j=0;j<3;j++)//FROM left to right 3 time {for(i=0;i<8;i++){P3=taba[i];P1=0xff;DELAY1();}}for(j=0;j<3;j++)//FROM right to left 3 time{for(i=0;i<8;i++){P3=taba[7-i];P1=0xff;DELAY1();}}for(j=0;j<3;j++)//FROM top to bottom 3 time {for(i=0;i<8;i++){P3=0x00;P1=tabb[7-i];DELAY1();}}for(j=0;j<3;j++)//FROM bottom to top 3 time {for(i=0;i<8;i++){P3=0x00;P1=tabb[i];DELAY1();}}}}。

8×8LED点阵屏显示数字(韩余)详解

8×8LED点阵屏显示数字(韩余)详解

目录1 设计目的 (1)1.1设计目的 (1)1.2设计内容和要求 (1)1.3设计思路 (1)2 设计原理分析 (2)2.1定时器控制8×8LED点阵屏显示数字系统设计 (2)2.2定时器控制8×8LED点阵屏显示数字系统的功能要求 (2)2.2.1计时显示 (2)2.2.2中断设置 (2)2.38×8LED点阵屏显示数字系统的基本构成及原理 (2)3 系统硬件电路的设计 (3)3.1系统硬件总电路构成及原理 (3)3.2主控制部分――AT89C51单片机简介 (3)3.2.1 AT89C51的内部结构功能 (4)3.2.2 51单片机的串行接口工作方式 (5)3.3其它器件 (6)3.4定时器控制8×8LED点阵屏显示数字系统原理图 (7)3.5设计的连线图: (8)3.5.1单片机实物图: (8)3.6硬件资源及其分配 (8)3.7运行步骤 (8)3.8检测与调试 (9)3.8.1硬件调试: (9)3.8.2软件调试: (10)4 系统软件程序的简单设计 (11)4.1程序框图 (11)4.2程序流程图及程序 (12)4.2.1程序流程图: (12)4.2.2程序清单: (12)4.2.3仿真结果图: (14)结论 (15)参考文献 (16)1 设计目的1.1设计目的1、通过单片机课程设计,熟练掌握C语言的编程方法,将理论联系到实践中去,提高我们的动脑和动手的能力。

2、通过8×8LED点阵屏显示数字系统的设计,掌握数码管的使用方法,和简单程序的编写,最终提高我们的逻辑抽象能力。

1.2设计内容和要求内容:设计一个8×8LED点阵屏显示数字。

要求:利用单片机的中断系统,令8×8LED点阵屏循环显示数字0—9。

1.3 设计思路1.先熟悉实验原理,了解8×8LED点阵屏显示数字的工作过程,以及所需要的组件。

2.通过单片机的各个引脚的输出控制8×8LED点阵屏显示数字。

LED点阵显示仿真由浅入深之8X8,16X16,24X24LED点阵流动显示

LED点阵显示仿真由浅入深之8X8,16X16,24X24LED点阵流动显示

一直以来,对LED点阵显示很感兴趣,特别是流动点阵显示。

论坛里有不少例子,可是在我的电脑上大多无法正常运行。

有的一运行就S机,能运行的,也是字符不清。

于是,自己动手。

先试作了8X8点阵。

8X8的点太少,只适合数字显示,从0 ~9流动,效果还不错。

有了8X8的经验,对流动显示的原理已经了解,又试了16X16的,觉得也不难。

但16X16的点仍嫌少了,又做了个24X24的,汉字漂亮。

动画可能效果差些,软件运行显示效果好多了。

一、8X8初学点阵仿真,常点不亮LED 。

首先,可能是点阵的极性没有正确的接线。

下面的简单方法可判断点阵的逻辑引脚。

运行proteus,在编辑区里放上一个8X8LED,如MA TRIX-8x8-GREEN。

在某些引脚上接上电源和地,试试能不能点亮。

8X8默认是上下引脚,按习惯接法,上面接电源,下面接地,不亮(图左)。

用左下角垂直翻转工具,垂直翻转,再接上电源和地,就可以点亮了(图右)。

如果是做左移显示,可再左旋90°这里可看到,左边引脚是行控制,右边引脚是列控制。

然后就可以画线路图了,点阵就保持上面那个方向。

由于点阵引线较多,特别是以后做24X24点阵,所以布线方式不用连线,而用终端加上网络标号,这样可以使画面简洁明了。

连续标号的快捷画法,我以前有帖子介绍过。

这里还是再啰嗦一下。

proteus有一个很好用的PA T(Property Assignment Tool),即属性分配工具。

可以用来做快捷标注,当然还可以用作其它操作。

再连上其它接线,一个线路图很快就可以作好。

下面,就可以写程序的源文件了。

点击菜单\Source,下拉菜单第一条Add/Remove Source Files,按键New,在跳出的对话框里写上新文件名,如8X8.asm,打开。

提示这个文件不存在,要创建吗?是。

然后点Code Gereration tool小箭头,选ASM51 ,点OK。

然后,菜单\Source,看到多了个8X8.asm,点击,出现proteus自带的汇编编辑器,就可以在里面写代码了。

任务一 8×8点阵模块显示数字

任务一  8×8点阵模块显示数字

项目实施
•1.硬件电路连接:按照硬件电路接线图连线,选择所需的模块并进行布局, 然后将电源模块、主机模块和显示模块LED点阵用导线进行连接。 •2.打开KEIL软件,通过菜单“项目/新建项目”,新建立一个工程项目3216DZ1 ,然后再建一个文件名为3216DZ1.C的源程序文件,将上面的参考程序输入并保 存,同时将该文件添加到项目中。需要注意的是:数字1的字模需要用取模软件 建立图像得出,这里不再详细说明。 •3.对源程序进行编译和链接,如果有错误则必须修改错误,直到编译成功, 设置生成目标代码。 •4.将目标代码通过编程器写入到单片机中。 •5.接通电源,让单片机运行,观察点阵的显示是否正常。
第2帧
0 0 0 0 0 1 0 0 1 1 1 1 0 1 1 1
第3帧
0 0 0 0 0 0 1 0 1 1 1 1 0 1 1 1
第4帧
0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1
第5帧
第6帧
第7帧
第8帧
(3)取模软件的使用(zimo221)


ቤተ መጻሕፍቲ ባይዱ

(4)LED点阵硬件驱动程序
项目四
LED点阵屏广告牌制作
任务一
8×8点阵模块显示数字
任务一 8×8点阵模块显示数字
任务要求
任务分析
硬件电路的 设计与搭建
软件编写
任务实施
任务书:
• 使用YL-236单片机实训考核 装置显示模块中的LED点阵显 示屏单元中最左上角的一个 8X8点阵模块显示数字1,显 示效果如左图所示。
任务分析
(2)LED点阵字符显示原理
1 0 0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 1 0 0 1 1 1 0 1 0 0 0 0 0 0 1 1 1 1 0 1 1 1 0 0 1 0 0 0 0 0 1 1 1 1 0 1 1 1 0 0 0 1 0 0 0 0

8x8点阵循环显示数字0-9

8x8点阵循环显示数字0-9
/*显示字母C当做温度符号位*/
write_com(0xca);
write_data(0x43);
}
/********************************************
1602写.读及初始化
********************************************/
{
display_xianshi1();
delay(5);
js4=0;//标志位清零,以便下次判断
}
}
void display_shezhi()
{
uchar num,num1;
write_com(0x8b);//第一行的个位
write_com(0x0b);//显示光标,光标闪烁
if(add==0)//是否按加一按键
lcden=1;
delay_1ms(5);
lcden=0;
}
void init_1602()//1602初始化函数
{
write_com(0x38);//设置16X2显示,5X7点阵,8位数据端口
write_com(0x06);//写一个字符后,地址加一
write_com(0x0c);//设置开显示,不显示光标
void write_data(uchar date); //1602写数据函数
void init_1602();//1602初始化函数
void delay(uint t)//1us延时
{
while(t--);
}
void delay_1ms(uint z)
{
uint x,y;
for(x=z;x>0;x--)
void write_com(uchar com)//1602写函数

8x8LED点阵屏仿电梯数字滚动显示说明书

8x8LED点阵屏仿电梯数字滚动显示说明书

湄洲湾职业技术学院8*8LED点阵屏仿电梯数字滚动显示说明书系部:自动化工程系年级: 10 级专业:电气自动化应用技术姓名:郑沁杰学号: 1001020205导师姓名:郑德山职称:副教授2013 年 05 月 26 日目录1.前言 (1)2.系统设计技术参数要求 (2)3.系统设计 (3)3.1 系统设计总框图 (3)3.2 各模块原理说明 (4)3.3系统原理说明 (5)3.4 系统操作说明 (5)3.5系统操作注意事项 (6)4.参考文献 (7)5. 致谢词 (8)6.附录 (9)6.1元件清单 (9)6.2系统原理图 (10)6.3 PCB原理设计 (11)6.4 系统程序 (11)1.前言LED市场比较好,但是现在市场竞争也比较激烈,和做其他产品差不多。

LED显示屏显示画面色彩鲜艳,立体感强,静如油画,动如电影,广泛应用于车站、码头、机场、商场、医院、宾馆、银行、证券市场、建筑市场、拍卖行、工业企业管理和其它公共场所。

在实际应用中的显示屏由于成本和可靠性的因素常采用一种称为动态扫描的显示方法。

本文设计的是一个用8x8的点阵LED图文显示屏,图形或文字显示有静止、移入移出显示方式。

LED点阵显示屏作为一种新兴的显示器件,是由多个独立的LED发光二极管封装而成. LED点阵显示屏可以显示数字或符号, 通常用来显示时间、速度、系统状态等。

文章给出了一种基于MCS-51单片机的8×8 点阵LED显示屏的设计方案。

包括系统具体的硬件设计方案,软件流程图和部分汇编语言程序等方面。

在负载范围内, 只需通过简单的级联就可以对显示屏进行扩展,是一种成本低廉的图文显示方案。

它用高亮度发光二极管芯阵列组合后,环氧树脂与塑模封装而成。

具有高亮度,功耗低,引脚少,视角大,寿命长,耐湿,耐冷热,耐腐蚀等特性,LED显示屏以突出的优势成为平板显示的主流产品之一。

LED这一显示产品使用在我们日常的生活中扮演者越来越重要的角色。

8×8LED点阵显示数字0到9

8×8LED点阵显示数字0到9

页脚内容1单片机技术课程设计说明书设计课题:8×8 点阵专业(系)电气学院班 级学生姓名指导老师目录1.课程设计目的 (4)2.课程设计题目和要求 (4)3.设计内容 (4)3.1系统功能的描述 (4)3.2系统硬件设计 (5)3.1.1 AT89S51芯片的介绍 (5)3.2.2 时钟电路的设计 (8)3.2.3 复位电路的设计 (8)3.2.4驱动电路的设计 (9)3.2.5 8×8LED点阵 (10)3.3系统软件设计 (11)3.3.1 计数器初值计算 (11)3.3.2 数字0到9点阵显示代码的形成 (11)页脚内容23.3.3 程序流程图 (13)3.2.4 源程序 (14)4.设计总结 (17)页脚内容3单片机课程设计报告1.课程设计目的(1)巩固和提高学过的基础知识和专业知识。

(2)提高运用所学的知识进行独立思考和综合分析、解决实际问题的能力。

(3)培养掌握正确的思维方法和利用软件和硬件解决实际问题的基本技能。

(4)增加对单片机的认识,加深对单片机理论方面的理解。

(5)掌握单片机的内部功能模块的应用,如定时器/计数器、中断、片内外存贮器、I/O口、串行口通讯等。

(6)熟练掌握汇编语言的编程方法,将理论联系到实践中去,提高我们的动脑和动手的能力。

2.课程设计题目和要求(1)课程设计题目:单片机控制的跑马灯设计(2)要求:利用8×8LED点阵显示数字0到93.设计内容3.1系统功能的描述用单片机控制8×8LED点阵滚动显示数字0到9,利用硬件与软件相结合的方法,通过单片机将数字的代码分别送到相应的列线上面,经过软件编程使二极管从0到9依次显示数字,如此循环。

页脚内容4单片机课程设计报告3.2 系统硬件设计图1 系统框图显示的硬件方式采用以AT89S51单片机为核心的电路来实现,主要由AT89S51芯片、时钟电路、复位电路、驱动电路、8×8LED点阵5部分组成,系统框图如图1所示。

2、8-8-点阵汉字滚动显示

2、8-8-点阵汉字滚动显示

VHDL/EDA实习报告设计题目:基于FPGA的8*8点阵汉字滚动显示目录FPGA设计的特点 (2)设计任务与要求 (3)设计原理 (3)LED点阵原理 (3)汉字的存储 (5)字符样式设计 (7)开发环境介绍 (13)FPGA设计的特点FPGA 通常被认为是ASIC 实现的一种替代手段. 一般ASIC 包括三种, 既全定制、半定制(含标准单元和门阵列) 以及可编程器件。

对于前两种, 需要支付不可重复使用的工程费用NRE (Non recurring Engineering) , 主要用于芯片的流片、中测、分析的工程开销, 一次费用一般在 1 万至数万美元以上。

如果一次不成功、返工、甚至多次返工,NRE 费用将要上升。

成本高、风险大, 而通常对每个ASIC 品种的需求量往往不大,NRE 费用分摊到每个产品上价太高, 用户无法接受。

而对于可编程器件PLD (Programmable Logic Device) 正是可以解决上述问题的新型ASIC, PLD 以其操作灵活、使用方便、开发迅速、投资风险小等突出优点, 特别适合于产品开发初期、科研样品研制或小批量的产品. FPGA 是一种新型的PLD, 其除了具有PLD 的优点外, 其规模比一般的PLD 的规模大。

目前,Xilinx 推出的XC4025 可以达到25000 门的规模,Altera 公司的FLEX10K100 系列芯片可达到十万门的规模,完全可以满足用户的一般设计需要。

FPGA 的主要特点是: 寄存器数目多, 采用查找表计数,适合时序逻辑设计。

但是互连复杂, 由于互连采用开关矩阵,因而使得延时估计往往不十分准确。

FPGA 也有其自身的局限性, 其一就是器件规模的限制,其二就是单元延迟比较大。

所以, 在设计者选定某一FPGA器件后, 要求设计者对器件的结构、性能作深入的了解, 在体系结构设计时, 就必须考虑到器件本身的结构及性能, 尽可能使设计的结构满足器件本身的要求. 这样就增加了设计的难度。

51单片机88点阵LED显示的原理及程序

51单片机88点阵LED显示的原理及程序

51单片机8*8点阵LED显示原理及程序更多在8X8点阵LED上显示柱形,让其先从左到右平滑移动三次,其次从右到左平滑移动三次,再次从上到下平滑移动三次,最后从下到上平滑移动三次,如此循环下去。

1.程序设计内容8X8点阵LED工作原理说明:8X8点阵共需要64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一列置1电平,某一行置0电平,则相应的二极管就亮;因此要实现一根柱形的亮法,如图49所示,对应的一列为一根竖柱,或者对应的一行为一根横柱,因此实现柱的亮的方法如下所述:一根竖柱:对应的列置1,而行则采用扫描的方法来实现。

一根横柱:对应的行置0,而列则采用扫描的方法来实现。

2.硬件电路3.汇编源程序ORG 00HSTART: NOPMOV R3,#3LOP2: MOV R4,#8MOV R2,#0LOP1: MOV P1,#0FFHMOV DPTR,#TABAMOV A,R2MOVC A,@A+DPTR MOV P3,AINC R2LCALL DELAY DJNZ R4,LOP1 DJNZ R3,LOP2MOV R3,#3LOP4: MOV R4,#8 MOV R2,#7LOP3: MOV P1,#0FFH MOV DPTR,#TABA MOV A,R2MOVC A,@A+DPTR MOV P3,ADEC R2LCALL DELAY DJNZ R4,LOP3 DJNZ R3,LOP4MOV R3,#3LOP6: MOV R4,#8 MOV R2,#0LOP5: MOV P3,#00H MOV DPTR,#TABB MOV A,R2MOVC A,@A+DPTR MOV P1,AINC R2LCALL DELAY DJNZ R4,LOP5 DJNZ R3,LOP6 MOV R3,#3LOP8: MOV R4,#8 MOV R2,#7LOP7: MOV P3,#00H MOV DPTR,#TABB MOV A,R2MOVC A,@A+DPTR MOV P1,ADEC R2LCALL DELAYDJNZ R4,LOP7DJNZ R3,LOP8LJMP STARTDELAY: MOV R5,#10D2: MOV R6,#20D1: MOV R7,#248DJNZ R7,$DJNZ R6,D1DJNZ R5,D2RETTABA: DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH TABB: DB 01H,02H,04H,08H,10H,20H,40H,80HEND4.C51语言源程序#include <AT89X52.H>unsigned CHAR code taba[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; unsigned CHAR code tabb[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};void DELAY(void){unsigned CHAR i,j;for(i=10;i>0;i--)for(j=248;j>0;j--);}void DELAY1(void){unsigned CHAR i,j,k;for(k=10;k>0;k--)for(i=20;i>0;i--)for(j=248;j>0;j--);}void main(void){unsigned CHAR i,j;while(1){for(j=0;j<3;j++)//FROM left to right 3 time {for(i=0;i<8;i++){P3=taba[i];P1=0xff;DELAY1();}}for(j=0;j<3;j++)//FROM right to left 3 time{for(i=0;i<8;i++){P3=taba[7-i];P1=0xff;DELAY1();}}for(j=0;j<3;j++)//FROM top to bottom 3 time {for(i=0;i<8;i++){P3=0x00;P1=tabb[7-i];DELAY1();}}for(j=0;j<3;j++)//FROM bottom to top 3 time {for(i=0;i<8;i++){P3=0x00;P1=tabb[i];DELAY1();}}}}。

16.课件十六 8乘8 点阵字符显示器设计

16.课件十六  8乘8 点阵字符显示器设计
DB 0D7H,0B7H,00H,0F7H,0E3H,0D5H,0B6H,0F7H ;术
DB 00H,00H,00H,00H
END ;程序结束
MOV 31H,#01H ;换帧跳转步距为1
LJMP DISP1 ;转显示子程序DISP1
;左移显示功能程序
FUN2: LJMP DISP2 ;
;
;显示控制程序
DISP1: MOV B,#50H ;显示数据首址
MOV R4,30H ;放入1帧显示时间控制数据
MOV R5,31H ;放入跳转步距控制数据
DL1MS: MOV R3,#64H ;100*(10+2)us
LOOPK: LCALL KEYWORK
DJNZ R3,LOOPK
RET
;
;0.5毫秒延时子程序
DL512: MOV R2,#0FFH
LOOP1: DJNZ R2,LOOP1
RET
;
; 10毫秒延时子程序
DL10MS: MOV R3,#14H
CLR 02H ;
RET ;子程序返回
;按键2功能处理
KEY2: LCALL DL10MS ;
JB P1.1,KEYRET ;
SETB 01H ;置上移显示方式标志(20H.1=1)
CLR 00H ;
CLR 02H ;
RET ;
;按键3功能处理
KEY3: LCALL DL10MS ;
JB P1.2,KEYRET ;
DJNZR5,DISP22 ;左移显示32次控制
LJMP START1 ;跳回主程序
;
;左移显示控制子程序
DISPP: MOV B,#50H ;第一显示字符首址
MOV R4,#25H ;1帧显示时间控制
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

项目一8×8点阵数字滚动显示LED点阵的元件符号及内部结构图:对应编码:00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H ;NULL00H, 00H, 3EH, 41H, 41H, 41H, 3EH, 00H ; 000H, 00H, 00H, 00H, 21H, 7FH, 01H, 00H ; 100H, 00H, 27H, 45H, 45H, 45H, 39H, 00H ; 200H, 00H, 22H, 49H, 49H, 49H, 36H, 00H ; 300H, 00H, 0CH, 14H, 24H, 7FH, 04H, 00H ; 400H, 00H, 72H, 51H, 51H, 51H, 4EH, 00H ; 500H, 00H, 3EH, 49H, 49H, 49H, 26H, 00H ; 600H, 00H, 40H, 40H, 40H, 4FH, 70H, 00H ; 700H, 00H, 36H, 49H, 49H, 49H, 36H, 00H ; 800H, 00H, 32H, 49H, 49H, 49H, 3EH, 00H ; 900H, 00H, 00H, 00H, 00H, 00H, 00H, 00H ;NULL硬件设计原理:单片机利用外部晶振作为时钟信号输入,RST端口接入上电复位信号使它加电后自动进行复位操作。

将要显示的字符码表编入单片机的程序中,由单片机控制时序输出相应的扫描数据和字符数据。

行码数据由单片机P0口输出,经一个双向总线收发器控制传输方向后进入LED点阵,点亮相应的发光二极管。

列码扫描信号由P3口输出后,直接输入LED点阵控制8列的扫描,每列选通时间为5ms,看上去就像8列同时显示的效果一样。

加上行中相应的LED灯被点亮,就能看到显示的字符了。

三、源程序代码:R_CNT EQU 31H ;列码R_NCT=31H单元NUMB EQU 32H ;行码NUMB=32H单元TCOUNT EQU 33H;拉幕计数值TCOUNT=33H单元ORG 00H ;程序起始地址LJMP STARTORG 0BH;中断入口地址LJMP INT_T0ORG 30H;子程序入口地址START: ;主程序开始MOV R0, #00H ;每列的行码起始序号置0MOV R_CNT, #00H;列:初值00送到31H单元MOV NUMB, #00H;行:初值00送到32H单元MOV TCOUNT, #00H;计数单元初值置0MOV TMOD, #01H;计数定时器选用16位的计数器,工作在方式1MOV TH0, #(65536-5000)/256;定时5ms。

定时器高位初值为236MOV TL0, #(65536-5000) MOD 256;定时器低位初值为120SETB TR0 ;启动C/T的定时器T0MOV IE, #82H;CPU开中断SJMP $ ;中断等待I NT_T0:MOV TH0, #(65536-5000)/256 ;定时5ms,设置定时器T0高位初值为236MOV TL0, #(65536-5000)/256 ; 定时器T0低位初值为120MOV DPTR, #TAB;读列码表首地址,放入DPTRMOV A, R_CNT;读列码偏移地址,放入A中MOVC A, @A+DPTR ;基址变址寻址将寻到的列码数据放入A中MOV P3,A ;将列码数据送P3口输出MOV DPTR, #NUB;装入显示数据的地址MOV A, NUMB;显示幕次的偏移地址MOVC A, @A+DPTR;寻到数据的行码地址MOV P0, A ;将该地址值输出INC NUMB ;行码地址加1NEXT1:INC R_CNT ;扫描列码地址加1MOV A, R_CNT ;把列地址放入A中CJNE A, #8, NEXT2 ;A不等于8,转子程序NEXT2,否则往下执行MOV R_CNT, #00H ;就把列码置0MOV NUMB, R0 ;行码地址送存储单元格中NEXT2:INC TCOUNT ;拉幕计数序号加1MOV A, TCOUNT ;将幕次序号送A中CJNE A, #40, NEXT4;此序号不等于40转Next4,否则往下执行MOV TCOUNT, #00H ;把拉幕时序归0INC R0 ;行码起始地址加1CJNE R0, #88, NEXT3 ;行码自加次数不满11字符×8行/字符=88行就转Next3MOV R0, #00H ;不然就把行码置0NEXT3:MOV NUMB, R0 ;送新的一幕行码起始位给R0NEXT4:RETI;中断返回TAB: ;列码码表DB 0FEH, 0FDH, 0FBH, 0F7H, 0EFH, 0DFH, 0BFH, 7FH ;列扫描从右向左NUB:;行码码表,字符数据DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H ;NULLDB 00H, 00H, 3EH, 41H, 41H, 41H, 3EH, 00H ; 0DB 00H, 00H, 00H, 00H, 21H, 7FH, 01H, 00H ; 1DB 00H, 00H, 27H, 45H, 45H, 45H, 39H, 00H ; 2DB 00H, 00H, 22H, 49H, 49H, 49H, 36H, 00H ; 3DB 00H, 00H, 0CH, 14H, 24H, 7FH, 04H, 00H ; 4DB 00H, 00H, 72H, 51H, 51H, 51H, 4EH, 00H ; 5DB 00H, 00H, 3EH, 49H, 49H, 49H, 26H, 00H ; 6DB 00H, 00H, 40H, 40H, 40H, 4FH, 70H, 00H ; 7DB 00H, 00H, 36H, 49H, 49H, 49H, 36H, 00H ; 8DB 00H, 00H, 32H, 49H, 49H, 49H, 3EH, 00H ; 9DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H ;NULLEND ;结束汇编程序流图:项目一8×8点阵数字滚动显示一、设计要求本次设计采用单片机AT89C51驱动8×8点阵LED显示屏,轮流显示0~9的数字。

显示方式采用自左向左拉幕式显示。

二、硬件电路介绍1.AT89C51单片机:P0口:P0口为一个8位漏级开路双向I/O口。

当P1口的管脚第一次写1时,被定义为高阻输入。

P0口能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。

在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1口:P1口是一个内部提供上拉电阻的8位双向I/O口。

P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。

在FLASH编程和校验时,P1口作为第八位地址接收。

P2口:P2口为一个内部上拉电阻的8位双向I/O口,当P2口被写“1”时,其管脚被内部上拉电阻拉高,P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。

P3口:P3口管脚是8个带内部上拉电阻的双向I/O口。

当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。

作为输出,由于外部下拉为低电平,它将输出电流。

RST:复位输入。

当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

A T89C51单片机的外形及引脚排列说明如后页图示。

AT89C51单片机的外形及引脚排列如右图。

2. 74LS373芯片:当三态允许控制端OE 为低电平时,O0~O7 为正常逻辑状态,可用来驱动负载或总线。

当OE 为高电平时,O0~O7 呈高阻态,即不驱动总线,也不为总线的负载,但锁存器内部的逻辑操作不受影响。

当锁存允许端LE 为高电平时,O 随数据D 而变。

当LE 为低电平时,O 被锁存在已建立的数据电平.D0~D7 数据输入端OE 三态允许控制端(低电平有效)LE 锁存允许端O0~O7 输出端3. respack-8器件:排阻器件,起上拉电阻的作用。

4. 8×8LED点阵8×8LED点阵可作为信息输出器件。

它是由发光二极管阵列按8排8列的方式排列起来,由x和y引脚输入的电信号对其进行选通,使不同位置的二极管被点亮,相应地显示出文字或图案等信息来。

四、硬件设计仿真:五、设计调试过程及问题在PC机上运行Proteus软件,将电路原理图中的元件找出并相应地连接好线;在Keil汇编软件中输入设计的程序,编译通过后生成十六进制文件,并再把该文件下载到虚拟的AT89C51单片机内。

因为单片机的RST引脚经电容接到了Vcc电源上,同时并联接地,所以系统可以上电后自动执行一次复位操作。

问题一第一次连接硬件电路,由于没有接74LS373双向总线收发器,所以在LED点阵和单片机I/O口之间就直接连接了,结果LED显示屏无法显示单片机输出的结果,所有的LED 灯都不亮。

看来直接跳线时单片机I/O口输出的信号不足以驱动8乘8点阵工作。

当8051单片机的P0口输出八位低地址时,必须接入74LS373作地址锁存器。

问题二仿真时会看到LED点阵中有字显示的地方(前景)灯是灭的,无字显示的地方(背景)灯是亮的,这出现“阴文”显示状态。

产生这种显示的原因是因为8×8点阵LED引脚接反了,应该正端接P3,负端接P0。

即可看到正确的“阳文”方式显示出的数字。

问题三仿真时出现数字是反着的,产生这种显示的原因是因为点阵的列码扫描信号线A~H与单片机的P3.0~P3.7口相应的顺序接反了,把对应的接线顺序倒过来,才正确。

相关文档
最新文档