硬件课程设计总报告_第1页
硬件课程设计总报告_第2页
硬件课程设计总报告_第3页
硬件课程设计总报告_第4页
硬件课程设计总报告_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

1、计算机科学与技术学院硬件课程设计报告(总报告)名:学号:08083434专 业:计算机科学与技术班 级:计算机084班设计题目:竞赛抢答器成 员:张鑫李猛指导教"帀:王凯 职称:副教授2010年10月徐州在各种各样的活动比赛屮,很多情况下要判断出第一抢答者,于是为减少人为的主管 和不确定因素,为了准确,公平,直观的判断第一抢答者,通常要设置一台抢答器,通过 数字显示,灯光及音响等多种手段提示出第一抢答者。同时,还可以设置计时、主持人开 关键等。在学习过微机原理与接口技术之后,进行抢答器系统的实际分析与设计,有助于深化 汇编语言程序设计的理解。本实例设计了最简单的一个抢答器系统,只考虑

2、两路选手的最简单理想情况。通过利 用8253定时器,8255输入输岀接口,8279键盘输入、显示控制等器件实现抢答器系统的设 计工作。关键词:二路抢答器;8253定时器;8255输入输出接口 ; 8279键盘输入及显示控制;目 录设计简介21设计任务与要求41.1实验目的41.2设计任务与具体的要求41.3设计所需器件42总体方案52.1抢答器工作原理52.2抢答器四大模块52.3抢答器总体方框图 53硬件设计63.1 8253器件的应用 63.2 8255器件的应用83.3 8279器件的应用104 软件模块流程图145 程序清单1 56.结论197 参考文献19设计简介1 硬件课程设计步骤

3、及要求各阶段时间安排:1.选题及需求分析阶段(18)2.概要设计阶段(916)3.测试总结阶段(3740)4.详细设计阶段(1736)5.撰写报告阶段(4148)2. 设计题目:竞赛抢答器3. 设计背景:在很多活动比赛中都要进行抢答,以确定比赛时的先后顺序。要判断出第一抢答者并 不是很容易,难免会因为几位选手几乎同时抢答而不能判断孰先孰后。为了准确,公平, 直观的判断第一抢答者,通常要设置一台抢答器,通过数字显示,灯光及音响等多种手段 提示出第一抢答者。4. 而临的问题:4.1 8279芯片以前从没有接触过,对它的使用不了解。键盘及显示控制功能等操作也不是 很清楚,因此在开始设计抢答器系统之前

4、需要自己动手寻找相关资料。4.2将几块芯片模块组成系统,需要组员之间的默契配合与整个系统架构的严谨设计。5. 解决方案:5.1通过在网上的搜索,找到了一些关于8279芯片的知识,对于8279芯片的基本操作能 够实现。5.2设计与分析系统时,采用模块化的设计理念,将各个模块分开设计。最后再组合成系 统。6. 设计思想:使用器8253计时功能、8255输入输出接口、8279键盘扫描及数码管显示控制功能, 再加上led灯、实验箱上提供2mhz的脉冲源以及+5v的电源来实现整个系统的设计。8253:抢答计时,每计时一秒输岀一个脉冲,cpu读入脉冲信号。8255:接收cpu发出的信号脉冲,输出信号控制l

