微型计算机基于8086cup数字时钟课程设计任务书1_第1页
微型计算机基于8086cup数字时钟课程设计任务书1_第2页
微型计算机基于8086cup数字时钟课程设计任务书1_第3页
微型计算机基于8086cup数字时钟课程设计任务书1_第4页
微型计算机基于8086cup数字时钟课程设计任务书1_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课 程 设 计 任 务 书专 业自动化班 级姓 名设 计 起 止 日 期2013.12.162013.12.20设计题目:基于8086cpu的数字时钟的设计设计任务(主要技术参数): 1、利用实验系统上提供的8253和led数码显示等电路,设计一个电子时钟;2、格式如下:6个数码由左向右分别显示为:时、分、秒。指导教师评语: 成绩: 签字:年 月 日课程设计说明书 no.11 引言随着在现代技术进步,电子产品越来越多的在生活中出现,服务于人们的生活,从简单的电子手表,到人人必备的手机,我们都可以看到电子时钟的身影。本系统就是基于8086系统,配合8255和8253芯片开发的一个数字电子时钟,有

2、显示时分秒的功能。2 设计方案论证2.1一秒定时方案的选择运用8253产生周期为2秒的方波,通过8255芯片的a、b、c口读取电平高低,判断电平变化,进而判断1秒延时是否已经到达,这种方法可以写成子程序,执行返回就近似于1秒延时。2.2时钟时分秒的处理方式选择时钟的时分秒的处理方法实际上时数学逻辑问题。在编辑过程中我想到两种解决方案。方案一:将时分秒当做三个数据进行处理,设置三个数据空间,作为是分秒的数据缓存区,再将缓存区的内容转换成显示数据。每次延时之后判断“秒”是否应该向“分”进位,“分”是否应该向“时”进位,“时”是否已经超过24.这个过程理论上可以实现,但是逻辑判断较为繁琐。方案二;将

3、时分秒分成六位,放在显示数据缓存区里,每次一秒延时之后判断是否向高位进一,若还不进一,则跳回最低位,再次进行一秒延时;由于秒和分都是60进制,处理方法一样,而“时”是24进制,应该进行额外处理。2.3八段数码管动态显示对于8279八段数码管的显示需要入码位和段码,因此采用74ls373作为位码输出端口,8255的a、b、c口作为段码输出口。通过cpu输出数据进行位码选择,经74ls373 沈 阳 大 学课程设计说明书 no.2输出到位码输入口;设置到六位数据缓存区,经过换码可以取得相应的段码输出到段码输入口,并简单延时,就可以显示了。2.4系统原理 通过并行接口芯片8255和8086计算机的硬

4、件相连,以及通过8253一秒延时的方法,来实现适中的计时功能。8086工作在最小模式,5255芯片片选端接到cpu的片选段cs0,a口组委输出口,b口作为输入口,b口的第一位用于检测电平;8253片选端接到cpu的片选段cs2,用于锁存位码。一秒计时和功能有软件控制进行。3 系统硬件设计3.1 8086简介intel8086是16位的微处理器(其内部总线为16位,外部总线为8位,故称为准16位微处理器),它采用hmos工艺40条引脚封装。8086工作时使用5v电源,时钟频率5mhz(8086-1为10mhz,8086-2为8mhz)它有20根地址线,故可寻址的内存空间为1mb【2】。(1)80

5、86的主要特性intel8086/8088cpu是intel公司推出的高性能的微处理器,具体如下主要特性:(a)8086cpu数据总线为16位,8088cup数据总线为8位。(b)地址总线都是20位,低16位用于数据总线复用,可直接寻址为1mb的存储空间。(c)有16位的端口地址,可以寻址64kb的i/o端口。(d)有99条基本指令,指令功能强大。(e)有9种基本寻址方式。(f)可以处理内部和外部中断,外部中断源多达256个。(g)兼容性好,8086、8085在源程序一级兼容。 沈 阳 大 学课程设计说明书 no.3(h)8086/8088标准主频为5mhz,8086/8088-2主频为8mh

6、【3】。(i)支持单处理器或多处理器系统工作。(2)8086cpu寄存器结构8086cpu中有14个16位的寄存器,其中有4个16位的通用寄存器,2个16位指针寄存器,2个16位变址寄存器,1个16位指令指针及1个16位标志寄存器【8】。通用寄存器包括累加器ax,基址寄存器bx,计数寄存器cx,数据寄存器dx四个寄存器,位于cpu的eu中,每个数据寄存器可存放16位操作数, 也可拆成两个8位寄存器,用来存放8位操作数。指针和变址寄存器包括:堆栈指针sp、基址指针bp、源变址寄存器si、和目的变址寄存器di四个16位寄存器,可以来存放数据和地址。段寄存器包括:代码段寄存器cs,数据段寄存器ds,

