微机原理与接口技术课程设计报告

合集下载

《微机原理及接口》课程设计报告-简单的动画设计

《微机原理及接口》课程设计报告-简单的动画设计

一、设计任务1.程设计的目的更深入的了解汇编这门语言,并从中学到东西掌握知识的深度、运用理论去处理问题的能力、实验能力、课程设计能力。

提高我们对学习认真负责、一丝不苟,对同学团结友爱,协作攻关的基本素质。

培养我们从资料文献、科学实验中获得知识的能力,提高我们从别人经验中找到解决问题的新途径的悟性,初步培养工程意识和创新能力。

培养我们勇于探索、严谨推理、实事求是、有错必改,用实践来检验理论,全方位考虑问题等科学技术人员应具有的素质。

学习汇编语言综合应用程序设计方法,提高汇编语言实际应用能力,充分了解计算机硬件和软件,完成理论到实践的推进过程。

2.课程设计要求(1)根据微机软、硬件条件,每人选定一个具有一定综合性的程序设计题目A对题目进行模块分析B 系统设计实用,功能全面C 按时按量完成任务(2)按时间上机完成调试任务3.设计任务在DOS环境中编程完成以下任务:(1)以滚动方式输出下车动态行驶图形(2)小车在公路上动态行驶,从屏幕左侧驶向屏幕右侧后,在到达屏幕右侧后,公路下降。

(3)段距离并改变颜色,然后小车继续由左向右行驶(4)当下降到屏幕底部时,再返回到屏幕顶部重复上述过程(5)直到有键按下时,程序运行结束(6)设计说明书:设计思想、参考程序的程序流程图和源程序4.设备IBM—PC微型计算机一台二、设计方案1、设计思想主程序思想:使用BIOS中断调中显示器控制用子程序,要求显示动态效果图像即为一辆小车在公路上动态行驶,到达屏幕右方时,公路下降并改变颜色,小车又从左向右行驶以此循环,直至有键按下时结束程序。

2、主程序流程框图3、源程序代码data segmentline dw 10 ;定义行变量color db 1 ;定义公路颜色color1 db 0 ;定义小车颜色corlum dw 2 ;定义列变量count1 dw 0count2 dw 0count3 dw 0 ;车体模型car_8 db 00000011b,11100000bdb 00000010b,01010000bdb 00000110b,01011000bdb 01111111b,11111110bdb 11111111b,11111111bdb 11111011b,11101111b2db 00001010b,00101000bdb 00000100b,00010000bdata endscode segmentassume cs:code,ds:datastart: mov ax,datamov ds,axmov dx,80mov ah,0fhint 10hmov ax,0004hint 10hmov ah,0bhmov bh,1 ;选择1号调色板mov bl,0int 10hll: mov al,color ;设置公路颜色inc alcmp al,3jbe tt2sub al,3tt: mov color1,al ;设置小车颜色cmp al,1jz tt3inc alcmp al,3jz tt2tt3: inc altt2: mov color,almov ax,line ;计算机行坐标add ax,10cmp ax,180jbe tt1sub ax,180tt1: mov line,axmov ah,0ch ;写像素mov dx,lineadd dx,8 ;计算公路坐标mov cx,0mov al,color ;设置公路颜色repet: mov bx,3push axint 10h ;画公路pop axinc cxcmp cx,319 ;未到屏幕最右转jnz repetmov ah,0ch ;画车模mov dx,line ;设置行坐标mov cx,corlum ;设置列坐标mov si,offset car_8 ;取车模首坐标mov count1,8 ;8行retry1: mov count2,2 ;每行2字节retry2: mov count3,8 ;每字节8位retry3: rol byte ptr[si],1mov al,0 ;此位为0,置背景颜色jnc nextmov al,color1 ;此位为1,置背景颜色next: push axpush cxint 10h ;画一个点pop cxpop axinc cx ;列加1dec count3jnz retry3 ;未画完8个点转inc si ;取下一个字节的车模信息dec count2jnz retry2 ;车模信息未转完inc dxmov cx,corlumdec count1jnz retry1 ;未画完8行转mov count1,320-18 ;设置移动总次数mov cx,corlumadd cx,15 ;小车最右点的列坐标送cxrepet1: push cx ;小车横向有16个点,外加1个空白点mov count2,16+1repet2: mov dx,line ;车模向右移动1 个像素位mov count3,8repet3: mov ah,0dhint 10h ;读当前点mov ah,0chpush cxinc cxint 10h ;写当前右边的点pop cxinc dx ;行坐标加1dec count3 ;车模向右移动1个像素位未完转jnz repet3dec cx ;修改列坐标dec count2 ;小车移动1个车体位未完转jnz repet2pop cxinc cx ;修改列坐标mov ah,1int 16hjnz exit ;有键按下,转退出dec count1jnz repet1mov dx,line ;清除公路和车模call clearsjmp ll ;无键按下,继续执行exit: mov ah,0 ;恢复文本显示方式mov al,2int 10hmov ah,4chint 21hclears proc nearpush axpush cxpush bxmov ax,0c00hmov bx,10cls0: mov cx,0cls1: int 10hinc cxcmp cx,320jnz cls1inc dxdec bxjnz cls0pop bxpop cxpop axretclears endpcode endsend start三.程序的调试与运行1、程序的调试程序的分析、代码的编写完成后,开始对代码进行编译和调试,我们采用DOS 环境对所编代码进行调式、编译。

《微机原理与接口技术》课设报告正文

《微机原理与接口技术》课设报告正文

目录摘要 (2)1 设计概述 (3)1.1设计任务及要求分析 (3)1.2方案比较及认证说明 (3)1.3系统原理阐述 (4)2 程序设计关键资料 (4)2.1 BIOS中断的显示输出管理(INT 10H) (4)2.1.1设置显示方式 (5)2.1.2文本方式 (5)2.1.3 置光标位置AH=02H (6)2.1,4 屏幕的上下移动AH=06H/07H (6)2.2 DOS功能调用(INT21H) (6)2.2.1调用方法 (7)2.2.2常用的系统功能调用(设计中使用) (7)3 程序流程图及代码分析 (7)3.1 主程序 (8)3.2显示姓名子程序 (9)3.3 延时子程序 (11)3.4 清屏子程序 (12)4 程序调试及结果分析 (14)4.1 程序调试及问题处理 (14)4.2 调试结果分析 (14)结束语 (16)参考资料 (17)附件:源程序清单及调试屏幕界面 (18)摘要本设计是编写汇编语言并在在Masm for windows的汇编软件环境之下使屏幕上显示我自己的名字“韦增泰”并使其从右向左循环移动。

其中应用到BIOS 中断中INT10的多个调用,方便程序编写。