5、ed灯的点亮熄灭。8279:扫描键盘输入,锁存被按下的键的键值。判断先后顺序后,通知cpu向led 灯发出脉冲信号。其数码管同时显示倒计时。7程序框架图1设计任务及要求1.1实验目的1、复习8255及8253芯片的工作原理。2、学会设计小规模逻辑电路图。3、增强分析、解决问题的能力1. 2设计任务和具体要求1. 禮答器同时供2名选手或2个代表队比赛,分别用2个按按键t,和'2,表 zj o2. 设置一个系统清除和抢答控制开关'(t,该开关由主持人控制。3. 抢答器具有锁存与显示功能。即选手按动按钮,锁存相应的编号,并在led数 码管上显示计时时间。选手抢答实行优先锁存,优先抢答

6、选手的编号一直保持到主 持人将系统清除为止。4. 抢答器具有定时抢答功能。当主持人启动开始键后,定时器进行减计时。5. 参赛选手在设定的时间内进行抢答,抢答有效。显示器上显示时间,计时结束 为止止。6. 如果定吋吋间已到,无人抢答,本次抢答无效,系统禁止抢答,定时显示器上 显示计吋为0o.1.3设计所需器件8253芯片、8255芯片、8279芯片以及试验箱上提供的led灯、2m的时钟脉冲信号、 及接线等。2设计总体方案2.1抢答器工作原理a、接通电源后,主持人未按下开始键之前,抢答器处于禁止状态,编号显示器灭灯;b、主持人将开关置"开始状态,宣布开始,抢答器工作。c、定时器倒计时,并

7、把计时时间显示在数码管上。d、选手在定吋吋间内抢答吋,抢答器完成:优先判断、键值锁存、编号显示。c、当一轮抢答z后,定时器停止、禁止二次抢答,显示器不再显示时间。f、如果再次抢答必须由主持人再次开始状态开关。2. 2抢答器四大模块模块一:键盘扫描及锁存判断优先级模块。此模块主要有8279芯片来完成,8279芯 片工作在n键循回方式下,把扫描到的按键按先后顺序存入fifo ram,然后读取fifo, 将第一个按下的键的键值读入cpu.模块二:计时模块。此模块主要有8253芯片来完成计时功能,每计时一秒,8253输 出一个脉冲信号给模块三,控制模块三显示及时数字。模块三:显示模块。主要由led灯和

8、8279的数码管来完成此项功能,在模块二脉冲信 号的作用下,数码管一次显示计时时间数字,并且把模块一中cpu读入的键值对应的led灯点亮。模块四:输入输出接口模块。此模块主要由8255来实现输入输出功能,来点亮led灯。2.3抢 答 器 总 体 方 框 i *必,i o ii ki i6ui u4 bodi »ui ui i» | ml |»| i ft&i i » i i hihi hi b5圭捋人控制控制开关*电跻ir主钵电路秒脉冲定时译码显示产生电跖电诵电路扩 展 电 路3.硬件设计3.1 8253器件的应用8253的内部结构图rd#wri

9、alaocs#y clkov gateo -outoy clkiy gate】outiy clk2y gate9.3.18253內部结构8253的主要性能:8253可编程定时/计数器芯片时intel公司生产的微型计算机通用外 围芯片乙一。采用24个引脚,双列直插式封装,其主要特性如下:采用nmosi艺,用 单一的+ 5v电源供电。片内有3个独立的16位减法计数器(或计数通道),每个计数器又 可分为两个8位的计数器。计数频率为05mhz。两种计数方式,即二进制和bcd方式 计数。6种工作方式,即可对系统时钟脉冲计数实现定时,乂可对外部事件进行计数。可 由软件或硕件控制开始计数或停止计数。方式选择

10、控制字对计数:00 :选(j通道00 :当前计数值存入锁存器000 力式001 :选1通道01 :只读垢计数器低字节001 :方式110 :选2通道10 :只读垢计数器咼于节010 :方式211:无效11:先读母计数器低字节,011 :方式3后读垢计数器咼字节100 :方式4101 :方式51:bcd码计数0:二进制计数d7d6d5d4d3d2dido1 sciscorl1rlom2mlmobcd |7rr-v-图9.3.3 8253方式选择控制字8253的工作方式方式0:计数结束则中断工作方式0被称为计数结束中断方式,当任一通道被定义为工作方式0时, out:输出为低电平;若门控信号gate

11、为高电平,当cpu利用输出指令向该通道写入 计数值wr#有效时,out,仍保持低电平,然后计数器开始减“1”计数,直到计数 值为“0”,此刻0叮将输岀由低电平向高电平跳变,可用它向cpu发出中断请求, out:端输出的高电平一直维持到下次再写入计数值为止。方式1:单脉冲发生器工作方式1被称作可编程单脉冲发生器,进入这种工作方式,cpu装入计数值n 后0ua输出高电平,不管此时的gate输入是高电平还是低电平,都不开始减“1” 计数,必须等到gate由低电平向高电平跳变形成一个上升沿后,计数过程才会开 始。与此同时,out:输出由高电平向低电平跳变,形成了输出单脉冲的前沿,待计 数值计到“0”,

12、0口输出由低电平向高电平跳变,形成输出单脉冲的后沿,因 此,由方式1所能输出单脉冲的宽度为clki周期的n倍。方式2:速率波发牛器工作方式2被称作速率波发生器,进入这种工作方式,out:输出高电平,装入计数 值n后如果gate为高电平,则立即开始计数,out:保持为高电平不变;待计数值 减到 t 和“0”之间,outi将输出宽度为一个c1x周期的负脉冲,计数值为“0” 时,自动重新装入计数初值n,实现循环计数,0lt将输出一定频率的负脉冲序列, 其脉冲宽度固定为一个cix周期,重复周期为cln周期的n倍。方式3:方波发生器工作方式3被称作方波发生器,任一通道工作在方式3,只在计数值n为偶数,则

13、可输出 重复周期为n、占空比为1: 1的方波。方式4:软件触发方式计数工作方式4被称作软件触发方式,。进入工作方式4, out:输出高电平。装入计数值 n后,如果gate为高电平,则立即开始减“1”计数,直到计数值减到“0”为止,out. 输出宽度为一个cix周期的负脉冲。由软件装入的计数值只有一次有效,如果要继续操作, 必须重新置入计数初值n。如果在操作的过程中,gate变为无效,则停止减“1”计数,到 gate再次有效时,重新从初值开始减“1”计数。方式5:硬件触发方式计数工作方式5被称为硬件触发方式,进入工作方式5, out】输出高电平,硬件触发信号 由gate端引入。因此,开始时gat

14、e应输入为0,装入计数初值n后,减“ 1 ”计数并不 工作,一定要等到硕件触发信号由gate端引入一个正阶跃信号,减“1”计数才会开始, 待计数值计到“0” , out:将输出负脉冲,其宽度固定为一个clki周期,表示定时时间到 或计数次数到。3.28255器件的应用利用8255器件实现辅助功能,利用a端口,通过对a端口进行读取,实现一秒钟 的定时。8255地址连接210-213h8253 的 0ut1 连接 8255 的 pa0.(1) 8255 芯片8255的引脚图为c 7 6 5 4 3 o1234567cbbbbb ddddddddvppppp098765432109876543214

15、33333333332222222220123456789012345678911111111112321o-p-sb1o a a a a-k-c maa p p p p g76540123012ccccccccbbbppppppppppp8255a的引脚cs#为片选择信号,输入,低有效。a|、ao为地址信号,用来区分8255a内部a、 b、c三个数据端口和一个控制端口的地址。rd#、wr#分别为读、写信号,输入,低有 效,接收cpu的读写命令。reset,复位信号,输入,高有效,复位信号有效时将控制 寄存器清零,并将a、b、c端口全部置为输入状态。(1) d7-do:数据总线,双向与主机交换

16、信息。(2) cs#:片选,由高位地址译码产生。aia():片内端口寻址输入线,用于选择端口。(4) rd#、wr#:读写控制信号。(5) reset:使芯片复位信号。pa7pao、pb7pbo、pc7pco:数据接口线,与外设的连接线。8255a的内部端口地址当cs#二0时(由地址高位决定):aao=oo:选择 a 口。a|ao=ol:选择 b 口。a|a0=10:选择 c 口。aiao=ll:选择控制口。注:pc机的8255a地址为60h63h。8255a的工作方式控制字端口的工作方式由将写入控制口的控制字决定,8255a设计了 c端口的位操作工作方 式,必要时可以对c端口进行置0置1的位

17、操作(如设置对8255a的pa 口或pb 口中断 的屏蔽或允许)。工作方式控制字d7=l:特征位。d6d5: a 口工作方式选择:00=方式0, 01二方式1, 10=方式2。d4: a 口输出/输入:0二输出,1二输入。d3: c 口上半部输出或输入,0二输出,1二输入d2: b 口方式:0二方式0, 1=输出方式1。d1: b 口输出/输入:0二输出,1二输入。do: c 口下半部输出/输入:0二输岀,1二输入。c 口置位/复位控制字:d7=0 :特征位。d6d4:不用。d3di: c 口位选择。000111对应于pcopc7。d():置位/复位。1:置位、0:复位。使pc2输出高电位:使

18、pa2输出高电位:movdx,97hmovdx, 94hmoval,05hmoval, valoutdx,aloral, 00000100b(05h 二()()()()()101b)out dx, al方式选择控制字a组方式a 口1一输入0输出pc7pc41输入0输出b组方式 0方式0 1方式1b 口1输入0输出pc3pc01一输入0输出1有效 标志位00方式001方式11方式2d7 d6d5d4d3d2d1d0(1) 工作方式0 :这是8255a屮各端口的基本输入/输出方式。它只完成简单的并行输 入/输出操作,cpu可从指定端口输入信息,也可向指定端口输出信息,如果三个端口 均处于工作方式0

19、 ,则可由工作方式控制字定义16种工作方式的组合(2) 工作方式1 :被称作选通输入/输出方式。在这种工作方式下,数据输入/输出 操作要在选通信号控制下完成。(3) 工作方式2 :被称作带选通的双向传送方式。8255a屮只允许端口 a处于工作方 式2 ,可用来在两台处理机之间实现双向并行通信。其有关的控制信号由端口 c提供, 并可向cpu发出中断请求信号。3. 3 8279器件的应用8279是可编程的键盘、显示接口芯片。它既具有案件处理功能,又具有自动显示功 能,在单片机系统中应用很广泛。8279内部有键盘fifo(先进先出堆栈)/传感器, 双重功能的8*8=64bram,键盘控制部分可控制8

20、*8=64个按键货8*8阵列方式的 传感器。该芯片能自动消抖并具有双键锁定保护功能。显示ram容量为16*8,即 显示器最大配置可达16位led数码显示。8279有3屮工作方式,分别为键盘工作 方式、显示方式、传感方式8279特点(1) 可同时进行键盘扫描及文字显示;(2) 键盘扫描模式(scanned keyboard mode);(3) 传感器扫描模式(scanned sensor mode);激发输入模式(strobe input entry mode);(5) 8乘8键盘fifo(先进先出);(6) 具有接点消除抖动,2键锁定及n键依此读出模式;(7) 双排8位数或双排16位数的显示器

21、;(8) 右边进入或左边进入。16位字节显示存储器。8279引脚图为匚匚匚匚匚匚匚匚匚匚匚匚匚匚匚匚匚匚匚匚23kq4j7t-d-ro1234567dririclirrlrlrlrleserpwpd d d d d d d dgnr1402393384375366357348339s279321031113029282726251724182319222021二 vcc二 rl1二 rl0二 cntl7stb二shift二 sl3二 sl2二 sl1二 sl0二 outbo二 outb1二 outb2二 outb3=1 outao二outa1二 out a 2二outa3二 bd二1 cs二1

22、 ao8279有三种工作方式:键盘方式,显示方式和传感器方式。(1) 键盘工作方式8279在键盘工作方式时。可设置为双键互锁方式和n键循回方式。双键互锁 方式:诺有两个货多个键同时按下时,不管按键先后顺序如何,只能识别最后一个被 释放的键,并把键值送入fifo ram中。n键循冋方式:一次按下任意个键均可被 识别,按键值按扫描次序送入fifo ram中。(2) 显示方式8279的显示方式又可分为左端入口和右端入口方式。显示数据只要写入显示ram,侧可由显示器显示出来,因此显示数据写入显 示ram的顺序。决定了显示的次序。左端入口方式即显示位置从显示最左端1喂开始。以后显示的字符逐个向右端 顺序

23、排列:右端入口方式即显示显示器最右端1位开始,以显示的字符逐个向左端 移动,但无左右入口,后输入的总是显不在最右边。(3) 传感器方式传感器方式是把传感器开关状态送入传感器ram,当cpu对传感器阵列扫描时,一 旦发现传感器状态发生变化就发岀中断请求,中断响应后转入中断处理程序。8279的命令字及其格式格式为8279的各种工作方式都要通过对命令寄存器的设置来实现。8279共有8种命令,通过这些命令设置工作寄存器.来选择各种工作方式。命令需存器共8位.格式为:u706d5【)4d3d21)1ix)* 命令类型命令内容如上图 8279的一条金令由期大部分组成,一部分表征命令类型,为命令特征位.由