7、附加段寄存器es,堆栈段寄存器ss【4】。3.2 8255简介8255可编程外围接口芯片是 intel 公司生产的通用并行i/o 接口芯片,它具有a、b、c 三个并行接口,并行接口是以数据的字节为单位与i/o 设备或被控制对象之间传递信息。cpu和接口之间的数据传送总是并行的,即可以同时传递8 位、16 位、32 位等。用+5v单电源供电,能在以下三种方式下工作:方式0-基本输入/出方式、方式1-选通输入/出方式、方式2-双向选通工作方式【3】。8255的内部结构及引脚图如图2所示。 沈 阳 大 学课程设计说明书 no.4图4 8255内部结构及引脚图2 8255内部结构及引脚图具体的各引脚功

8、能如下【3】:d0d7为双向数据信号线,用来传送数据和控制字。rd为读信号线,与其它信号线一起实现对8255接口的读操作通常接系统总线的ior信号。wr为写信号线,与其它信号一起实现对8255的写操作,通常接系统总线的iow。 沈 阳 大 学课程设计说明书 no.5cs为片选信号线,当它为低电平(有效)时,才能选中该8255芯片,也才能对8255进行操作【6】。a0,a1为口地址选择信号线。8255内部有3个口;a口,b口,c 口,还有一个控制寄存器,它们可由程序寻址。a0,a1上的不同编码可分别寻址上述3个口和一个控制寄存器,具体规定如表1所示。表1 8255的寻址方式a1a0选择00a口0

9、1b口10c口11控制寄存器通常 a0,a1分别接系统总线a0和 a1,它们与cs一起来决定8255的接口地址。reset为复位输入信号。此端上的高电平可使8255复位。复位后,8255的a口,b口,c 口均被定为输入状态【9】。pa0pa7为a口的8条输入输出信号线。pb0pb7为b口的8条输入输出信号线。pc0pc7,8条线根据其工作方式可作为数据的输入或输出线,也可以用作控制信号的输出或状态信号的输入线【7】。 沈 阳 大 学课程设计说明书 no.6 8255 工作方式控制字和c口按位置位/复位控制字格式如图3所示【4】。 图图3 置位/复位控制字格式8255的寻址:8255占外设编址的

10、4个地址,即a口,b口,c口和控制寄存器各占一个外设接口地址。对同一个地址分别可以进行读写操作。例如,读a口可将a口的数据读出;写a口可将cpu的数据写入a口并输出【8】。 如表2为方式0下系统的输入输出组合,其中分为a,b组,a组分为a口和c口,b组分为b口和c口【1】。 沈 阳 大 学课程设计说明书 no.7 表2 方式0下,8255的16种输入输出组合a 组b组a口(pa0-pa7)c口(pc4-pc7)b口(pb0-pb7)c口(pc0-pc3)入入入入入入入出入入出入入入出出入出入入入出入出入出出入入出出出出入入入出入入出出入出入出入出出出出入入出出入出出出出入出出出出3.3七段le

11、d显示器及其接口七段led显示器:由七个发光段构成,每段均为1个led二极管。通过控制不同段的点亮和熄灭,显示出16进制数字或字符【10】。 沈 阳 大 学课程设计说明书 no.8七段led显示器有共阳极和共阴极两种结构,如图5所示的七段led实际上包含8个led(7段字形加上小数点dp)。1位led显示器有1根位选线和8根段选线,段选线控制字符的选择,位选线控制显示位的亮和暗。led数码管采用砷化镓、镓铝砷、和磷化镓等材料制成,其内部结构为一个pn结,具有单向导电性。从图5可以看出,要是数码管显示数字,有两个条件:(a)是要在vt端(3/8脚)加正电源;(b)要使(a,b,c,d,e,f,g

12、,dp)端接低电平或“0”电平。这样才能显示的。将七个发光管进行组合,排列成数字图形8,再根据需要控制七个管的亮与灭,即可显示出定义数字【10】。led技术参数说明:发光二极管的压降一般为1.5-2.0v,即工作电压要求不高,而且构造简单,其工作电流一般取10-20 ma为宜【4】。 图4七段led显示器3.4 连线设计以下为间断,其中8255片选端接到cs0,pa口接到数码管的数码输出端口led-a至led-g,b口第一位作为电平检测功能线:8253接到cs1,gate0和gate1接到+5v电平,8253c1k0接到375khz的clk4,out0接clk1,out1接到pc2;74ls3