本次课程设计的程序由一个主程序和若干个子程序(延时子程序、清屏子程序、显示姓名子程序)来完成设计任务所要求的功能。

并运行汇编软件进行调试。

课程设计是培养和锻炼学生在学习完本门课后综合应用所学理论知识解决实际工程设计和应用问题的能力的重要教学环节,是培养在校工科大学生理论联系实际、独立自主解决设计实践中遇到的各种问题能力的一种好方法。

关键词:BIOS中断 INT10 汇编语言程序显示名字字样的程序设计1 设计概述1.1设计任务及要求分析对任务书进行分析可知,本课程设计的任务用汇编语言设计显示自己姓名“韦增泰”的程序,并且要求姓名在屏幕上从右往左移动且按 Q键退出程序。

课程设计的基本要求为了解设计任务需求,收集有关资料、查阅有关书籍,在掌握原理、理清思路、认真分析的前提下进行程序编写,同时进行认真调试。

《微机原理与接口技术》课程设计报告

《微机原理与接口技术》课程设计报告

《微机原理与接口技术》课程设计题目:开关控制霓虹灯专业班级:姓名:同组人:日期:2011年1月4日设计内容:通过一个可编程并行接口芯片8255A,用四个开关控制十六种霓虹灯的状态,每个状态中有8个灯(4个红灯,2个绿灯,2个红灯)并且每个状态都可循环。

霓虹灯变化规律:(1)S0:①②绿灯亮①②黄灯亮、①②红灯亮,循环;(2)S1:①②红灯亮、①②绿灯亮①②黄灯亮、③④红灯亮、①②绿灯亮①②黄灯亮、①②红灯亮、①②黄灯亮③④红灯亮,循环;(3)S2:8灯全亮、8灯全灭、①②红灯亮、①②红灯亮①②绿灯亮①②黄灯亮、①②③④红灯亮①②黄灯亮,循环;(4)S3:①黄灯亮、①绿灯亮、④红灯亮,循环;(5)S4:③④红灯亮、①②红灯亮、①②绿灯亮①②黄灯亮、8灯全亮,循环;(6)S5:8灯全亮、4红灯全亮、①④红灯亮,循环;(7)S6:②绿灯亮①②黄灯亮①红灯亮、②③④红灯亮,循环;(8)S7:①黄灯亮、②黄灯亮、①绿灯亮、②绿灯亮、①红灯亮、②红灯亮、③红灯亮、④红灯亮,循环;(9)S8:②黄灯亮②③④红灯亮、①②绿灯亮①黄灯亮①红灯亮,循环;(10)S9:①黄灯亮、①红灯亮、①黄灯亮、②黄灯亮、②红灯亮、④红灯亮、②绿灯亮、①绿灯亮,循环;(11)S10:在实验箱上从左到右依次亮灯,每到下一个灯前一个灯就会熄灭,当到最右边时再从右到左亮灯,每到下一个灯时前一个灯就会熄灭,循环;(12)S11:在实验箱上的一排灯中间的两盏灯最开始亮,之后向两边扩展亮,8灯全亮后再8灯全灭,循环;(13)S12:在实验箱上的一排灯开始最左边的灯亮,向右一个一个逐次增加亮灯,直到8灯全亮,循环;(14)S13: 在实验箱上的一排灯开始最左边的2个灯亮,向右两个两个逐次增加亮灯,直到8灯全亮,循环;(15)S14: 在实验箱上的一排灯开始最左边的2个灯亮,向右依次亮灯,每到下两个灯时前两个灯就会熄灭,循环;(16)S15: 在实验箱上的最右边三个灯亮,其中左边的一个亮灯向左推进,到最左边后停止不动;然后第二个亮灯向左推进,到达左边第二个灯时停止不动;之后第三个亮灯向左推进;当左边三灯全亮时按照相反的顺序向右推进,直到右边三灯再次全亮;循环。

《微机原理与接口技术》课程设计实验报告-交通灯控制功能设计

《微机原理与接口技术》课程设计实验报告-交通灯控制功能设计
7
微机课程设计——交通灯控制系统
中断子程序模块是通过扩充中断源实现的,主要是通过设置 8259 的工作模 式,开放 TR1 和 TR0 的中断,按上开关 K 后,TR0 就发生中断,在 TR0 中断没有 触发的情况下,从 OU1 口输出一个上升沿脉冲,TR1 就中断一次, 程序如下所示:
QUERY: MOV DX,MY8259_OCW3 MOV AL,0CH OUT DX,AL IN AL,DX ;读出查询字 ;判断中断是否已响应 ; 没有响应则继续查询 ; 向 8259 的 OCW3 发送查询命令
《微机原理与接口技术》 课程设计实验报告
题目:交通灯控制功能设计
指导老师:
专业:
班级:
目录
微机课程设计——交通灯控制系统
ห้องสมุดไป่ตู้
一、设计思想和实施方案论述,硬件原理图及分析 1.1、课程设计名称 1.2、课程设计要求 1.3、课程设计目的 二、设计思想和实施方案论述,硬件原理图及分析 2.1、设计思想和实施方案 2.2、硬件原理图 三、典型模块以及典型编程技巧分析 3.1、8086 典型模块分析 3.2、编程技巧分析 四、设计中遇到的问题及解决方法 五、程序清单和程序注释,相关流程图 5.1 程序清单和注释 5.2、实验室及流程图 六、收获与体会 七、参考文献
微机课程设计——交通灯控制系统
MOV OUT 器输出 1HZ 的方波
AL,2 DX,AL ;1.041667MHZ/2000/1000=1HZ, 即计数
数码管的显示是通过调用显示函数实现的, 通过设置 8255 的工作模式, 选择数码管的高位工作, 然后将计数的高位送到数码管, 再选择数码管的低位工 作,然后将计数的低位送到数码管,在 1s 钟内多次扫描就可以消除闪烁,从而 达到理想的计数效果,它的程序如下所示:

微机原理与接口技术课设报告

微机原理与接口技术课设报告

微机原理与接口技术课程设计报告2012年 12 月 15目录一、课程设计目的和意义 (3)二、设计任务 (3)三、设计思想 (3)四、设计原理 (3)1.8254 可编程间隔定时器 (4)2、8255可编程外围接口芯片 (6)3、音符与频率对照关系 (7)五、软件流程图 (8)六、硬件接线图 (9)七、心得体会 (10)八、代码 (10)一、课程设计目的和意义通过本次课程设计要掌握8254、8255芯片使用的方法,灵活运用课本知识,加深所学的知识,对所学的相关芯片的原理、内部结构、使用方法等有更加深刻的了解,学会利用课本知识联系实际应用及编程。

