可编程节日彩灯系统硬件课程设计实验报告 精品Word文件下载.docx
- 文档编号:20173249
- 上传时间:2023-01-17
- 格式:DOCX
- 页数:29
- 大小:1.02MB
可编程节日彩灯系统硬件课程设计实验报告 精品Word文件下载.docx
《可编程节日彩灯系统硬件课程设计实验报告 精品Word文件下载.docx》由会员分享,可在线阅读,更多相关《可编程节日彩灯系统硬件课程设计实验报告 精品Word文件下载.docx(29页珍藏版)》请在冰豆网上搜索。
1.3设计内容
在本实验中我们将用到可编程外围接口芯片8255、可编程键盘显示器接口芯片8279可编程定时器/计数器8253和74LS138简单接口芯片实现数码管的亮灭。
我们将设计出多种闪烁图案,以实现简单的数字及其他图案的显示。
该系统显示直观,工作稳定,操作简单,与商用LED显示具有类似的显示原理,具备较强的实用价值。
彩灯样式实现举例:
1、全8显示
2、B.2132
3、123456
4、三排横向图案
5、ABCDEFG
6、方形花样图案2
7、实现全灭
8、APPLE的显示
1.4设备器材
(1)PC微机一台
用于对程序的编译测试等,同时还需要对实验设备进行控制,提供整个程序的运行平台,并且收集和释放硬件信号,实现程序功能。
(2)微机原理实验箱一台
此设备能提供8253、8255、8259和数码管等必要芯片。
并且能通过接受PC机传来的信息,显示出相应的功能。
以支持LED规则显示的实现。
(3)导线若干条
用于电路和芯片之间的连接。
2总体方案与说明
2.1设计思想
8253器件:
8253具有计数和定时的功能。
通过8253器件实现定时脉冲,即每隔1秒钟赋予一个脉冲,用作定时装置。
8255器件:
8255用作辅助装置。
8255器件的A端口用于接收8253器件的定时脉冲,当每接收到一次脉冲时,彩灯变换一次图案。
8279器件:
8279用作控制彩灯的变化,使彩灯形成各种图案。
如,全8显示、脉冲波形显示、数字显示、全暗等各种图形显示。
2.2实验原理介绍
数码管的段选码由OUTA口和OUTB口输出,经74LS244驱动后送给共阴极LED。
数码管的位扫描信号经74LS138译码、75451驱动后提供给LED的公共极。
RL0~RL7提供了键盘列扫描接口,KA0~KA3提供键盘的行扫描接口。
2.2.1LED是共阴极的,其七段LED的段选码为
字符
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
段选码
3fh
06h
5bh
4fh
66h
6dh
7dh
07h
7fh
6fh
77h
7ch
39h
5eh
79h
71h
2.2.2LED显示的方法为动态显示
3硬件框图与说明
3.18279可编程键盘/显示接口芯片介绍
8279是可编程的键盘、显示接口芯片。
它既具有按键处理功能,又具有自动显示功能。
8279内部有键盘FIFO/传感器、双重功能的64BRAM,键盘控制部分可控制8*8=64个按键或控制8*8阵列方式的传感器。
该芯片能自动消除键抖动并具有双键锁定保护功能。
本次实验我们将利用8279的以上功能设计点阵广告屏。
首先介绍一下8279芯片:
DB0~DB7:
8位数据总线与系统数据总线相连,用CPU和8279间的数据/命令传送。
CS:
片选信号:
当CS=0时,8279被选中。
WR:
WR=0.控制8279写操作。
A0:
数据选择输入线:
当A=0,CPU读出为数据;
当A=1,CPU写入数据为命令字,读出数据为状态字。
BD:
消隐输出线,BD=0有效,在切换显示数据或使用消隐命令时,该信号将显示器熄灭。
CLK:
外部时钟信号输入线,8279通过内部定时器将该信号变为内部时钟,内部时钟频率的高低直接决定显示器的扫描时间,通常与编程设置为100Hz,此时,把每位显示数码管的选通的时间定为0.64ms,设定显示字符8位和16位时,显示扫描周期分为5.1ms和10.2ms.
OUTA0~OUTA3:
A组显示数据输出线。
OUTB0~OUTB3:
B组显示数据输出线。
两组数据输出线可独立使用,也可合并使用,合并使用时OUTA3为最高位,OUTB0为最低位。
SL0~SL3:
扫描输出线,有2种工作方式,即译码和编码输出,方式选择可通过编程设定。
RL0~RL7:
输入线,它们是键盘矩阵或传感器矩阵的列或行信号输入线。
3.28253可编程定时/计数器介绍
8253可编程定时/计数器有3个独立的十六位计数器,计数器的计数频率范围为0~2MHz。
它所有的计数方式和操作方式都通过编程控制。
DB0~DB7:
数据线
A0,A1:
地址线,用于选择3个计数器中的一个及选择控制字寄存器。
RD,WR:
读写控制信号
片选端
CLK0~2:
计数器0,1,2的时钟输入端
GATE0~2:
计数器0,1,2的门控制脉冲输入端,由外部设备送入门控制脉冲。
OUT0~2:
计数器0,1,2的输出端,由它接至外部设备以控制其启动。
8253中各通道可有6种可供选择的工作方式,以完成定时、计数或脉冲发生器等多种功能。
8253的各种工作方式如下:
1.方式0:
计数结束则中断
工作方式0被称为计数结束中断方式。
当任一通道被定义为工作方式0时,OUTi输出为低电平;
若门控信号GATE为高电平,当CPU利用输出指令向该通道写入计数值WR#有效时,OUTi仍保持低电平,然后计数器开始减“1”计数,直到计数值为“0”,此刻OUTi将输出由低电平向高电平跳变,可用它向CPU发出中断请求,OUTi端输出的高电平一直维持到下次再写入计数值为止。
在工作方式0情况下,门控信号GATE用来控制减“1”计数操作是否进行。
当GATE=1时,允许减“1”计数;
GATE=0时,禁止减“1”计数;
计数值将保持GATE有效时的数值不变,待GATE重新有效后,减“1”计数继续进行。
显然,利用工作方式0既可完成计数功能,也可完成定时功能。
当用作计数器时,应将要求计数的次数预置到计数器中,将要求计数的事件以脉冲方式从CLKi端输入,由它对计数器进行减“1”计数,直到计数值为0,此刻OUTi输出正跳变,表示计数次数到。
当用作定时器时,应把根据要求定时的时间和CLKi的周期计算出定时系数,预置到计数器中。
从CLKi,输入的应是一定频率的时钟脉冲,由它对计数器进行减“1”计数,定时时间从写入计数值开始,到计数值计到“0”为止,这时OUTi输出正跳变,表示定时时间到。
有一点需要说明,任一通道工作在方式0情况下,计数器初值一次有效,经过一次计数或定时后如果需要继续完成计数或定时功能,必须重新写入计数器的初值。
2.方式1:
单脉冲发生器
工作方式1被称作可编程单脉冲发生器。
进入这种工作方式,CPU装入计数值n后OUTi输出高电平,不管此时的GATE输入是高电平还是低电平,都不开始减“1”计数,必须等到GATE由低电平向高电平跳变形成一个上升沿后,计数过程才会开始。
与此同时,OUTi输出由高电平向低电平跳变,形成了输出单脉冲的前沿,待计数值计到“0”,OUTi输出由低电平向高电平跳变,形成输出单脉冲的后沿,因此,由方式l所能输出单脉冲的宽度为CLKi周期的n倍。
如果在减“1”计数过程中,GATE由高电平跳变为低电乎,这并不影响计数过程,仍继续计数;
但若重新遇到GATE的上升沿,则从初值开始重新计数,其效果会使输出的单脉冲加宽,如教材图9-22(b)中的第2个单脉冲。
这种工作方式下,计数值也是一次有效,每输入一次计数值,只产生一个负极性单脉冲。
3.方式2:
速率波发生器
工作方式2被称作速率波发生器。
进入这种工作方式,OUTi输出高电平,装入计数值n后如果GATE为高电平,则立即开始计数,OUTi保持为高电平不变;
待计数值减到“1”和“0”之间,OUTi将输出宽度为一个CLKi周期的负脉冲,计数值为“0”时,自动重新装入计数初值n,实现循环计数,OUTi将输出一定频率的负脉冲序列,其脉冲宽度固定为一个CLKi周期,重复周期为CLKi周期的n倍。
如果在减“1”计数过程中,GATE变为无效(输入0电平),则暂停减“1”计数,待GATE恢复有效后,从初值n开始重新计数。
这样会改变输出脉冲的速率。
如果在操作过程中要求改变输出脉冲的速率,CPU可在任何时候,重新写人新的计数值,它不会影响正在进行的减“1”计数过程,而是从下一个计数操作用期开始按新的计数值改变输出脉冲的速率。
4.方式3:
方波发生器
工作方式3被称作方波发生器。
任一通道工作在方式3,只在计数值n为偶数,则可输出重复周期为n、占空比为1:
1的方波。
进入工作方式3,OUTi输出低电平,装入计数值后,OUTi立即跳变为高电平。
如果当GATE为高电平,则立即开始减“1”计数,OUTi保持为高电平,若n为偶数,则当计数值减到n/2时,OUTi跳变为低电平,一直保持到计数值为“0”,系统才自动重新置入计数值n,实现循环计数。
这时OUTi端输出的周期为n×
CLKi周期,占空比为1:
1的方波序列;
若n为奇数,则OUTi端输出周期为n×
CLKi周期,占空比为((n+1)/2)/((n-1)/2)的近似方波序列。
如果在操作过程中,GATE变为无效,则暂停减“1”计数过程,直到GATE再次有效,重新从初值n开始减“l”计数。
如果要求改变输出方波的速率,则CPU可在任何时候重新装入新的计数初值n,并从下一个计数操作周期开始改变输出方波的速率。
5.方式4:
软件触发方式计数
工作方式4被称作软件触发方式。
进入工作方式4,OUTi输出高电平。
装入计数值n后,如果GATE为高电平,则立即开始减“1”计数,直到计数值减到“0”为止,OUTi输出宽度为一个CLKi周期的负脉冲。
由软件装入的计数值只有一次有效,如果要继续操作,必须重新置入计数初值n。
如果在操作的过程中,GATE变为无效,则停止减“1”计数,到GATE再次有效时,重新从初值开始减“1”计数。
显然,利用这种工作方式可以完成定时功能,定时时间从装入计数值n开始,则OUTi输出负脉冲(表示定时时间到),其定时时间=n×
CLK周期。
这种工作方式也可完成计数功能,它要求计数的事件以脉冲的方式从CLKi输入,将计数次数作为计数初值装入后,由CLKi端输入的计数脉冲进行减“1”计数,直到计数值为“0”,由OUTt端输出负脉冲(表示计数次数到)。
当然也可利用OUTj向CFU发出中断请求。
因此工作方式4与工作方式0很相似,只是方式0在OUTi端输出正阶跃信号、方式4在OUTi端输出负脉冲信号。
6.方式5:
硬件触发方式计数
工作方式5被称为硬件触发方式。
进入工作方式5,OUTi输出高电平,硬件触发信号由GATE端引入。
因此,开始时GATE应输入为0,装入计数初值n后,减“1”计数并不工作,一定要等到硬件触发信号由GATE端引入一个正阶跃信号,减“1”计数才会开始,待计数值计到“0”,OUTi将输出负脉冲,其宽度固定为一个CLKi周期,表示定时时间到或计数次数到。
这种工作方式下,当计数值计到“0”后,系统将自动重新装入计数值n,但并不开始计数,一定要等到由GATE端引入的正跳沿,才会开始进行减“1”计数,因此这是一种完全由GATE端引入的触发信号控制下的计数或定时功能。
如果由CLKi输入的是一定频率的时钟脉冲,那么可完成定时功能,定时时间从GATE上升沿开始,到OUTi端输出负脉冲结束。
如果从CLKi端输入的是要求计数的事件,则可完成计数功能,计数过程从GATE上升沿开始,到OUTi输出负脉冲结束。
GATE可由外部电路或控制现场产生,故硬件触发方式由此而得名。
如果需要改变计数初值,CPU可在任何时候用输出指令装入新的计数初值m,它将不影响正在进行的操作过程,而是到下一个计数操作周期才会按新的计数值进行操作。
从上述各工作方式可看出,GATE作为各通道的门控信号,对于各种不同的工作方式,它所起的作用各不相同。
在8253的应用中,必须正确使用GATE信号,才能保证各通道的正常操作。
3.38255可编程并行接口芯片介绍
8255作为主机与外设的连接芯片,必须提供与主机相连的3个总线接口,即数据线、地址线、控制线接口。
同时必须具有与外设连接的接口A、B、C口。
由于8255可编程,所以必须具有逻辑控制部分,因而8255内部结构分为3个部分:
与CPU连接部分、与外设连接部分、控制部分。
RESET:
复位输入线,当该输入端处于高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成输入方式。
8255内部结构
图28255外部引脚图
并行接口是以数据的字节为单位与I/O设备或被控制对象之间传递信息。
CPU和接口之间的数据传送总是并行的,即可以同时传递8位、16位或32位等。
8255可编程外围接口芯片是Intel公司生产的通用并行I/O接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作:
方式0--基本输入/输出方式、方式1--选通输入/输出方式、方式2--双向选通工作方式。
8255的内部结构及引脚如图4.31所示,8255工作方式控制字和C口按位置位/复位控制字格式如图3和图4所示
图3工作方式控制字
图4C口置位/复位控制字
8255实验单元电路图如图5所示:
图58255实验单元电路图
芯片选择信号线,当这个输入引脚为低电平时,即/CS=0时,表示芯片被选中,允许8255与CPU进行通讯;
/CS=1时,8255无法与CPU做数据传输.
RD:
读信号线,当这个输入引脚为低电平时,即/RD=0且/CS=0时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。
写入信号,当这个输入引脚为低电平时,即/WR=0且/CS=0时,允许CPU将数据或控制字写入8255。
D0~D7:
三态双向数据总线,8255与CPU数据传送的通道,当CPU执行输入输出指令时,通过它实现8位数据的读/写操作,控制字和状态信息也通过数据总线传送。
PA0~PA7:
端口A输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输入锁存器。
PB0~PB7:
端口B输入输出线,一个8位的I/O锁存器,一个8位的输入输出缓冲器。
PC0~PC7:
端口C输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输入缓冲器。
端口C可以通过工作方式设定而分成2个4位的端口,每个4位的端口包含一个4位的锁存器,分别与端口A和端口B配合使用,可作为控制信号输出或状态信号输入端口。
'
A0,A1:
地址选择控制线,用来选择8255的PA口,PB口,PC口和控制寄存器.
8255具有3个相互独立的输入/输出通道端口,用+5V单电源供电,能在以下三种方式下工作。
方式0————基本输入输出方式;
方式1————选通输入/出方式;
方式2————双向选通输入/输出方式;
4电路原理图与说明
4.1实验原理图
4.2实验步骤
4.2.1实验连线
具体连线说明如下:
8279CS----210H-217H。
将8279的片选与译码电路相应的插孔相连。
8253CS----200H-207H。
GATE0,ATE1----+5V;
CLK0----2M;
OUT0----CLK1;
OUT1----PA0.
8255CS----208H-20FH。
4.2.2编写调试程序,全速运行,观察实验结果
5软件主要模块流程图
5.1软件设计思路
本程序由主程序和控制芯片输出程序组成。
主程序主要负责系统初始化,控制芯片输出程序主要负责数码管的亮灭。
8253开始定时后,每一秒控制相应的数码管的亮灭。
主程序初始化:
主程序负责系统的初始化,系统初始化包括8253的初始化、8255的初始化和8279的初始化。
8253定时的时间是一秒。
5.2软件流程图
否
6、程序说明与程序清单
Z8279EQU212H
D8279EQU210H
LEDMODEQU00H;
左边输入,八位显示外部译码八位显示
LEDFEQEQU38H;
扫描频率
CODESEGMENT
ASSUMECS:
CODE
START:
MOVDX,Z8279;
8279初始化
MOVAL,LEDMOD
OUTDX,AL
MOVAL,LEDFEQ
OUTDX,AL
MOVAL,00110111B;
8253初始化
MOVDX,203H
OUTDX,AL
MOVAL,00H
MOVDX,200H
MOVAL,10H
MOVAL,01110101B
MOVDX,201H
MOVAL,40H
OUTDX,AL;
MOVAL,10010000B;
8255初始化
MOVDX,20BH
MOVDX,208H
L1:
INAL,DX
TESTAL,01H
JNZL1
b1:
TESTAL,01H
JZb1
1:
MOVDX,D8279;
实现脉冲波形
MOVAL,00000110b
OUTDX,AL
MOVAL,00000000b
MOVAL,00000000b
DELAY1:
JNZDELAY1
DELAY2:
TESTAL,01H
JZDELAY2
2:
MOVDX,D8279;
实现全8显示
MOVAL,01011011B
OUTDX,AL
MOVAL,00000000B
DELAY3:
JNZDELAY3
DELAY4:
JZDELAY4
3:
实现B.2132图案显示
moval,01001111b
outdx,al
moval,00000000b
DELAY5:
JNZDELAY5
DELAY6:
JZDELAY6
4:
实现3排横向图案显示
moval,01100110b
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 可编程节日彩灯系统硬件课程设计实验报告 精品 可编程 节日 彩灯 系统 硬件 课程设计 实验 报告