895191586微机原理课程设计_第1页
895191586微机原理课程设计_第2页
895191586微机原理课程设计_第3页
895191586微机原理课程设计_第4页
895191586微机原理课程设计_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

1、课 程 设 计 课程名称_微机原理及应用 _ _题目名称_微机原理及应用课程设计_学生学院_自动化学院_ _目 录1.设计目的.32.设计要求.33.系统整体设计.34.硬件电路设计.55.程序框图设计.166.课程设计体会.207.附录.228.参考文献.221 设计目的(1)巩固和加深对微机原理及应用课程内容的认识和理解,提高应用水平。(2)掌握汇编语言程序的编程方法。(3)熟悉键盘控制和七段数码管的使用。2 设计要求本课程设计内容包含两个方面:系统硬件设计和软件编程系统硬件设计设计8088计算机系统,系统包含cpu、eprom、ram、pio、中断控制器和定时器等芯片。要求8088工作于

2、最小模式;eprom为16kb、ram为16kb,其地址从00000h开始;8259的地址为20h和21h;8255的地址为60h、61h、62h、63h、64h;8253定时器的地址为30h、31h、32h、33h。显示器采用六个8段数码显示器;键盘采用4 * 4矩阵形式,它们由8255控制。用35*35cm方格纸制图。软件编程内容显示器工作于查询方式,键盘工作于中断方式。16个按键定义的键值为:0 f ,按任意键在显示器上显示对应键值。从键盘输入6个数字使其能够在显示器上从右到左逐位显示。实现计算功能:定义键盘按键:10个数字键(09);六个功能键:+、-、*、=、clear。实现五位十进

3、制数以内的连加、连减运算。实现被除数(2位)、除数(1位)的十进制连除运算。3 系统整体设计微型计算机由微处理器,存储器,接口电路以及连接在这些部件上的总线组成。微处理器,存储器和所有io设备之间的信息交换都通过总线进行。总线包括地址总线,数据总线和控制总线,他们始于cpu或终于cpu,现代微机大部分都是这种以总线为中心的结构。8088cpu的地址数据总线ad15-ad0和地址状态总线a16/s3-a19/s6是复用的,必须通过地址锁存器把地址总线和数据总线分离。控制总线直接和8088cpu相连,这样8088cpu就工作在最小工作方式。 微型计算机及外围设备组成微型计算机系统的硬件,外围设备必

4、须通过接口电路才能与系统总线相连,因此构建一个基于8088cpu的简单微型计算机系统就是工作于最小工作方式的8088cpu系统总线上挂上一定规模的存储器和接口电路,然后在把合适的外围设备连接到接口电路上。一个基于8088cpu的简单微型计算机系统框图如图所示。图中键盘与显示器作为外围设备通过接口芯片与系统总线相连。 ad0 . ad19 cpu wr rdm/io 锁存器 romram接口芯片键盘显示器译码器译码器4 硬件电路设计4.1 cpu与时钟8284 时钟信号发生器时钟发生器8284除了提供频率恒定的单相时钟脉冲clk给cpu外还具有系统复位信号reset产生电路和准备好信号ready

5、控制电路。如果f/c接+5v,则由fei输入外加脉冲,如果f/c接地,由x1和x2连接的石英晶体震荡器提供脉冲源,图中有石英晶体振荡器提供输入脉冲给8284.8088 - 简介8088是一个intel以8086为基础的微处理器,拥有16位元暂存器和8位元外部资料总线。8088使用8位元的设计,所针对的是较为经济之系统。当把8088的mn/引脚接到+5v时,8088cpu工作于最小工作方式。所谓最小工作方式,就是系统中只有一个微处理器8088。在这种系统中所有的总线控制信号都直接由8088产生,系统中总线控制逻辑电路被减小到最小,这种方式适合于较小规模的应用。最小方式下,24-31引脚功能:(1

6、)中断响应信号(输出,低电平有效)是cpu对外设的中断请求的回答信号。对于8088来说,信号实际是位于连续周期中的两个负脉冲,在每个中断响应周期的t2、t3和tw状态,为低电平。第一个负脉冲通知外围设备的接口,它发出的中断请求已经得到允许;外设接口收到第二个负脉冲后,将中断类型码送往数据总线。(2)ale地址锁存允许信号(输出,高电平有效)ale是cpu在每个总线周期的t1状态发出的,其有效电平表示当前在地址/数据复用线上输出的是地址信息,利用它的下降沿把地址信号和信号锁存在74ls373地址锁存器中。ale不能被浮置。(3)数据允许信号(输出,低电平有效,三态)有效表示cpu准备好接受和发送