同时并了解综合问题的程序设计掌握实时处理程序的编制和调试方法,掌握一般的设计步骤和流程,使我们以后搞设计时逻辑更加清晰。

二、设计任务利用微机原理试验箱,设计简易电子琴,要求至少可以弹出7个音节,弹出音节可在计算机屏幕和数码管显示。

三、设计思想本系统设计的电子时钟以8086微处理器作为CPU,用8254做定时计数器产生时钟频率,8255做可编程并行接口显示弹奏音节。

在此系统中,8254的功能是定时计数,接入8254的CLK信号为周期性时钟信号。

8254采用计数器0工作于方式0和方式3。

四、设计原理本程序的主要设计原理是键盘数字键1~7按下控制选择不同的频率,实现计时结果的数码管和计算机屏幕显示,按SPACE退出程序。

程序先判断按键是否合法(在1~7),合法则键盘数字键1~7分别对应不同的子程序,8254写入不同的计数值,产生不同的频率,输出到发声单元发声。

1.8254 可编程间隔定时器图1 8254初始化字由此,本设计中的8254的初始化为:MOV AL, 30H ;采用计数器0,方式0,MOV DX, MY8254_ModeOUT DX, ALMOV AL, 37H ;计数器0,方式3MOV DX, MY8254_ModeOUT DX, AL8254 是Intel 公司生产的可编程间隔定时器。

微机原理与接口技术课程设计报告

微机原理与接口技术课程设计报告

课程设计任务书学生姓名:专业班级:电子信息工程2班指导教师:工作单位:题目:电子报警器设计一、设计条件:1.运用所学的微机原理和接口技术知识;2.微机原理和接口技术实验室的实验箱设备。

二、主要任务:(包括课程设计工作量及其技术要求以及说明书撰写等具要求)设想制作一个防盗器件。

具体要求:程序运行时扬声器发出警报声,使得8个LED指示灯不停光闪,光闪周期为2秒,14秒倒计时结束后液晶显示器显示相关警报信息。

警报信息出现后LED灯熄灭,程序按任意键退出后声不响光不闪。

根据设计任务和要求,在设计前必须对微机原理与接口技术中的8255和8253芯片熟悉了解和掌握。

设计中主要要完成的是发声报警和发光报警这两个部分功能,故在程序设计中只要设计触动键盘中的数字键即8个LED不停光闪,同时内扬声器发出警报声,且在屏幕上显示警报信息。

在设计发声报警时利用了8253可编程定时记数器。

在设计发光报警时利用了8255芯片。

在程序设计中利用INT 10H实现在屏幕上显示相关的警报信息。

三、时间安排:指导教师签名:年月日基于微机原理电子警报器的设计摘要在当今高速发展的中,人们对自身所处的环境越来越关心,居家安全已成为当今小康之家优先考虑的。

当您上班家中无人,或者仅有老人孩子在家,或者您晚上在家熟睡,您必须确保家庭成员和财产的绝对安全。

众多住宅小区的安防防犯主要倚靠安装防盗窗、防盗门以及人工防犯。

这样不仅有碍美观,不符合防火的要求、而且不能有效地防止坏人的侵入。

随着生活水平的不断提高,人们的安全防范意识也在不断的增强,各种智能防盗报警器应运而生,并不断地向各个领域深入,报警器是一种为防止或预防某事件发生所造成的后果,以声音、电话提醒等形式来警示或提醒我们应当采取某种行动的电子产品。

随着科技的进步,家居安防中的机械式报警器越来越多地被先进的电子报警器代替,如防盗报警器、防火报警器、煤气天然气泄露报警器等。

并且电子报警器在安全智能家居监控报警系统起越来越重要的作用。

微机原理与接口技术课程设计报告

微机原理与接口技术课程设计报告

实验一 接收年、月、日信息显示 一、课程(软件)设计内容显示输入提示信息并响铃一次,然后接收键盘输入的月/日/年信息,并显示。

若输入月份日期不对,则显示错误提示并要求重新输入。

二、程序框图一三、程序及分析CRLF MACRO MOV AH, 02H MOV DL, 0DH INT 21H MOV AH, 02HYY开 始初始化,清错标志 显示提示信息,响铃一次 调用键读入子信息,读月 有出错标志吗?调用键读入子信息,读日 有出错标志吗?有出错标志吗?调用键读入子信息,读年显示年、月、日返回DOSYNYN入口保持现场是回车或空格否输入字在1~9之间否返回DOS 中读取得键输入值将ASCII 码转换为四位十六进制数,存于DI返回置出错标志YMOV DL, 0AHINT 21HENDMDA TA SEGMENTMESS DB '按顺序输入月,日,年,每输完一样按回车(MM/DD/YY)',0DH,0AH,'$' MESS1 DB '月份错误,重新输入',0DH,0AH,'$'MESS2 DB '日期错误,重新输入',0DH,0AH,'$'ERROR DB '输入错误,重新输入',0DH,0AH,'$'MARK DB ?REG DW ?DA TA ENDSSTACK SEGMENTSTA DW 32 DUP ( ?)TOP DW ?STACK ENDSCODE SEGMENTASSUME CS: CODE, DS: DA TA,ES: DA TA,SS: STACKSTART: MOV AX, DA TAMOV DS, AXMOV ES, AXMOV SP,TOP ;初始化HEAD: MOV MARK,0 ;清错误标志MOV AH, 09HMOV DX, OFFSET MESSINT 21H ;显示提示信息MOV AH, 02HMOV DL, 07HINT 21H ;响铃1次CALL GETNUMJE HEADPUSH DXCALL GETNUMCMP MARK, 01HJNE K1POP DXJMP HEADK1: PUSH DXCALL GETNUM ;接收键入的月值,日值及年值CMP MARK, 01HJNE K2POP DXPOP DXJMP HEADK2: MOV AX, DXCALL DISP ;显示年值NOPMOV AH, 02HMOV DL,'-' ;显示`-`INT 21HPOP DXPOP AXPUSH DXMOV REG, AXAND AX, 00FFHCMP AX, 0012HJBE W1MOV AH, 09HLEA DX, MESS1JMP STARTW1: MOV AX, REGCALL DISPPMOV AH, 02HMOV DL,'-'INT 21HPOP AXMOV REG, AXAND AX, 00FFHCMP AX, 31HJBE W2MOV AH, 09HLEA DX, MESS2INT 21HJMP STARTW2: MOV AX, REGCALL DISPP ;显示日值MOV AX, 4C00HINT 21H ;返回DOS DISPP PROC NEARMOV BL, ALMOV DL, BLMOV CL, 04ROL DL, CLAND DL, 0FHCALL DISPLMOV DL, BLAND DL, 0FHCALL DISPLDISPP ENDPDISPL PROC NEARADD DL, 30HCMP DL, 3AHJB DDDADD DL, 27HDDD: MOV AH, 02HINT 21HRETDISPL ENDPDISP PROC NEARPUSH BXPUSH CXPUSH DXPUSH AXMOV AL, AHCALL DISPPPOP AXCALL DISPPPOP DXPOP CXPOP BXRET ;显示子程序DISP ENDPGETNUM PROC NEARPUSH CXXOR DX, DXGGG: MOV AH, 01HCMP AL, 0DHJZ PPPCMP AL, 20HJZ PPPSUB AL, 30HCMP AL, 0JB KKKCMP AL, 0AHJB GETSJMP KKKGETS: MOV CL, 04SHL DX, CLXOR AH, AHADD DX, AXJMP GGGKKK: PUSH AXPUSH DXMOV AH, 09HMOV DX, OFFSET ERRORINT 21HMOV MARK, 01HPOP DXPOP AXPPP: PUSH DXMOV AH, 02HMOV DX, 07HINT 21HCRLFPOP DXRETGETNUM ENDP CODE ENDSEND START四、课程设计总结掌握响铃符方法,掌握年、月、日输入方法,借以观察实验的结果。