13、73的片选端接 沈 阳 大 学课程设计说明书 no.9到cs2,d0至d5接到八段数显管的位码输入端led1至led6。以下为电路图: 图1 电路图4软件编程实现4.1芯片初始化:starrt:mov dx,04b6h;8253初始化用以输出周期为两秒的方波mov a1,00110110b;定时器0输出10hz的方波 沈 阳 大 学课程设计说明书 no.10out dx,a1mov ax,37500mov dx,04b0hout dx,a1mov a1,ahout dx,a1mov dx,o4b6h;定时器1输出0.5hz的方波,从而产生一秒的定时mov a1,01010110bout dx,

14、a1mov dx,04b2hmov a1,20out dx,a14.2时分秒的处理:m:lea si,shu jucall dect;秒的个位处理mov a1,siinc a1mov si,a1;秒的个位加一cmp a1,0ahjnz m;秒的十位处理mov a1,0mov si,a1inc simov a1,si 沈 阳 大 学课程设计说明书 no.11inc a1mov si,a1cmp a1,06hjnz mmov a1,0mov si,a1;时的处理mov a1,0mov si,a1inc simov a1,siinc a1mov si,a1cmp ai,04hjnz hourcinc

15、 si mov a1,sicmp a1,02hjnz hourcmov a1,0mov si,a1dec simov si,a1jmp mhourc:cmp a1,0ahk1:jnz m;时的十位处理 沈 阳 大 学课程设计说明书 no.12mov a1,0mov si,a1inc simov a1,siinc a1mov si,a1cmp a1,03hjnz k14.3一秒延时子程序检测电平变化,判断是否秒加一dect:push si;堆栈保护进行地址保护dectread:call disp;调用显示子程序lea si,dianpingmov ah,simov dx,04a2h;判断电平,若

16、有跳变则si加一ina1,dxcmp a1,ahjz dectreadmov si,a1pop siret4.4数码管显示子程序disp:;显示子程序,将六个位都显示一遍push simov a1,0feh 沈 阳 大 学课程设计说明书 no.13mov cx,6lea si,shujudisplayloop:mov dx,04c0h;373输出位码,并锁存out dx,a1rol a1,1push axmov dx,04a6h;8255控制字:a口出,b口入mov a1,82hout dx a1mov a1,siinc si lea bx,screenxlat;换码指令取段码call out

17、putpop axloop displaylooppop simov dx,04a6h;8255控制字:a口出,b口入mov a1,82hout dx a1mov a1,siinc si lea bx,screenxlat;换码指令取段码call output 沈 阳 大 学课程设计说明书 no.14pop axloop displaylooppop sidelay:push cxmov cx,ofhdelaylooploop delaylooppop cxret5调试记录及结果分析 这个项目除了开始部分的探索阶段,其他全过程相对较顺利。调试成功之后,发现了一些问题:(1)由于软件判断指令判断

18、周期有一定的延时,况且在调用显示程序过程中存在短延时,因此数字时钟的计数时间相对正常计时时间相对正常计数时间要慢一些,这也符合理论,因此该程序以目前的设备来看,时正确的;(2)由于时间关系,该程序只有计时功能,没有手动校准功能,时间久了,很容易产生打的误差,不适合用于生产;时间允许的话,我们可以手动通过键盘进行校准,减少这种难以避免的误差;(3)由于时运用软件查询的方式,1s的延时不时很精确;要向精确定时,须采用中断方式有硬件进行1s定时;而中断处理方式需要花费时间来理解。6设计总结心得 课程设计的几天里,我天天对着电脑,忙着接线,脑袋跟随者cpu不停的转,中午也不回宿舍睡觉,但是仍然有一种愉

19、悦感,我向这就是程序设计的魅力,遇到问题,解决问题的过程时快乐的。进步本身就时一件令人快乐的事情。 沈 阳 大 学课程设计说明书 no.15 做这个设计题目,前前后后花了我一周的时间。其中前三天用于做前期的知识准备,还有一些时间用于和同学探讨,还有一些时间用于思维的转变,吧c51单片机的思维转换到8086cpu指令系统中来。c51单片机和8086其实有很大的相似性,只不过时自己的思维方式相对有些死板而已。要敢于思考,要喜欢思考,要善于思考,这对我自己来说,都是一个启发。在程序调试成功后,有不少同学问我,这个程序如何理解。我从头到尾给他们讲了,他们懂了,我自己对程序的理解就更深一步了,得到了一种成就感;当然在写程序的过程中

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论