7、数据,是cpu提供双向数据收发器74ls245的选通信号,在每个访问存储器或访问i/o周期,或中断相应周期均有效。在dma下,被浮置为高阻态。(4)dt/数据收发信号(输出,三态)在系统使用双向收发器74ls245时,用其控制数据的传送方向。如果dt/为高电平,则进行数据发送,如果dt/为低电平,则进行数据接收.在dma下,被浮置为高阻态。(5)/io存储器/io控制信号(输出,三态)用于区分是访问存储器(低电平),还是访问i/o(高电平),通常/io被接至存储器或接口芯片的片选端。当dma时,被浮置为高阻态。(6)wr写信号(输出,低电平有效,三态)wr有效时,表示cpu正在执行存储器或访问

8、存储器。在任何写周期,wr只在t2、t3、tw有效,在dma时,wr被浮置为高阻态。(7)hold总线保持请求信号(输入,高电平有效)它是系统中的其他总线主控部件向cpu发出的请求占用总线的申请信号。(8)hlda总线保持响应信号(输出,高电平有效)它是cpu对系统中其他总线主控部件向其请求总线使用权的响应信号。4.2 电源与复位系统复位信号 图中,由r(560k)、c1(10uf)和二极管d1同8284a组成了系统复位电路,当系统上电工作时,系统电源通过r、c1是res端电位由低变高,该信号经8284a内部电路处理后,输出的reset信号作为8088cpu的复位信号。 根据cpu 对rese

9、t 信号的要求,系统上电后8284a输出reset由低电平变为高电平的复位时间要大于4个时钟周期,因此合理选择r、c1数值是确保8088cpu上电可靠复位的重要条件。复位电路二极管d1是用于当系统电源瞬间掉电时,将c1中存储的电荷快速放掉,这样当系统再次上电时,即保证r和c1的充电时间使8284a输出的reset时间大于4个时钟周期,确保cpu可靠复位,k为手动复位开关。系统电源 系统电源接220v交流电源,经二极管整流桥,电容,稳压管后输出5v直流电。4.3 存储器设计4.3.1 rom设计(2764*2)rom使用的是两片2764芯片,组成8k*2的容量,由于写入过程很慢,所以eprom芯

10、片在使用中是作为只读存储器。4.3.2 ram设计(6264*2)图中rom用于系统存储常驻程序,ram用于存放用户非常驻程序,数据或作为系统堆栈区使用。根据题目要求的容量选用两片eprom2764和两片ram6264,八位数据总线和cpu的低八位数据总线相连,cpu地址总线的a12-a0用于芯片的字选和存储器的地址线相连,a19-a13译码后用做片选,和io引脚经过译码器译码后用作片选。4.4 接口设计4.4.1 接口译码设计4.4.2 8259设计8259a是专门为了对8085a和8086/8088进行中断控制而设计的芯片,它是可以用程序控制的中断控制器。单个的8259a能管理8级向量优先

11、级中断。在不增加其他电路的情况下,最多可以级联成64级的向量优先级中断系统。8259a有多种工作方式,能用于各种系统。各种工作方式的设定是在初始化时通过软件进行的。 在总线控制器的控制下,8259a芯片可以处于编程状态和操作状态.编程状态是cpu使用in或out指令对8259a芯片进行初始化编程的状态。在有多个中断源的系统中,接受外部的中断请求,并进行判断,选中当前优先级最高的中断请求,再将此请求送到cpu的intr端;当cpu响应中断并进入中断子程序的处理过程后,中断控制器仍负责对外部中断请求的管理。4.4.3 8255设计接口电路是cpu和外围设备进行数据交换的缓冲区域,图中的8255a是

12、一个有3个数据口、1个控制/状态口的8位并行输入输出接口可编程芯片,能接通键盘、打印机、显示器等外围设备等。8255a的数据线接系统总线的低八位,控制端口和系统的相应控制端口相连。图中,pa口连接led8段显示器,pc口连接显示器的位选信号,pb口接4*4key的行线。a0,a1接8088的a0,a1地址线,8088的高位地址经译码后与cs连接,由此,8055的地址是60h,61h,62h,63h。4.4.4 8253设计a0,a1接8088的a0,a1地址线,8088的高位地址经译码后与cs连接,8253的地址由30h开始并且连续。4.5 外设电路设计4.5.1 6*led设计一个led数码