微机原理与接口技术课程设计报告

微机原理与接口技术课程设计报告

课程设计任务书学生姓名:专业班级:电子信息工程2班指导教师:工作单位:题目:电子报警器设计一、设计条件:1.运用所学的微机原理和接口技术知识;2.微机原理和接口技术实验室的实验箱设备。

二、主要任务:(包括课程设计工作量及其技术要求以及说明书撰写等具要求)设想制作一个防盗器件。

具体要求:程序运行时扬声器发出警报声,使得8个LED指示灯不停光闪,光闪周期为2秒,14秒倒计时结束后液晶显示器显示相关警报信息。

警报信息出现后LED灯熄灭,程序按任意键退出后声不响光不闪。

根据设计任务和要求,在设计前必须对微机原理与接口技术中的8255和8253芯片熟悉了解和掌握。

设计中主要要完成的是发声报警和发光报警这两个部分功能,故在程序设计中只要设计触动键盘中的数字键即8个LED不停光闪,同时内扬声器发出警报声,且在屏幕上显示警报信息。

在设计发声报警时利用了8253可编程定时记数器。

在设计发光报警时利用了8255芯片。

在程序设计中利用INT 10H实现在屏幕上显示相关的警报信息。

三、时间安排:指导教师签名:年月日基于微机原理电子警报器的设计摘要在当今高速发展的中,人们对自身所处的环境越来越关心,居家安全已成为当今小康之家优先考虑的。

当您上班家中无人,或者仅有老人孩子在家,或者您晚上在家熟睡,您必须确保家庭成员和财产的绝对安全。

众多住宅小区的安防防犯主要倚靠安装防盗窗、防盗门以及人工防犯。

这样不仅有碍美观,不符合防火的要求、而且不能有效地防止坏人的侵入。

随着生活水平的不断提高,人们的安全防范意识也在不断的增强,各种智能防盗报警器应运而生,并不断地向各个领域深入,报警器是一种为防止或预防某事件发生所造成的后果,以声音、电话提醒等形式来警示或提醒我们应当采取某种行动的电子产品。

随着科技的进步,家居安防中的机械式报警器越来越多地被先进的电子报警器代替,如防盗报警器、防火报警器、煤气天然气泄露报警器等。

并且电子报警器在安全智能家居监控报警系统起越来越重要的作用。

微机原理与接口技术 课程设计实验报告

微机原理与接口技术 课程设计实验报告

课程设计实验报告课程:现代微机原理与接口技术题目:键盘扫描实验班级:数字媒体 1004学号: 0305100417学生姓名:张海洋指导老师:杨天天日期: 2012.6.18一、实验目的(1)掌握键盘扫描的应用及编程(2)掌握LED的应用二、实验设备PC计算机一台,TD-PIT + 实验系统一套。

三、实验原理(1)8255芯片:8255具有3个带锁存或缓冲的数据端口,它的并行数据宽度为8位。

可与外设并行进行数据交换。

A口和B口内具有中断控制逻辑,在外设与CPU之间可用中断方式进行信息交换。

把8255并口和键盘,组成一个键盘装置。

通过cpu对8255的控制最总达到键扫的目的。

每一个键对应一个ASCII 码字符,通过8255的输入和输出,最终显示在屏幕上。

(2)LED数码显示原理:数码管的 7 个段及小数点都是由 LED 块组成的,显示方式分为静态显示和动态显示两种。

数码管在静态显示方式时,其共阳管的位选信号均为低电平,四个数码管的共用段选线 a、b、c、d、e、f、g、dp 分别与单片机的 8 根 I/O 口线相连,显示数字时只要给相应的段选线送低电平。

数码管在动态显示方式时,在某一时刻只能有一个数码管被点亮显示数字,其余的处于非选通状态,位选码端口的信号改变时,段选码端口的信号也要做相应的改变,每位显示字符停留显示的时间一般为1-5ms,利用人眼睛的视觉惯性,在数码管上就能看到相当稳定的数字显示。

(3)键盘扫描原理:第一步,使行线为编程的输入线,列线是输出线,拉低所有的列线,判断行线的变化,如果有按键按下,按键按下的对应行线被拉低,否则所有的行线都为高电平。

第二步,在第一步判断有键按下后,延时后再次读取行值,如果此行线还处于低电平状态则进入下一步,否则返回第一步重新判断。

第三步,开始扫描按键位置,采用逐行扫描,每间隔 1ms 的时间,分别拉低第一列,第二列,第三列,无论拉低哪一列其他三列都为高电平,读取行值找到按键的位置,分别把行值和列值储存在寄存器里。

微机原理与接口技术课程设计(报告)

微机原理与接口技术课程设计(报告)

湖南科技大学潇湘学院信息与电气工程系《微机原理与接口技术》课程设计报告题目:基于D/A转换器DAC0832的波形发生器设计专业:通信工程班级:通信002班姓名:刘黎辉学号:0954040217指导老师:欧青立陈君宋芳课程设计任务书目录一、课程设计的目的及意义 (1)1.设计目的 (1)2.设计意义 (1)二、方案论证 (1)1.设计要求 (1)2.方案论证 (1)三、硬件电路设计 (2)1.波形产生电路 (2)2.按键控制电路 (4)3.地址译码电路 (6)四、程序设计 (7)1.波形发生原理 (7)2.程序流程图 (7)五、硬件连接及调试 (8)1.硬件连接 (8)2.电路调试 (8)六、体会与心得 (8)七、参考书目: (9)八、附录 (9)1.电路原理图............................................................................................ 错误!未定义书签。