24、命令寄存器高31)7 -05抉定。d7 05三僮的状态可组合出8种形式,对应8类命令。另一彩分为命令的貝体内容,由1)41)0决定每种转征所代表的命令如衣3. 3所示表33 8279命令特征表d7 06 d5代表的命令类型0 0 0键盘/显示命令0 0 1时钟编程命令0】0读fifo/传感器ram命令0 1 1读显示器ram命个1 () 0写显示命令1 0 1显示禁止/熄灭命令1 1 0洒除命令1 1 1结束中断/出错方式设置命令8279的状态字及其格式狀态字显示出8279的工作状态。状态字和8种命令字共用一个地址口°当曲二1时,从8279命令/状态口地址读岀的是状态字.犹态字各他意

25、义如hd7: d7珂表示显示无效.此时不能对显示ran写入。d6: 06=1表示至少有一个说闭合;在特侏钳诜万式时有多舗同时檢下描氓05: 05=1示fifo ram已满,再输入-个字则竊岀°皿阳表示fifo ram中已空,无数据可读.)3: 03=1表示fifo ram中数据已满。021)0: fifo ram中数据个数。显巍状态字主要用于键盘和选通工作方式,以指示fifo ram中的字符mw无错 诛发生8279的输入输出格式对8279输入/输出数据不仅要先确定地址口,而且数据存放也要按一定格式,其格式 在键盘和传感器方式有所不同。砂扫描方式数据输入格式魏盘的行号、列号及控制健位置