13、管可用来显示一位09十进制数和一个小数点。小型数码管(0.5寸和0.36寸)每段发光二极管的正向压降,随显示光(通常为红、绿、黄、橙色)的颜色不同略有差别,通常约为22.5v,每个发光二极管的点亮电流在510ma。led显示器有静态和动态两种工作方式led显示器工作在静态显示方式下,共阴极或共阳极连接在一起,然后接地或+5v;每位的段选线(a,b,g,h)与一个8位并行口pa口相连。这样,只要在每一位的段选线上保持段选码电平,该位就能保持相应的显示字符。在多位led显示时,将所有位的段选线并联在一起,由一个8位的i/o口控制,即控制段选码而共阴极或共阳极点分别由相应的i/o线控制即控制位选码,

14、这就是动态显示。6位led动态显示电路只需一个8位i/o口及一个6位i/o口,其中8个i/o控制段选码,6位i/o控制位选。进行6位字符显示时,采用扫描显示方式,即在每一瞬间只使某一位显示相应字符,在此瞬间,段选控制i/o口输出相应字符段选码,位选控制i/o口在该显示位送入选通电平(共阴极送低电平,共阳极送高电平),以保证该位显示相应字符。如此轮流,使每位显示该位应显示字符,并保持延迟一段时间(15ms),以造成视觉暂留效果。不断循环送出相应的段选码、位选码,就可以获得视觉稳定的显示状态。为节省成本,这里用的是软件译码。4.5.2 4*4key设计图中有4行4列,4根线于pb口相连,2根列线与

15、pb口的pb2,pb3相连。按键设置在行、列交点处(数字或字符为其键号),行、列线分别连接到按键开关的两端。当列线通过上拉电阻接+5v时,就被钳位在高电平状态。键盘中有无键按下是由行线送入全扫描字、列线读入行线状态来判断的。这就是:给行线所有i/o线均置成低电平,然后读入列线电平状态。如果有键按下,总会有一根列线电平被拉至低电平,从而使列线输入不全为1。键盘中哪一个键按下是由行线逐行置低电平后,检查列线输入状态予以确定的。其方法是:依次给每根行线送低电平,然后查所有列线状态,如果全为1,则所按下之键不在次行。如果不全为1,则所按下之键必在此行。而且是在与0电平行线相交点上的那个键。键盘的工作方

16、式采用编程扫描工作方式,即通过调用键盘子程序来响应键输入的要求,在键盘扫描子程序中完成下述功能:1) 判断键盘上有无键按下。其方法是先使pa0pa30,然后读pb2、pb3的状态,若全为1,则键盘中无键按下;若不全为1,则说明键盘中有键按下。2) 去除按键的抖动影响。对于由机械触点构成的按键,由于机械触点的弹性作用,触点在闭合及断开瞬间有一个抖动过程,一般为510ms时间。为了消除抖动影响可作这样处理:当判断有键按下后,软件延时一段时间在判断键盘状态,如果仍有键按下状态,则认为有一个确定的键按下,否则按键抖动处理。3) 求按下键的键值及键号。键盘上的每个键都对应一个键值。键值的组成:低8位为扫

17、描该键时的行线输出值,高8位为该键按下时的列线输入值(有效位为0,其余位令其为1)。由于键盘中键号排列无规律,不能通过对键值直接运算得到键号。因此必须先判断按下键是使pb2=0还是pb3=0,然后再查为零的列线上键按下时其8位键值中是否有一位为零,若为零则可得到键值。求按下键的键值及键号的目的是使程序转到相应的地址去完成该键的操作。一般,对数字键就是直接将该号送到显示缓冲区进行显示,对功能键则必须先找到该功能键处理程序入口地址,并转去执行该键的命令。因此当键号求到后,还必须找到功能处理入口。4) 为保证键闭合依次cpu仅进行依次键功能操作。程序中需要等待键释放以后再将键号送累加器ah。4.6

18、系统抗干扰设计4.6.1 地线处理这里的接地指接大地,也称作保护地。为单片机系统提供良好的地线,对提高系统的抗干扰能力极为有益。特别是对有防雷击要求的系统,良好的接地至关重要。上面提到的一系列抗干扰元件,意在将雷击、浪涌式干扰以及快脉冲群干扰去除,而去除的方法都是将干扰引入大地,如果系统不接地,或虽有地线但接地电阻过大,则这些元件都不能发挥作用。为单片机供电的电源的地俗称逻辑地,它们和大地的地的关系可以相通、浮空、或接一电阻,要视应用场合而定。不能把地线随便接在暖气管子上。绝对不能把接地线与动力线的火线、零线中的零线混淆。(数字地线和模拟地线、高频地线和低频地线)4.6.2 芯片抗干扰处理为提