2.程序源码................................................................................................ 错误!未定义书签。

一、课程设计的目的及意义1.设计目的(1)掌握计算机应用系统特别是微机接口系统的设计。

(2)掌握接口电路设计技术,初步掌握电子设计软件Protel99使用。

(3)掌握微机接口程序的编制与调试技术。

(4)掌握DAC0832芯片的使用方法。

(5)利用所学微机的理论知识进行软硬件整体设计,提高综合应用能力。

2.设计意义波形发生器作为一种常用的信号源,是现代测试领域内应用最为广泛的通用仪器之一。

在研制、生产、测试和维修各种电子元件、部件以及整机设备时,都需要有信号源,由它产生不同频率不同波形的电压、电流信号并加到被测器件或设备上,用其他仪器观察、测量被测仪器的输出响应,以分析确定它们的性能参数。

微机原理与接口技术实验报告

微机原理与接口技术实验报告

微机原理与接口技术实验报告实验一,微机原理实验。

1. 实验目的。

本实验旨在通过对微机原理的实验,加深学生对微机原理相关知识的理解,提高学生的动手能力和实验技能。

2. 实验内容。

本实验主要包括微机原理的基本知识、微处理器的结构和功能、微机系统的总线结构、存储器与I/O接口。

3. 实验步骤。

(1)了解微机原理的基本知识,包括微处理器的分类、功能和工作原理。

(2)学习微机系统的总线结构,掌握总线的分类、功能和工作原理。

(3)了解存储器与I/O接口的基本概念和工作原理。

(4)进行实际操作,通过实验板进行微机原理实验,加深对微机原理知识的理解。

4. 实验结果。

通过本次实验,我深刻理解了微机原理的基本知识,掌握了微处理器的结构和功能,了解了微机系统的总线结构,以及存储器与I/O接口的工作原理。

通过实际操作,我对微机原理有了更深入的认识,提高了自己的动手能力和实验技能。

实验二,接口技术实验。

1. 实验目的。

本实验旨在通过对接口技术的实验,加深学生对接口技术相关知识的理解,提高学生的动手能力和实验技能。

2. 实验内容。

本实验主要包括接口技术的基本知识、接口电路的设计与调试、接口技术在实际应用中的作用。

3. 实验步骤。

(1)了解接口技术的基本知识,包括接口的分类、功能和设计原则。

(2)学习接口电路的设计与调试,掌握接口电路设计的基本方法和调试技巧。

(3)了解接口技术在实际应用中的作用,包括各种接口的应用场景和实际案例。

(4)进行实际操作,通过实验板进行接口技术实验,加深对接口技术知识的理解。

4. 实验结果。

通过本次实验,我深刻理解了接口技术的基本知识,掌握了接口电路的设计与调试方法,了解了接口技术在实际应用中的作用。

通过实际操作,我对接口技术有了更深入的认识,提高了自己的动手能力和实验技能。

总结。

通过微机原理与接口技术的实验,我对微机原理和接口技术有了更深入的理解,提高了自己的动手能力和实验技能。

希望通过今后的学习和实践,能够更加深入地掌握微机原理与接口技术的知识,为将来的工作和研究打下坚实的基础。

微机原理与接口技术课程设计报告

微机原理与接口技术课程设计报告

《微机接口技术课程设计》设计报告题目:实时钟显示与定时控制设计专业:电子信息工程班级:XXXXXXX学号:XXXXXXXXX姓名:XXX指导老师:XXX设计时间:2013 年6 月19日到2013年6月25 号1.设计任务说明通过本课程设计,综合应用接口技术各汇编语言程序设计技术,在PC 机上实现时钟显示、定时和响铃,以提高接口、汇编技术的应用能力。

2. 总体设计(1). 利用BIOS 和DOS 的系统功能调用,能将计算机系统的日期和时间读出并显示出来。

(2). 用“时:分:秒”(都是两位)的形式连续显示系统时间。

(3).利用定时接口芯片每秒钟响一次铃。

(4). 提示输入定时时间(即定时秒数),每经历指定的秒数,则演奏乐曲。

3. 详细设计模块描述:⑴.利用定时中断实现时钟显示。

当产生定时中断时(由8259A的IRQ0引起),CPU转入BIOS的08H 号中断处理程序,在该中断处理程序中是一条软中断指令“INT 1CH”,而在该软中断程序中只有一条IRET指令,这样系统每秒钟产生18.2次定时中断,调用18.2次INT 1CH,这为开发者提供了一个编写与时间有关的程序的软中断接口,上例的定时响铃就是借用这个软接口实现的。

其具体操作如下:①在时钟显示程序,截获1CH号中断,在新的1CH中断处理程序安排一个计数器,记录调用的次数,每18次(约一秒钟)显示一次当前时间。

②利用BOIS的1AH号中断的0号功能,读取当前计时器的数值:入口参数:AH=02H执行: INT 1AH出口参数:AL=午夜信号,CH=时的BCD码,CL=分的BCD码,DH=秒的BCD 码③利用BIOS的10H号中断的13H号功能,实现在屏幕的右上角显示时间。

④在主程序中要保存原1CH号中断的中断向量,并设置新的时钟显示中断程序的中断向量,然后作其它工作,如调用BIOS的键盘中断INT 16H 的0号功能,等待用户按键盘,也就是等待中断的发生,并在屏幕右上角显示时间……,当用户按键后,主程序工作完成后,恢复原1CH中断向量。

微机原理与接口技术课程设计实验报告

微机原理与接口技术课程设计实验报告

微机原理与接口技术课程设计实验报告2006年12月23日星期六上午01:26微机接口课程设计实验报告计算机31班秦鹏程03055014实验一电子琴一、实验目的1.通过D/A转换器产生模拟信号,使PC机作为简易电子琴2.了解利用数模转换器产生音乐的基本方法二、实验内容实验电路如图所示,8253的CLK0接1MHz时钟,GATE0接+5V,OUT0接8255的PA0,J1接喇叭,编程使计算机的数字键1、2、3、4、5、6、7作为电子琴按键,按下即发出相应的音阶。

三、编程提示1.对于一个特定的D/A转换接口电路,CPU执行一条输出指令将数据送入D/A,即可在其输出端得到一定的电压输出,给D/A转换器输入按正弦规律变化的数据,在其输出端即可产生正弦波,对于音乐,每个音阶都有确定的频率。

各个音阶标称频率值:音阶频率:(单位Hz)1 261.12 293.73 329.64 349.25 392.06 440.07 493.92.产生一个正弦波的数据可取32个(小于亦可),不同频率的区别,可通过调节向A/D转换器输出数据的时间间隔,例如:发“1”频率为261.1Hz周期为1/261.1=3.83.ms,输出数据的时间间隔为3.83/32=0.12ms,定时时间可以由8253配合8255实现,按下某键后发音时间的长短可以由发出的正弦波的个数多少来控制。

