1、接口课程设计报告格式微机原理与接口技术课程设计报告2009-2010学年第二学期设计题目: 计时器系统设计 小组成员:张丽君、张君、刘华松、路芳芳、张明所学专业: 计算机科学与技术 指导教师: 高国红 完成时间: 2010-06- 内容提要微机原理与接口技术是一门实践性和实用性都很强的课程,学习的目的在于应用。掌握8255、8259、8253芯片使用方法和编程方法,通过本次课程设计,学以致用,进一步理解所学的相关芯片的原理、内部结构、使用方法等,学会相关芯片实际应用及编程,系统中采用8088微处理器完成了电子钟的小系统的独立设计。同时并了解综合问题的程序设计掌握实时处理程序的编制和调试方法,掌
2、握一般的设计步骤和流程,使我们以后搞设计时逻辑更加清晰。目录一、设计的目的要求 1二、系统的主要功能 1三、设计所用芯片结构 41、8259A芯片的内部结构及引脚 42、8255芯片的内部结构及引脚 53、8253芯片的内部结构及引脚 6四、源程序清单: 8五、连线图 11六、设计总结及心得体会 11参考文献: 12一、设计的目的要求 学习和掌握计算机中常用接口电路的应用和设计技术,充分认识理论知识对应用技术的指导性作用,进一步加强理论知识与应用相结合的实践和锻炼。通过这次设计实践能够进一步加深对专业知识和理论知识学习的认识和理解,使自己的设计水平和对所学的知识的应用能力以及分析问题解决问题的
3、能力得到全面提高。 该系统的要求利用8253定时器设计一个具有分、秒显示的电子时钟,并定义一个脉冲kk+2,当按下该键时时钟从当前设定值(00:00)开始走时。 二、系统的主要功能 该系统是一个简单的利用8253定时器、8255可并行通信接口和中断控制器8259设计的电子时钟系统。8253定时器开始计时(8253的初值为10000,接1MHz的脉冲,即当8253计满100时正好是1S),当计时计满100时,8259便产生一次中断,在LED显示器便显示系统预先设计好的初始值“00:00”便开始从秒位开始加1,当加到10S时,10s位加1,加到60S时分位加1,同时秒位清零。 该系统主要接口部件有
4、:可并行通信接口8255一片,计数器/定时器8253一片,中断控制器8259一片,七段LED数码管显示器4个以及译码电路等。其中各个部件的初始化如下:1、可并行通信接口8255的控制字是方式选择控制字,A口工作在方式0(即基本输入输出方式)下,并且为输出状态,B口工作在方式0下,为输出口,C口低四位为输入口,其初始化为:8255控制口地址为63h A端口地址为60h B端口地址为61h C端口地址为62hmov dx,63h mov al,10000001b out dx,al 2、做为计数器的计数器/定时器8253,在设置好计数初值(即定时常数)后,便开始减1计数,为0时,输出一个信号;控制
5、字设置:BCD为设置为计数值为二进制格式,模式选择为模式2(即为分频器,当控制字写入后,输出段OUT变为高电平作为初始状态,当计数初值写入初值寄存器后,下一个时钟脉冲时,计数初值被写到计数执行部件,然后计数执行部件做减1计数,减到1时,输出端OUT变为低电平;完成一次计数过程后,输出端OUT又变为高电平,开始一个新的计数过程,由此可以周而复始的进行下去),读写指示位为先写低8位字节,在读写高8位字节,计数器选择计数器0。其中8253的计数初值为10000d,当接1MHZ的脉冲时,分频后的输出值为0.01S。8253的初始化为: 8253控制端口地址为43h 计数器0 端口地址为40h mov
6、al , 34h mov dx , 43h out dx , al mov dx , 40h mov ax , 2710H out dx , al mov al , ah out dx , al 3、中断控制器8259的初始化为:ICW1,用来指示ICW1的标志的D4=1,LTIM为0(即中断请求为边沿触发方式),系统只用一片8259,所以SNGL为1,因为初始化程序将用到ICW4,所以,IC4为为1;ICW2设置中断类型码的初始化命令字,必须写到8259的奇地址端口中,ICW2是任选的,而ICW2一旦确定下来,8259的8个中断请求信号输入引脚IR0IR7所对应的8个中断类型码也确定了;IC
7、W4方式控制初始化命令字,它也要求写入奇地址端口,不过ICW4并不总是需要写入的,只有在ICW1的第0位为1时,才有必要设置ICW4,其中,D7D5三为总是为0,作为ICW4的标识码,SFNM位为0,BUF位为0,M/S位为0,AEOL位为0,D0为为1表示8259当前所在的系统为16位或32位系统;OCW1中断屏蔽操作命令字,要求写入8259的奇地址端口; mov al,13h mov dx,20h out dx,al ;ICW1初始化 mov al,08h mov dx,21h out dx,al ;ICW2初始化 mov al,01h out dx,al ;ICW4初始化 in al,d
8、x and al,0feh out dx,al 该系统的主要工作原理为:在主程序中,要对各个用到的芯片进行初始化,在对8253进行初始化时,使它用方式2,每10ms 产生一次脉冲。在系统总8253的输入时钟频率为1MHZ,定时常数设为10000,则定时周期正好为10ms。由于8253的定时输出与8259的IR0相连,所以,系统中每隔10ms便由8253对8259产生一次中断请求,即每隔10ms执行一次中断处理程序。本系统将与时间密切相关的两个模块即显示模块和计时模块放在中断处理程序中,这样,就保证了LED的数字每隔10ms得到一次刷新,从而保证了数字显示的稳定。中断处理程序完成计时功能要依靠两
9、个方面,因为中断处理程序是每10ms执行一次,但计时并不是一10ms 为单位进行的,而是以秒为单位进行的,所以,计时功能的事项一方面要利用10ms这个基准时间单位,另一方面要借助于一个计数单元。计数单元的初始值为100,每进行一次中断,便使计数单元的内容减1,也就是说,每10ms作一次计数。每当计数单元从100减为0时,说明已经经过了10ms*100=1s时间,于是使秒位加1。秒位加1之后,又须判断由此而可能引起的进位,如有进位,则应实现正确的修改。修改完以后,再将LED显示一遍。三、设计所用芯片结构1、8259A芯片的内部结构及引脚中断控制器8259A是Intel公司专为控制优先级中断而设计
10、开发的芯片。它将中断源优先排队、辨别中断源以及提供中断矢量的电路集中于一片中。因此无需附加任何电路,只需对8259A编程,就可以管理8级中断,并选择优先模式和中断请求方式,即中断结构可以由用户编程来设定。在MD微机系统中,8259芯片工作于单片方式。8259引脚图如图3.3,各引脚功能如下。D7D0八条双向数据线;WR(低电平有效)写输入信号;RD(低电平有效)读输入信号;CS(低电平有效)片选输入信号;A0地址信号;INT中断请求信号;INTA(低电平有效)中断响应信号;CAS0CAS2级联信号,形成一条专用8259A总线,以便多片8259A的级联;图3.1 8259A引脚图SP/EN从编程
11、/允许级联。在缓冲方式中,可用做输出信号以控制总线缓冲器的接收和发送。在非缓冲方式中,作为输入信号用于表示主片还是从片;IR0IR7外部中断请求输入线。要求输入的中断请求信号是由低电平到高电平的上升沿(并保持高电平到CPU响应时为止)或者是高电平。8259中断矢量地址与中断信号之间的关系如表3.1所示:表3.1 8259A中断矢量表中断序号01234567功能调用08H09H0AH0BH0CH0DH0EH0FH矢量地址20H23H24H27H28H2BH2CH2FH30H33H34H37H38H3BH3CH3FH说明时钟键盘可用可用串行口可用可用可用2、8255芯片的内部结构及引脚8255可编
12、程外围接口芯片是Intel公司生产的通用并行I/O接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种工作方式下工作:方式0基本输入/输出方式方式1选通输入/输出方式方式2双向选通输入/输出方式8255引脚图如图3.2示,各引脚功能如下。D7D0与CPU侧连接的八条双向数据线;WR(低电平有效)写输入信号;RD(低电平有效)读输入信号;CS(低电平有效)片选输入信号;A0、A1片内寄存器选择输入信号;PA7PA0A口外设双向数据线;PB7PB0B口外设双向数据线;PC7PC0C口外设双向数据线;RESET复位输入信号2、8255端口地址表3.2 8255端口地址表信号线寄存
13、器编址IOY3A口60HB口61HC口62H控制寄存器63H3、8253芯片的内部结构及引脚8253可编程定时/计数器是Intel公司生产的通用外围芯片之一,有3个独立的十六位计数器,技术频率范围为02MHZ,它所有的技术方式和操作方式都通过编程控制。8253的功能用途是:(1) 延时中断(2) 可编程频率发生器(3) 事件计数器(4) 二进倍频器(5) 实时时钟(6) 数字单稳(7) 复杂的电机控制器8253有六种工作方式:(1) 方式0:计数结束中断(2) 方式1:可编程频率发生器(3) 方式2:频率发生器(4) 方式3:方波频率发生器(5) 方式4:软件触发的选通信号(6) 方式5:硬件
14、触发的选通信号8253引脚图如图3.3示,各引脚功能如下。D7D0八条双向数据线;WR(低电平有效)写输入信号;RD(低电平有效)读输入信号;CS(低电平有效)片选输入信号;A0、A1片内寄存器地址输入信号;CLK计数输入,用于输入定时基准脉冲或计数脉冲;OUT输出信号,以相应的电平指示计数的完成,或输出脉冲波形;GATE选通输入(门控输入),用于启动或禁止计数器的操作,以使计数器和计测对象同步。表3.3 8253端口地址表2、8253端口地址信号线寄存器编址IOY20#计数器40H1#计数器41H2#计数器42H控制寄存器43H四、源程序清单:DATA SEGMENT TABLE DB 3F
15、H,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH TIME DB 00,00,00,00DATA ENDSCODE SEGMENT ASSUME CS:CODE , DS:DATAStart: MOV AX, CSMOV DS, AXMOV AX, OFFSET IRQ6 ;irq6送中断向量表 MOV SI, 0038H MOV SI, AX MOV AX, 0000H MOV SI, 003AH MOV SI, AX MOV AX, OFFSET IRQ7 ;irq7送中断向量表 MOV SI, 003cH MOV SI, AX MOV AX, 0000H MOV
16、 SI, 003AH MOV SI, AX MOV 63,81H ;8255初始化,A,B口输出,C口输入 MOV AL,94H ;8253初始化,计数器0,方式3 MOV DX, 43H OUT DX, ALSUN: MOV AX, 10 MOV DX, 40H OUT DX, AL MOV AL, AH OUT DX, AL CALL DALLY CALL DISPLAY JMP SUN RETIRQ6: STIMOV DX,OFFSET TIME ;TIME 时间置为00:00 MOV DX, 00H INC DX MOV DX, 00H INC DX MOV DX, 00H INC D
17、X MOV DX, 00H MOV AL, 20H OUT 20H, AL IRET ;IRQ6结束IRQ7: STIMOV DX,OFFSET TIME ;调秒的个位 MOV AX, DX INC AXCMP AX, 0AH JE LOP1 ;判断对应薄码 MOV DX, AX IRETLOP1: MOV DX, 00H INC DX ;调秒的十位 MOV AX, DX CMP AX, 06H JE LOP2 ; 判断对应薄码 INC AX MOV DX, AX RETLOP2: MOV DX, 00H INC DX ;调分的个位 MOV AX, DX CMP AX, 0AH JE LOP3
18、 ; 判断对应薄码 INC AX MOV DX, AX RETLOP3: MOV DX, 00H INC DX ;调分的十位 MOV AX, DX CMP AX, 06H JE LOP4 ; 判断对应薄码 INC AX MOV DX, AX RETLOP4: MOV DX, 00H RET ;置时钟为00:00 MOV AL, 20H OUT 20H, AL IRET ;IRQ7终端结束DISPLAY: PUSH AX ;在LED上显示TIME 的时间 PUSH DX MOV SI, OFFSET TIME MOV SH, FEDISP: MOV AL, SI MOV BX, OFFSET T
19、ABLE XLAT OUT 61, AL MOV AL, AH OUT 60, AL CALL DALLY CMP AH, DF JZ QUIT INC SI ROR AH, 1 JMP DISP QUIT: POP DX POP AX RET ;子程序结束DALLY: PUSH CX ;调用延迟子程序 PUSH AX MOV CX, 0040H A3: MOV AX, 056CH A4: DEC AX JNE A4 LOOP A3 POP AX POP CX RET ;子程序返回CODE ENDS END START五、连线图六、设计总结及心得体会 经过两周努力,在指导老师和同学的帮助下,终
20、于如期完成了该电子时钟的课程设计。当然在课程设计的过程中遇到了许多问题,但是经过查阅有关资料和向老师、同学请教后,还是一一解决了。 系统设计的开始几天的时间,没有什么大的进展,仅仅是初始界面就调试了很长时间才成功,以后的几天的时间开始调中断程序,程序中一旦有了中断,调试就困难了,调中断调了好几天,难度挺大的,任何一个初始化的失误都可能使你的程序不正常,所以写程序的时候一定要仔细,考虑问题一定要全面,最后使各部分捏成一整体,让整个程序顺利运行,这部分不是很难,所以只用半天就调完了。通过本次课程设计,使我在课堂中学到的东西充分的融入到实践当中。进一步的熟悉了可并行通信接口8255、计数器/定时器8
21、253及中断控制器的编程原理和7段LED数码管显示器的工作原理,为以后独立的设计系统提供了丰富的实践经验。参考文献:1戴梅萼,史嘉权编著.微型计算机技术及应用(第三版).北京:清华大学出版社,20032周明德编著.微型计算机系统原理及应用(第四版).北京:清华大学出版社,20023李顺增,吴国东,赵河明等.微机原理及接口技术.北京:机械工业出版社,20064眭碧霞.微型计算机原理与组成M.人民邮电出版社,2003.85钱晓捷,陈涛,微型计算机原理及接口技术机械工业出版社1999年1月6郑初华,汇编语言、微机原理及接口技术,电子工业出版社,2006年7杨立新.微型计算机原理和应用M.北京:科学技术文献出版社,1986.11 8李大友.微型计算机原理M.北京:清华大学出版社,1998.7
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1