19、高单片机本身的可靠性。近年来单片机的制造商在单片机设计上采取了一系列措施以期提高可靠性。这些技术主要体现在以下几方面。 1.降低外时钟频率 外时钟是高频的噪声源,除能引起对本应用系统的干扰之外,还可能产生对外界的干扰,使电磁兼容检测不能达标。在对系统可靠性要求很高的应用系统中,选用频率低的单片机是降低系统噪声的原则之一。以8051单片机为例,最短指令周期1s时,外时钟是12mhz。而同样速度的motorola 单片机系统时钟只需4mhz,更适合用于工控系统。近年来,一些生产8051兼容单片机的厂商也采用了一些新技术,在不牺牲运算速度的前提下将对外时钟的需求降至原来的1/3。而motorola

20、单片机在新推出的68hc08系列以及其16/32位单片机中普遍采用了内部琐相环技术,将外部时钟频率降至32khz,而内部总线速度却提高到8mhz乃至更高。 2.低噪声系列单片机 传统的集成电路设计中,在电源、地的引出上通常将其安排在对称的两边。如左下角是地,右下角是电源。这使得电源噪声穿过整个硅片。改进的技术将电源、地安排在两个相邻的引脚上,这样一方面降低了穿过整个硅片的电流,一方面使外部去耦电容在pcb设计上更容易安排,以降低系统噪声。另一个在集成电路设计上降低噪声的例子是驱动电路的设计。一些单片机提供若干个大电流的输出引脚,从几十毫安到数百毫安。这些大功率的驱动电路集成到单片机内部无疑增加

21、了噪声源。而跳变沿的软化技术可消除这方面的影响,办法是将一个大功率管做成若干个小管子的并联,再为每个管子输出端串上不同等效阻值的电阻。以降低di/dt。 时钟监测电路、看门狗技术与低电压复位 监测系统时钟,当发现系统时钟停振时产生系统复位信号以恢复系统时钟,是单片机提高系统可靠性的措施之一。而时钟监控有效与省电指令stop是一对矛盾。只能使用其中之一5 程序框图设计5.1.1 主程序框图。 开始8255/8259初始化有无中断显示扫描是数字键?有标志?加号?减号?设加标志设减标志清零显示器,清标志位保存数据放键?显示扫描清零显示器除号?yyyyyyynnnnnn设除标志等号?n进行加、减、除运

22、算,保存结果先于运算符清零十六进制转换yynn关中断开中断5.2 系统自检设计5.2.1 系统自检功能对ram的测试,首先,测试地址线, 1。0滑动,随机选择一个数如55、aa之类,依次写到feh、fdh、fbh、f7h、efh、dfh、bfh、7fh地址单元里去,把地址写成二进制数,可以看到比特0在地址总线上从低到高滑动,谓之0滑动。目的是测试这些地址线在依次变0时是否稳定正常。当每一根线由1变0,会产生下冲,如果下冲控制不好,在高频时会引起错误。单板上地址线不一定一样长,下冲也就不会完全一样,因此,每一根线都单独测一下下冲性能。 2。1滑动,随机选择一个数如55、aa之类,依次写到1h、2

23、h、4h、8h、10h、20h、40h、80h地址单元里去,把地址写成二进制数,可以看到比特1在地址总线上从低到高滑动,谓之1滑动。,目的是测试这些地址线在依次变1时是否稳定正常。当每一根线由0变1,会产生上冲,如果上冲控制不好,在高频时会引起错误。单板上地址线不一定一样长,上冲也就不会完全一样,因此,每一根线都单独测一下上冲性能。上冲和下冲是不同的指标,要分别测一下。 3。全0变全1,随机选择一个数如55、aa之类,写到ffh单元,再写到00h单元,然后写到ffh单元。把地址写成二进制数,可以看到地址线从全0变到全1。由信号处理理论知,在电压阶跃跳变时包含无限宽频谱,其中高频部分对外产生辐射,这些辐射信号是干扰源,对临近线路产生较大影响。地址线一般集束布线,同时跳变会引起最大干扰。地址线从全0变到全1,干扰、上冲、扇出电流影响最大。 4。全1变全0,紧接上一步,随机选择一个数如55、aa之类,写到00h单元。把地址写成二进制数,可以看到地址线从全1变到全0,产生最大下冲干扰。 5。粘连测试。依次向不同地址单元写入不同数据并读出判断,如:1、2、3、4.此步骤捎带测试了ram好坏。注意,千万别用相同数据测试,否则测不出粘连。 6。可选全0全1连续高速变化。目的是模拟最恶劣情况(大扇出电流、强干扰、上/

温馨提示

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

评论

0/150

提交评论