3.程序流程4.源程序data segmentdata1 db 80h,96h,0aeh,0c5h,0d8h,0e9h,0f5h,0fdh;正弦波数据数据区db 0ffh,0fdh,0f5h,0e9h,0d8h,0c5h,0aeh,96hdb 80h,66h,4eh,38h,25h,15h,09h,04hdb 00h,04h,09h,15h,25h,38h,4eh,66htime db 120,106,94,89,79,70,63,59;发不同音时的计数器初值msg db 'Press 1,2,3,4,5,6,7,8,Esc:',0dh,0ah,'$'num db ? ;8253计数器初值的序号data endscode segmentassume cs:code,ds:datastart:mov ax,datamov dx,offset msgmov ah,9int 21h ;显示提示信息sss:mov ah,7int 21h ;从键盘接收字符不回显cmp al,1bhje exit ;若为Esc键,则转Exitcmp al,31hjl ssscmp al,38hjg sss ;若不在'1'~'8'之间转ssssub al,31mov num,al ;求出相应的时间常数的序号mov cx,60 ;取次个正弦波数据ddd:mov si,0lll:mov al,data[si] ;取正弦波数据mov dx,290hout dx,al ;放音call delay ;调延时子程序inc sicmp si,32 ;是否取完个数据jl lllloop ddd ;总循环次数是否完,若没有,则继续jmp sssexit:mov ah,4chint 21hdelay proc near ;延时子程序ccc: mov bx,offset timemov dx,283hmov al,10hout dx,almov dx,28bh ;设A口输入mov al,9bhout dx,almov al,num ;取相应的时间常数xlatmov dx,280hout dx,al ;向计数器输出kkk:mov dx,288hin al,dx ;从A口读一个字节test al,01 ;判PA0口是否为jz kkkret ;子程序返回delay endpcode endsend start四、实验现象在DOS环境下,用汇编程序进行汇编,生成DZQ.EXE可执行程序,并运行可执行程序。

微机原理与接口技术报告

微机原理与接口技术报告

西安科技大学微机原理与接口技术院、系(部):专业及班级:姓名:学号:指导教师:微机原理与接口技术报告一、设计任务1.利用8255实现2 ×4矩阵键盘输入,要求能够输入0-9及“.”十一个字符,并将自己的学号对8求余所的数对应的键号设为上档键(按照左上角为0号,右下角为7号),上档键后依次为0-9及“.”2.利用8255实现4位字符的7段码显示。

3.利用PROTEL或PROTEUS绘制电路原理图。

二、设计原理1.8255A简介8255是Intel公司生产的可编程并行I/O接口芯片,有3个8位并行I/O口。

具有3个通道3种工作方式的可编程并行接口芯片(40引脚)。

其各口功能可由软件选择,使用灵活,通用性强。

8255可作为单片机与多种外设连接时的中间接口电路。

8255作为主机与外设的连接芯片,必须提供与主机相连的3个总线接口,即数据线、地址线、控制线接口。

同时必须具有与外设连接的接口A、B、C口。

由于8255可编程,所以必须具有逻辑控制部分,因而8255内部结构分为3个部分:与CPU连接部分、与外设连接部分、控制部分。

8255管脚图1)与CPU连接部分根据定义,8255能并行传送8位数据,所以其数据线为8根D0~D7。

由于8255具有3个通道A、B、C,所以只要两根地址线就能寻址A、B、C口及控制寄存器,故地址线为两根A0~A1。

此外CPU要对8255进行读、写与片选操作,所以控制线为片选、复位、读、写信号。

各信号的引脚编号如下:(1)数据总线DB:编号为D0~D7,用于8255与CPU传送8位数据。

(2)地址总线AB:编号为A0~A1,用于选择A、B、C口与控制寄存器。

(3)控制总线CB:片选信号、复位信号RST、写信号、读信号。

当CPU要对8255进行读、写操作时,必须先向8255发片选信号选中8255芯片,然后发读信号或写信号对8255进行读或写数据的操作。

2)与外设接口部分根据定义,8255有3个通道A、B、C与外设连接,每个通道又有8根线与外设连接,所以8255可以用24根线与外设连接,若进行开关量控制,则8255可同时控制24路开关。

微机原理与接口技术课程设计报告

微机原理与接口技术课程设计报告

微机原理与接口技术课程设计——数据采集班级网络10学号 31006100姓名 YHD指导老师马学文二零一三年一月八号一、任务要求对一路温度、一路压力信号进行巡回数据采集,并把A/D转换后的结果在实验机的数码管上显示出来。

采集到的数据超过规定的限值时,使发光二极管发光报警。

二、硬件连线本程序实现两路数据采集:一路采集温度信号,一路采集压力信号。

对每一路信号要连续采集8次,然后把8次A/D转化后的平均值显示在数码管上。

左边三位显示压力值,右边三位显示温度值。

(1)拨码开关:将拨码开关SW2拨上。

表示将GAL20V8的地址输入A-5接至系统地址线A5;A-6接至地址线A6;A-7接至地址线A7。

(2)压力实验模块的“压力输出”端接至ADC0809的输入端IN0,温度实验模块的“温度输出”端接至ADC0809的输入端IN1。

(3)0809的EOC的输出端与8259的IRQ0端相连,0809的CS连CS8(3E0H)。

(4)8259的片选CS-1连地址输出CS6(3A0H),8259的INT1连总线输入INTR,8259模块的INT-A连总线的INTA,8259的SP/1连+5V。

(5)8253的片选CS连地址输出端CS1(300H),8253的A0、A1分别连地址总线的A2、A3,8253的GATE0连+5V,8253的CLK0连74LS393分频输出的47K输出端,8253的OUT0连到任一发光二极管上;8253的GATE1连+5V,8253的CLK1连74LS393分频输出的47K输出端,8253的OUT1连到温度实验模块的“占空比输入”端。

(6)8255并行模块下方的4个片选信号CS-1、CS-2、CS-3和CS-4分别与地址译码输出模块的对应引脚(实验箱中部的CS-1、CS-2、CS-3和CS-4)连接。

(7)74系列模块中开放的3根输出信号和4根输入信号对键盘进行控制。

键盘的行信号Q_0、Q_1、Q_2、Q_3分别与开放的输入信号Q0、Q1、Q2、Q3相连,键盘的列信号P_0和开放的输出信号P0相连,片选信号CS2接CS4(360H)。

微机原理与接口技术课程设计报告