26、如下:071)6 d5 【)4 d3 1)21)11)0cntlshiftsl2sl1slo由rx的x决定d7:控制犍wcntlw状态.d6:控制徒-shift"状熱d5 d4 d3:被按键所在列号(由si0 sl2)状杏确定hd2 d1 1)0:被按健所在行号(由rlorl7)状态确定).(2)传昶旅及选通方式uo入格式此种方式8»入数据为r1.0kl7的状态白林式如下,d71)6d5d4d3d2d11)0rl7rl6rl5rl4rl3rl2rl1rl04. 软件模块流程图清空fifo,8279扫 描键盘,锁存键值按下w键按下空键没有按键按下5. 程序清单及注释data

27、segment;数字9-0在数码管上的字型码one db 6fh, 7fh, 07h, 7dh, 6dh, 66h, 2fh, 5bh, 06h, 3fhdata endscode segmentmain proc farassume cs:code, ds:datastart:mov al, 03h ;设定8279工作方式mov dx,20ahout dx, almov al, 3811 ;扫描频率out dx, almov al, 0c2h ;清除 fifoout dx, almov al, 01000000b ;读卩吓0out dx, alwaite:;主持人按下开始键0mov dx,2

28、08hin al, dxcmp al, 4711jne waitebegin:mov dx, 20ai1mov al, 0c2h ;清除 fifoout dx, almov cl, oohmov al,01000000b;读尺"0mov dx, 20ahout dx, almov dx,208hin al, dxcmp al, 1bi1 ;查看按下的第一个键是1还是2je sh0w1;向led显示抢答者所按键cmp al, 3bh;开始计时je sh0w2beg1nt1me:mov al, 00110101bmov dx, 203hout dx, almov al, oohmov dx,200hout dx, almov al, 20hout dx, almov al, 01110001bmov dx, 203hout dx, almov al, 0011mov dx, 201hout dx, almov al, 10hout dx, almov al, 10010000b ;启动8255,设定工作方式,a入b出mov dx, 213hout dx, almov dx, 210h ;从8255输入端读入8253的高电平输出in al, dxtime:and al, 100

温馨提示

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

最新文档

评论

0/150

提交评论