微机原理与接口技术课程设计报告

摘要步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。

在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。

步进电机控制系统以8088作为控制的核心元件,利用8255的A口控制步进电机,C口连接K0-K7,以选取不同档的移动速度,同时获取控制转动方向(即正转和反转).本课程设计报告通过步进电机的基本介绍、系统的软硬件设计(包括最小系统介绍、接口电路设计、延时程序设计、步进电机的驱动程序设计等几个主要模块)、完整的汇编语言程序等,我们完成了对步进电机系统的设计,并完成了相应的任务,如正转、反转、正向加速、反向加速等,使我们进一步掌握了汇编语言,也使我们能很好的把书本上的知识与实践相结合,大大提高了我们的动手能力关键字:步进电机;8086CPU;8255可编程I/O接口芯片;汇编语言目录摘要 (1)1.1步进电机转动控制的设计要求与设计方案1.2步进电机转动控制的要求与功能 (3)1.3总体设计方案 (3)一、步进电机转动控制设计的硬件设计二、 2.1步进电机转动控制的硬件框图 (4)2.2 步进电机驱动原理 (4)三、步进电机转动控制软件设计3.1 主程序流程图 (6)3.2 8255初始化 (7)四、步进电机硬/软件的调试4.1 硬件调试 (8)4.2 软件调试 (8)4.3 调试过程 (8)五、设计总结 (9)附录一 (10)一、步进电机控制的设计要求与设计方案1.1步进电机转动控制的要求与功能使用汇编语言外加K0-K7等一系列的开关实现对步行电机转速与方向的控制(实现两个以上功能)1.启动与停止控制:用户拨动某一指定键后可以实现电机的启动与停止的控制2.方向的控制:用户将某一指定键拨向上可以实现电机的正转,拨向下实现电机的反转3.速度的控制:用户将另一指定键拨向上可以实现电机的加速转动,拨向下实现电机的减速转动4.综合控制:用户一起拨动上述的按键后可以实现电机的加速正转,减速反转等操作;1.2总体设计方案选用TN88\86实验箱与微机,通过在实验箱构造硬件电路,主要是利用8255A 芯片单元模块、步进电机单元模块。

微机原理接口技术课程设计报告

微机原理接口技术课程设计报告

电气与电子信息工程学院微机原理接口技术课程设计报告设计题目:微机原理与接口技术目录摘要 (3)第1章设计目的要求及原理 (4)1.1 系统设计要求 (4)1.2设计目的 (4)1.3设计原理 (4)第2章硬件与软件设计及功能介绍 (5)2.1计数器8253 (5)2.2可编程并行接口8255 (8)2.3译码器74LS138 (10)2.4可编程中断控制器8259A (10)2.5硬件的连接 (11)2.5.1 8255与外接设备的连接 (11)2.5.2 译码器与8255.8253连接 (12)第3章总结 (13)参考文献 (13)附录 (14)摘要利用可编程中断控制器8259根据不同的信号源来对中断源进行中断屏蔽,系统通过可编程定时/计数器8253的两个计数器级联,实现对2MHz时钟信号的计数定时,初始化8253中写入定时信息,使系统每100ms产生一个定时中断请求信号发送给8259A,由其送入8086CPU后,CPU检测一次开关状态,若检测开关为闭合状态,则使继电器通电动作,若检测开关为断开状态,则继电器不动作;初始状态下继电器不动作。

关键词:可编程定时/计数器8253 , 可编程并行接口8255,中断控制8259A,译码器74LS138,继电器。

ABSTRACTUsing programmable interrupt controller 8259 according to the different source to interrupt mask interrupt source. The system count the 2MHz clock signal by two counters of the Programmable Timing Counter 8253 cascaded together, the Timing information is wrote when initializing the 8253 ,the system produces an interrupt request signal every 100ms and convey it to the CPU through Programmable Interrupt Controller 8259A,after that,8086 CPU tests the state of the switch, if the switch is closed, CPU will make the relay actuate, and in the initial state or if the switch is opened, the 8086 will make the relay stay off.Keywords: ogrammable Parallel Interface 8255 Programmable Timing Counter 8253 Timer and interrupt interrupt control decoder 74 LS138.第1章设计要求目的及原理1.1 系统设计要求1,用8255,8255实现开关的检测与继电器的控制电器。

微机原理与接口技术课程设计报告

微机原理与接口技术课程设计报告

微机原理与接口技术课程设计报告项目名称:十进制数计算器的设计与实现专业名称:计算机科学与技术(交通信息工程)学生姓名:李俊(201324020311)教师姓名:马荣贵2016年1月1日一、项目名称及要求 (3)1项目名称 (3)2项目要求 (3)二、项目背景及设计目的 (3)1项目背景 (3)2项目目的 (3)三、设计思路 (3)1总体设计思路 (3)2设计流程图 (4)四、项目方案及原理图 (5)1项目方案 (5)2并行接口8255A (5)3键盘输入模块 (6)4LED数码管输出模块 (7)5原理图设计 (8)五、结果与分析 (8)1实现现象 (8)2现象分析 (8)六、总结及体会 (9)七、附录 (9)1参考文献 (9)2源代码 (9)一、项目名称及要求1 项目名称十进制数计算器的设计与实现2 项目要求运用学过的《微机原理与接口技术》课程以及本学期的上机实验操作经验,根据题目设计要求进行软硬件系统的设计和实现,从而加深对本课程知识点的理解。

通过具体项目的实践,来提高学生的动手能力以及实时解决问题的能力,使学生综合能力得到显著提升。

本课题要求学生熟练运用并行接口8255A芯片、4*4键盘输入模块以及LED数码管输出模块的工作原理以及相应元件驱动程序的编写。

要求通过4*4键盘输入,LED数码管显示来完成简单计算器的功能(加减乘除操作)二、项目背景及设计目的1 项目背景大学课程设计是为了辅助学生加深对本课程的理论知识的理解和提高。

通过动手完成实际的项目设计及实现,减小理论与实践的距离,让同学对实际项目实现的流程有个大体的感受。

通过合作完成项目,提高同学的合作意识,以及模块化设计理念。

2 项目目的通过十进制数计算器的设计与实现,了解proteus软件使用;熟练掌握原理图的设计方法知道各硬件的功能以及电路实现三、设计思路1 总体设计思路4*4键盘输入模块:键盘“0~9”对应数字0~9键盘“A”对应符号“+”键盘“B”对应符号“-”键盘“C”对应符号“*”键盘“D”对应符号“/”键盘“E”对应符号“CE”键盘“F”对应符号“=”并行接口8255A:A口用于LED数码管的段码输出B口用于LED数码管的位码输出C口用于4*4键盘的输入LED数码管输出模块:采用动态显示的方式,将并行接口8255A中A口中的段码显示2四、项目方案及原理图1 项目方案先设计原理图,然后用PCB布线仿真,最后去实验室用实验器材实现设计2 并行接口8255A并行接口8255A:8255A是通用可编程并行接口芯片,是有40个引脚的双列直插式组件,其基本功能为:8255A接口芯片有3个8位并行输入/输出端口,可利用编程方法设置3个端口是作为输入端口还是输出端口;8255A能适应CPU 与I/O接口之间的多种数据传送方式的要求,如无条件传送、查询方式传送、中断方式传送。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

V .. . ..
微机原理与接口技术
课程设计报告
项目名称:十进制数计算器的设计与实现
专业名称:计算机科学与技术(交通信息工程)学生姓名:李俊(201324020311)
教师姓名:马荣贵
2016年1月1日
一、项目名称及要求 (3)
1项目名称 (3)
2项目要求 (3)
二、项目背景及设计目的 (3)
1项目背景 (3)
2项目目的 (3)
三、设计思路 (3)
1总体设计思路 (3)
2设计流程图 (3)
四、项目方案及原理图 (3)
1项目方案 (3)
2并行接口8255A (3)
3键盘输入模块 (3)
4LED数码管输出模块 (3)
5原理图设计 (3)
五、结果与分析 (3)
1实现现象 (3)
2现象分析 (3)
六、总结及体会 (3)
七、附录 (3)
1参考文献 (3)
2源代码 (3)
一、项目名称及要求
1 项目名称
十进制数计算器的设计与实现
2 项目要求
运用学过的《微机原理与接口技术》课程以及本学期的上机实验操作经验,根据题目设计要求进行软硬件系统的设计和实现,从而加深对本课程知识点的理解。

通过具体项目的实践,来提高学生的动手能力以及实时解决问题的能力,使学生综合能力得到显著提升。

本课题要求学生熟练运用并行接口8255A芯片、4*4键盘输入模块以及
LED数码管输出模块的工作原理以及相应元件驱动程序的编写。

要求通过4*4键盘输入,LED数码管显示来完成简单计算器的功能(加减乘除操作)
二、项目背景及设计目的
1 项目背景
大学课程设计是为了辅助学生加深对本课程的理论知识的理解和提高。

通过动手完成实际的项目设计及实现,减小理论与实践的距离,让同学对实际项目实现的流程有个大体的感受。

通过合作完成项目,提高同学的合作意识,以及模块化设计理念。

2 项目目的
通过十进制数计算器的设计与实现,了解proteus软件使用;
熟练掌握原理图的设计方法
知道各硬件的功能以及电路实现
三、设计思路
1 总体设计思路
4*4键盘输入模块:
键盘“0~9”对应数字0~9
键盘“A”对应符号“+”
键盘“B”对应符号“-”
键盘“C”对应符号“*”
键盘“D”对应符号“/”
键盘“E”对应符号“CE”
键盘“F”对应符号“=”
并行接口8255A:
A口用于LED数码管的段码输出
B口用于LED数码管的位码输出
C口用于4*4键盘的输入
LED数码管输出模块:
采用动态显示的方式,将并行接口8255A中A口中的段码显示2 设计流程图
四、项目方案及原理图
1 项目方案
先设计原理图,然后用PCB布线仿真,最后去实验室用实验器材实现设计2 并行接口8255A
并行接口8255A:
8255A是通用可编程并行接口芯片,是有40个引脚的双列直插式组件,其基本功能为:8255A接口芯片有3个8位并行输入/输出端口,可利用编程方法设置3个端口是作为输入端口还是输出端口;8255A能适应CPU与I/O 接口之间的多种数据传送方式的要求,如无条件传送、查询方式传送、中断方式传送。

与此相对应,8255A设置了方式0、方式1以及方式2;
8255A的C口比较特殊,除作为数据口之外,在工作方式1和方式2下,它的部分信号线被分配作为专用的联络应答信号。

8255A引脚图:
8255A的工作原理:
方式0:基本输入输出方式;
方式1:选通式输入/输出方式;
方式2:双向选通输入/输出方式。

8255的控制字:工作方式选择控制字,D7~D0控制位的含义见下图:
本实验中使8255端口C高四位(PC7-PC4)与键盘扫描行连接,低四位(PC0-PC3)与键盘扫描列连接,B口低四位(PB0-PB3)用于控制数码管位码,端口A输出段码信号用于控制数码管对键盘数值的显示。

3 键盘输入模块
4*4键盘:
矩阵键盘又称为行列式键盘,它是用4条I/O线作为行线,4条I/O线作为列线组成的键盘。

在行线和列线的每一个交叉点上,设置一个按键。

这样键盘中按键的个数是4×4个。

这种行列式键盘结构能够有效地提高单片机系统中I/O口的利用率。

4*4键盘的电路实现:
4 LED数码管输出模块
LED数码管:
8段数码显示管用于一般的状态或数字的显示
共阴极对应字符的段码表:
显示字形dp g f e d c b a 段码
0 0 0 1 1 1 1 1 1 3fh
1 0 0 0 0 0 1 1 0 06h
2 0 1 0 1 1 o 1 1 5bh
3 0 1 0 0 1 1 1 1 4fh
4 0 1 1 0 0 1 1 0 66h
5 0 1 1 0 1 1 0 1 6dh
5 原理图设计
五、结果与分析
1 实现现象
2 现象分析
由于LED显示是动态的,就没有以图片的方式展示,不过在电子版的报告
中,现象视频在附录文件中。

上述现象包含加减乘除以及混合运算的演示。

其中已经演示了包含高于两位十进制数、负数的运算。

六、总结及体会
这次实验真是一波三折,刚开始我的选题是8259的级联,我和我的小组成员已经将实验的流程以及具体实施方案规划好了。

但是由于临时的变动了选题,我们开始重新设计,利用课余时间陆陆续续的完成了整个设计流程。

到课设的第一天,我们开始连线,以及将驱动程序写入,但是测试的时候出现各种问题,比如说显示不正常,屏幕闪烁太频繁。

我们晚上回去思考,第二天重新调试,得到了预期的结果。

由于课设的时间还没有结束,我们又将其功能进行了扩展:可以实现多位计算器,可实现负数运算,可实现连续运算。

不足的地方在于,没有实现对不同级别运算的先后顺序的判断。

七、附录
1 参考文献
《微机原理与接口技术》,郭兰英等编著,清华大学出版社,2006年
《C++语言程序设计》(第四版),郑丽等编著,清华大学出版社,2010年《TPC-ZK产品说明》,清华大学器材部编写,清华大学出版社,2008年
2 源代码。

相关文档
最新文档