微机原理与接口技术课程设计-倒计时

合集下载

《微机原理与接口技术》课程标准

《微机原理与接口技术》课程标准

炎黄技工学校《微机原理与接口技术》教学大纲理论课时36实践课时36总课时72考核形式考查编写时间2022-03编写人审核人机电信息工程系计算机技术教研室编《微机原理与接口技术》课程标准课程名称:微机原理与接口技术适用专业:计算机网络应用课程学分:4学分计划学时:72学时一、课程概述1、课程性质与任务本课《微机原理与接口技术》是计算机专业的一门重要的专业课,它的前续课程有《电子技术基础》、《电路原理》通过本课程的学习,为后续课程《微机控制技术》打下良好的基础。

同时与毕业设计密切相关,为它提供了硬件和软件的基础。

本课程介绍了微型计算机原理及组成结构、微机接口的有关基本知识和实用技术、常用微机接口芯片的使用方法。

2、课程基本理念结合我们学生的实际情况,在平时的教与学中主要遵循以下的理念:(1)将专业课的学习与基础理论衔接,指导学生有针对性地预习;(2)帮助学生形成强烈兴趣;(3)指导学生了解课程教学目的,教师结合教学大纲和自己对课程的把握情况,阐明《微机原理与接口技术》的课程特点;(4)培养学生良好的学习习惯。

3、课程设计思路1、总体设计原则与思路:按照“以能力为本位,以职业实践为主线,以项目课程为主体的模块化专业设计课程体系”的总体设计要求,该门课程以形成电机与变压器的原理与性能指标、运行调试及维护维修等能力为基本目标,彻底打破学科课程的设计思路,紧紧围铙工作任务完成的需求来选择和组织课程内容,突出工作任务与知识的联系,让学生在职业实践活动的基础上掌握知识,增强课程内容与职业岗位能力要求的相关性,提高学生的就业能力。

2课程设计依据与评价方法:学习项目选取的基本依据是该门课程涉及的工作领域和工作任务范围,但在具体设计过程中,以自动化专业学生的就业为向导,根据行业专家对自动化专业所涵盖的的岗位群体进行的任务和职业能力分析,同时遵循中等职业学校学生的认识规律,紧密集合职业资格证书中相关考核内容,确定本课程的工作任务模块和课程内容。

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

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

《接口技术》大型综合(课程设计)作业【目的】(1)掌握8086cpu微机接口电路的I/O系统的设计(2)掌握8086cpu微机接口电路的初始化汇编编程和具体项目功能的软件汇编语言代码编写(3)要求学生根据接口电路的硬件要求进行计算机的汇编语言程序设计,使学生的软件编程能力得到加强,对接口电路的综合应用能力有较大提高。

【要求】(1)每三个同学组成一个小组,选一位组长,负责与教师联系(2007年10月8日前选定题目及确定小组成员以电子版形式发至oucljp@);每一组选择一个题目,完成系统的软硬件部分设计。

(2)自学、查找所选择I/O接口芯片和内存芯片的相关的资料。

使用接口技术知识实现能完成相应功能的硬件系统。

(3)要求写出系统(包括各个子系统)的设计方案及论证,画出系统原理图(硬件连线图)以及系统工作流程。

(4)画出程序流程、编写系统初始化程序和功能程序清单。

【设计报告书内容要求】1.每一小组要上交一份完整的设计方案(放假前以电子版形式发至邮箱oucljp@),内容包括:(1)报告封面(设计题目、小组成员)(2)设计题目(3)小组成员分工及成果(4)设计方案以及论证(5)硬件原理图(包括芯片的选型介绍)(6)程序流程图(包括各个子系统和子过程的程序流程)(7)程序清单,要有适当的注释(8)程序运行结果分析与预测(9)系统改进(升级)建议或者方案等。

2.每一个同学需要上交一份设计报告,简单介绍在课程设计过程中所做的工作,碰到的问题以及解决方法,阐述综合作业的收获等等。

【设计成绩评定】本次设计的成绩占《接口技术》课程期末总评成绩的15%,具体评定方法如下:(1)报告内容的完整性占20%的比例。

(2)硬件原理图占20%的比例。

(3)程序流程图占20%的比例。

(4)程序清单占10%的比例。

(5)程序运行结果分析与预测占20%的比例。

(6)系统改进(升级)建议或者方案占10%的比例。

【系统要求】1.交通灯控制(1)要求:十字路口1) 正常情况下,两路口轮流放行,且以一位8段数码管显示剩余时间;2) 夜间,两路口均为黄灯闪烁,均可放行。

微机原理与接口课程设计 电子钟

微机原理与接口课程设计 电子钟

一. 实验原理电子时钟主要由显示模块、对时模块和时钟运算模块三大部分组成。

其中对时模块和时钟运算模块要对时、分、秒的数值进行操作,并且秒计算到60时,要自己清零并向分进1;分计算到60时,要自己清零并向时进1;时计算到24时,要清零。

这样,才能循环记时。

显示时利用7段显示器显示六位十进制数据。

前两个显示小时,中间两个显示分钟,后两个显示秒。

时钟的运算是利用中断来实现的, 利用8253的模式三输出一定频率的方波作为触发中断的条件。

8253A 可编程定时/计数器的输入时钟为100KHz ,设定时/计数器0的计数初值为100,工作在方式3,即方波发生器,其输出的1KHz方波作定时/计数器2的时钟。

定时/计数器2的初值设为1000,工作在方式2,即每隔 1s输出负脉冲,取反后用作不可屏蔽中断的中断申请信号,在中断服务程序中计算时间,并通过74ls273并行输出到数码管显示。

电子时钟主要由 74ls273 锁存器、8253 定时/计数器、74ls244 反相器、LED 数码显示管和两个按键组成。

主要用 8086 的 NMI 的中断服务程序完成秒、分、时的运算即计时功能,两个开关的中断服务程序完成调时、调分功能。

8253 用来产生 1s 的脉冲信号作为 NMI 的中断请求信号。

74ls273 负责将内存里的时位和分位秒位值输出到数码管。

二.实验要求利用8253定时器设计一个电子钟,并定义一个启动键。

当按下该键时电子时钟从当前设定值开始走时。

三.实验程序.MODEL SMALL.8086.STACK.CODE.STARTUPNMI_INIT:PUSH ES;nmi不可屏蔽中断向量表初始化XOR AX,AXMOV ES,AXMOV AL,02HXOR AH,AHSHL AX,1SHL AX,1MOV SI,AX;相当于cs,ip入栈MOV AX,OFFSET NMI_SERVICE;调用中断处理程序MOV ES:[SI],AXINC SIINC SIMOV BX,CS;?MOV ES:[SI],BXPOP ES;定时器初MOV AL,00110111BMOV DX,0406HOUT DX,ALMOV DX,0400HMOV AX,0100HOUT DX,ALMOV AL,AHOUT DX,ALMOV AL,10110101BMOV DX,0406HOUT DX,ALMOV DX,0404HMOV AX,1000HOUT DX,ALMOV AL,AHOUT DX,ALLOOP0:;主任务CALL KEYCALL DISPJMP LOOP0NMI_SERVICE:;中断服务程序PUSH AXMOV AL,SECADD AL,1DAAMOV SEC,ALCMP SEC,60HJB EXITMOV SEC,0MOV AL,MINADD AL,1DAAMOV MIN,ALCMP MIN,60HJB EXITMOV MIN,0MOV AL,HOUADD AL,1DAAMOV HOU,ALCMP HOU,24JB EXITMOV HOU,0EXIT:POP AXIRETDISP PROC NEARMOV AL,0FFH;不显示MOV DX,0201HOUT DX,ALMOV BL,SECAND BX,000FHMOV SI,BXMOV AL,SITUATION[SI] ;段码MOV DX,0200HOUT DX,ALMOV AL,0FEH;秒个位MOV DX,0201HOUT DX,ALCALL DELAYMOV AL,0FFH;不显示MOV DX,0201HOUT DX,ALMOV BL,SECAND BX,00F0HMOV CL,4SHR BX,CLMOV SI,BXMOV AL,SITUATION[SI] ; 段码MOV DX,0200HOUT DX,ALMOV AL,0FDH; 秒十位MOV DX,0201HOUT DX,ALCALL DELAYMOV AL,0FFH;不显示MOV DX,0201HOUT DX,ALMOV AL,40H;段码MOV DX,0200HOUT DX,ALMOV AL,0FBH ;秒个位MOV DX,0201HOUT DX,ALCALL DELAYMOV AL,0FFH;不显示MOV DX,0201HOUT DX,ALMOV BL,MINAND BX,000FHMOV SI,BXMOV AL,SITUATION[SI] ;段码MOV DX,0200HOUT DX,ALMOV AL,0F7H;分个位MOV DX,0201HOUT DX,ALCALL DELAYMOV AL,0FFH; 不显示OUT DX,ALMOV BL,MINAND BX,00F0HMOV CL,4SHR BX,CLMOV SI,BXMOV AL,SITUATION[SI] ; 段码MOV DX,0200HOUT DX,ALMOV AL,0EFH;分十位MOV DX,0201HOUT DX,ALCALL DELAYMOV AL,0FFH;不显示MOV DX,0201HOUT DX,ALMOV AL,40H; 段码MOV DX,0200HOUT DX,ALMOV AL,0DFH;秒个位MOV DX,0201HOUT DX,ALCALL DELAYMOV AL,0FFH;不显示MOV DX,0201HOUT DX,ALMOV BL,HOUAND BX,000FHMOV SI,BXMOV AL,SITUATION[SI] ; 段码MOV DX,0200HOUT DX,ALMOV AL,0BFH;时个位MOV DX,0201HOUT DX,ALCALL DELAYMOV AL,0FFH; 不显示MOV DX,0201HOUT DX,ALMOV BL,HOUAND BX,00F0HMOV CL,4SHR BX,CLMOV SI,BXMOV AL,SITUATION[SI] ;段码OUT DX,ALMOV AL,07FH; 时十位MOV DX,0201HOUT DX,ALCALL DELAYRETDISP ENDPKEY PROC NEARMOV DX,0600HIN AL,DXTEST AL,01HJNZ NEXTHOUCALL DISP;消抖CALL DISPCALL DISPMOV DX,0600HIN AL,DXTEST AL,01HJNZ NEXTHOUMOV AL,MINADD AL,1;分调整DAAMOV MIN,ALCMP MIN,60HJB NEXTHOUMOV MIN,0 NEXTHOU:MOV DX,0600H IN AL,DXTEST AL,02HJNZ EXITKEYCALL DISP;消抖CALL DISPCALL DISPMOV DX,0600HIN AL,DXTEST AL,02HJNZ EXITKEYMOV AL,HOUADD AL,1DAA;时调整MOV HOU,ALCMP HOU,24HJB NEXTHOUMOV HOU,0EXITKEY:RETKEY ENDPDELAY PROC NEAR;定时子程序PUSH BXPUSH CXMOV BX,1LP2:LOOP LP2DEC BXJNZ LP1POP CXPOP BXRETDELAY ENDP.DATASEC DB 00HMIN DB 00HHOU DB 23HSITUATION DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH, 40HSIT_END=$END四.实验电路图五.学习心得在这次课程设计过程中,我们逐步养成了发现、提出、分析和解决实际问题的习惯;这不但锻炼提高了我们的实践能力,更是对我们实际工作能力的具体训练和考察过程。

微机原理课程设计教学大纲

微机原理课程设计教学大纲

《微机原理与接口技术》实习教学大纲一、课程基本信息开课单位:电气与信息工程学院课程编号:课程名称:微机原理与接口技术英文名称:Microcomputer Principle & Interfacing Technique学分:2学分二、课程的性质与教学目标(一)课程性质:本课程是高等院校计算机科学与技术及计算机相关专业的一门专业技术基础课程,是在《微机原理与接口技术》理论课程结束后的一次大型实践性教学环节。

(二)教学目标:本课程以相应课程的理论知识和课程实验为基础,学生通过课程设计,应初步学会利用微机和接口芯片设计应用系统的基本方法;初步掌握微机应用系统中硬件电路的设计方法;掌握利用汇编语言设计和编写应用程序的方法;提高调试综合应用程序的能力。

通过理论设计和实践操作巩固和加深对理论知识的理解,增强设计微机应用系统和调试应用软件的能力,提高学生的工程素质。

三、教学内容、时间安排及教学要求(一)实习内容及要求1、实习内容(16学时)可在以下5个课题中任选其一:课题1:数据采集系统课题2:异步通信系统课题3:电机调速系统课题4:计时器课题5:计算器(1)要求课程设计完成后,学生应交课程设计报告一份。

(2)内容课题1:数据采集系统数据采集系统有两个子课题,根据实验安排完成其中一个:1)用LED显示输出的数据采集系统;2)用打印机输出的数据采集系统。

理论设计要求:①以8088/86及其支持电路为基础,配必要的存储器、中断、定时系统、感测接口、LED显示器或打印机接口等构成数据采集系统;②系统可控制8路采集,采集信号的最高频率为10Hz;③采集数据存储在内存区,要求能连续保存10分钟的各路数据;④在LED显示器上顺序输出各路采集数据,输出内容包括采集路号以及对应的实时数据;若使用打印机输出,可在10分钟后批量打印采集的数据;⑤方案设计中要突出数据采集分系统和输出接口的设计,进行多种速率、多路采集控制等方面的分析,为硬件设计和软件编程提供依据;⑥硬件设计要求画出功能框图和逻辑原理图;编程要有程序框图和流程图。

微机原理与接口课程设计

微机原理与接口课程设计

微机原理与接口课程设计引言21世纪是信息技术高度发展且得到广泛应用的时代,信息技术从多方面改变着人类的生活、工作和思维方式。

我们每一个人都应当学习信息技术、应用信息技术。

微型计算机原理与接口技术是我们计算机科学与技术专业重要的一门基础专业课之一,要求我们有较强的自学能力和分析解决问题的能力以及实际动手能力,其作用是为了培养学生善于用计算机作为工具。

通过课程设计掌握汇编语言的编程、调试,通过对芯片的学习,初步了解微机应用系统的开发过程及设计过程。

长期以来,注重课本知识,轻视实际动手能力是我们学习中普遍从在的现象。

进行课程设计的目的就是要改变我们的这种学习方法,使我们即具备了理论知识,也能够解决实际学习,生活工作方面遇到的问题。

让我门把理论用到了实际中去,将知识变成实际的生产力,把理论与实际有效的结合起来,让我们对知识有了更深一步的学习。

也促进了我们的学习积极心。

也做到了手与脑的有效结合。

通过课程设计,也可以让我们对所学的知识有了更一步的了解,并能掌握学习理论时没有注意的细节。

也会意识到程序的编写要注意没一个细节,每一个空格等,并能通过调试寻找错误,改正错误,解决问题。

计算机课程有两种不同的方法:一是从理论入手;二是从实际入手。

中国有上下五千年的历史,都是应用时间来记载的,时间就是金钱,所以就从我们的生活和实际出发,我们的每件事,每个计划或是事件的安排都会受到时间的限制,而这次的课程设计也就是我们日常生活中处处注意的,一个有关时间的问题。

目录引言 (2)1.概述 (5)1.1 课程设计的目的 (5)1.2 课程设计的任务 (6)1.3设计的题目61.4 设计要求 (7)2.总体方案设计 (7)2.1 主程序设计思想 (7)2.2 设计原理说明 (7)2.3 设计应用的环境 (8)3.系统分析 (8)4. 软件设计 (9)4.1程序流程图94.2程序源代码 (10)5.系统调试 (35)5.1显示系统时间355.2按B键修改年月日355.3按C键修改具体时间356.设计总结 (36)7.参考文献 (37)1.概述1.1 课程设计的目的对学生掌握知识的深度、运用理论去处理问题的能力、实验能力、课程设计能力、书面及口头表达能力进行考核。

微机原理与接口课程设计指导书

微机原理与接口课程设计指导书

《微机原理与接口(B)课程设计》一、教学任务和目标《微机原理与接口技术综合实践》是配合《微机原理与接口技术》课程的实践性环节,是机电学院测控技术专业的技术基础类必修的实践环节。

通过课程设计使学生运用所学理论知识完成一个单片机应用系统的设计与调试,熟悉和掌握单片机应用系统的开发方法和过程,从而培养学生利用计算机解决问题的基本思路和应用开发能力,培养学生综合运用知识、动手能力和解决实际问题的能力。

二、教学内容及基本要求测控技术与仪器专业的课程设计要求学生设计一个MCS-51单片机的应用系统,完成相对完整的测试、控制任务。

启发和鼓励学生参与题目的设计和确定,使课程设计的任务既能贴近工程实际应用,又能兼顾学生的兴趣。

1.课程设计的内容:(一)电子日历(M5832时钟/日历芯片)在多功能实验板上,扩充一片M5832时钟芯片。

要求做到:1.M5832的数据线接8031的P10~P13;2.M5832的地址线A0~A3接8155的PA0~PA3;3.M5832的WR,RD,HOLD接8155的PA5~PA7;4.能够对其年,月,日,星期,时,分,秒的内容进行读写;5.扩充功能键,用来选择显示年、月、日、星期、时、分、秒;6.走时准确。

(二)模拟量输入/模拟量输出在多功能实验板上,扩充一片ADC0809芯片和一片DAC0832芯片。

ADC0809其中一路输入模拟信号(可由电位器输入),DAC0832芯片输出到示波器,要求:1.用开关选择输出正旋波或三角波;2.当输入模拟量变化时,输出波幅值变化(0—5V);3.当按动按扭开关时,输出波频率变化,增到最大,再逐步减到最小,再逐步增到最大,如此循环。

4.实验板上的数码管显示输出波频率。

(三)交通灯控制在多功能实验板上,扩展两组指示灯,每组分为红,黄,绿代表交通灯。

方案一:设有一个十字路口1、3为南北方向(主街道),2、4为东西方向(付街道),初始状态为4个路口的红灯全亮。

《微机原理与接口技术》教案

《微机原理与接口技术》教案

《微机原理与接口技术》教案一、教学目标1. 了解微机原理的基本概念,掌握微处理器、存储器、输入输出接口等的基本工作原理。

2. 熟悉接口技术的应用,学会使用接口电路实现微机与外部设备的数据传输和控制。

3. 能够分析微机系统中的信号转换、中断处理、定时与控制等问题,为后续的实际应用打下基础。

二、教学内容1. 微机原理概述:微处理器、存储器、输入输出接口的基本概念和工作原理。

2. 接口技术:接口电路的分类、功能、工作原理和应用实例。

3. 信号转换:模拟信号与数字信号的转换、数字信号与模拟信号的转换。

4. 中断处理:中断的概念、中断源、中断响应过程和中断处理程序的编写。

5. 定时与控制:定时器/计数器的工作原理及其在微机系统中的应用。

三、教学方法1. 采用讲授与实验相结合的方式,让学生在理论学习和实践操作中掌握微机原理与接口技术。

2. 通过案例分析、讨论等形式,激发学生的学习兴趣,提高解决问题的能力。

3. 注重实践操作,培养学生的动手能力和实际应用能力。

四、教学安排1. 课时:本课程共计32课时,每个课时45分钟。

2. 教学进度安排:第1-8课时:微机原理概述第9-16课时:接口技术第17-24课时:信号转换第25-32课时:中断处理与定时控制五、教学评价1. 平时成绩:包括课堂表现、作业完成情况、实验报告等,占总成绩的30%。

2. 期末考试:包括理论知识测试和实验操作考核,占总成绩的70%。

3. 期末考试不合格者需参加补考,补考不合格则需重修。

4. 鼓励学生参加相关竞赛和实践活动,提高自身综合素质。

六、教学资源1. 教材:《微机原理与接口技术》教材,选用国内知名出版社出版的最新版教材。

2. 实验设备:微机原理实验箱、接口电路实验设备、信号发生器、示波器等。

3. 网络资源:利用校园网,为学生提供相关学术论文、技术文档、在线课程等资源。

4. 教学软件:选用适合教学的微机原理与接口技术相关软件,如模拟器、编程工具等。

微机原理及机电接口技术课程设计红绿灯

微机原理及机电接口技术课程设计红绿灯

微机原理及机电接口技术课程设计第五组题目十字路口交通灯控制系统一.明确任务1.任务要求1)、模拟十字路口交通灯变化规律能实现通行时间的倒计时显示;当特种车(消防、警车等)通过时,中断保护现场并使四个口红灯全亮,中断消除后恢复现场。

2)、用开关控制中断信号2.任务分析1)南北东西道路有信号灯显示2)2位7段数码管显示通行和禁行倒计时3)针对特种车经过要设计相应的中断程序,并且中断返回后能信号灯按原来的状态继续进行道路控制。

二.总体设计1. 设计方案十字路口有南北方向和东西方向,每个方向都设有红、黄、绿三色交通信号灯12盏,并配有相应的亮灯倒计时显示4组。

当南北为绿灯或黄灯时,东西向一定是红灯,即南北绿灯时间加南北黄灯时间应等于东西红灯时间。

系统开始工作,南北路口绿灯亮,南北方向数码管进行绿灯50S倒计时显示,东西路口的红灯亮,东西方向数码管进行红灯55S倒计时显示。

当东西禁行方向剩5S时,南北通行方向的绿灯灭黄灯亮,同时数码管进行5S黄灯倒计时显示,5S后黄灯熄灭红灯亮,并进行南北红灯倒计时,同时东西方向红灯55S计时时间到红灯灭绿灯亮,东西向开始通行南北向禁行。

同样东西向绿灯50S计时时间到后转为黄灯,黄灯5S计时时间到再转为红灯,之后重复上述过程。

另设有点动按钮用来发出特种车经过时的中断信号2.单片机选型选择89C51系列单片机3.划分系统软、硬件功能数码管采用共阴极七段码动态显示4.确定系统结构组成时钟电路,复位电路,红绿黄灯指示电路(采用各色发光二极管代替),动态显示电路和简单按键电路三.硬件电路设计P0示位选控制。

P3.3作为外部中断输入口P1.0:南北向红灯,高电平点亮P1.1:南北向黄灯,高电平点亮P1.2:南北向绿灯,高电平点亮P1.3:东西向红灯,高电平点亮P1.4:东西向黄灯,高电平点亮P1.5:东西向绿灯,高电平点亮P2.7:南北向十位数码管位选信号P2.6:南北向个位数码管位选信号P2.5:东西向十位数码管位选信号P2.4:东西向个位数码管位选信号P0.0:数码管aP0.1:数码管bP0.2:数码管cP0.3:数码管dP0.4:数码管eP0.5:数码管fP0.6:数码管gP3.3:中断按钮,点动南北东西全部禁行,特种车通过四.软件设计1.片内RAM的定义A_BIT EQU 20H :用于存放南北十位数B_BIT EQU 21H :用于存放南北个位数C_BIT EQU 22H :用于存放东西十位数D_BIT EQU 23H :用于存放东西个位数TEMP1 EQU 24H :南北方向要显示的时间TEMP2 EQU 25H :东西方向要显示的时间SEC EQU 30H:1S计时标志2.程序设计由设计方案描述交通灯的显示可以分为以下4种状态:状态一:南北绿灯亮并从50S开始倒计时显示,东西红灯亮并从55S开始倒计时显示状态二:南北黄灯亮并从5S开始倒计时显示,东西红灯亮并继续55S倒计时显示状态三:南北红灯亮并从55S开始倒计时显示,东西绿灯亮并从50S开始倒计时显示状态四:南北红灯亮并继续55S 倒计时显示, 东西黄灯亮并从5S 开始倒计时显示3.设计流程图主程序流程图INT1中断程序流程图4.源程序:A_BIT EQU 20H ;用于存放南北十位数B_BIT EQU 21H ;用于存放南北个位数C_BIT EQU 22H ;用于存放东西十位数D_BIT EQU 23H ;用于存放东西个位数TEMP1 EQU 24HTEMP2 EQU 25HSEC EQU 30H ;1S计时标志ORG 0000HAJMP MAINORG 0013HAJMP INTORG 0100HMAIN:MOV SP,#45HMOV IE,#84H ;开INT0中断SETB IT1 ;下降沿触发MOV TMOD,#01H ;定时器初始化MOV TH0,#3CH ;50ms定时初值MOV TL0,#0B0HSETB TR0 ;启动定时器T0MOV SEC,#20 ;1S循环常数MOV R7,#50 ;绿灯时间MOV R6,#5 ;黄灯时间MOV R5,#55 ;红灯时间MOV R4,#10 ;全部红灯的时间STA1:MOV P1,#00001100B ;南北绿灯东西红灯ST1:MOV TEMP1,R7MOV TEMP2,R5ACALL CONVERT ;调用BCD码转换子程序STLOP1: ACALL DISPLAY ;调用显示子程序JNB TF0,STLOP1 ;50MS定时未到,转到STLOP1 CLR TF0DEC SECMOV A,SECCJNE A,#0,STLOP1 ;1S定时未到转到STLOP1 MOV SEC,#20DEC R5 ;东西倒计时数减一DJNZ R7,ST1 ;南北倒计时数减一MOV R7,#50STA2:MOV P1,#00001010B ;南北黄灯东西红灯ST2:MOV TEMP1,R6MOV TEMP2,R5ACALL CONVERT ;调用BCD码转换子程序STLOP2: ACALL DISPLAY ;调用显示子程JNB TF0,STLOP2CLR TF0DEC SECMOV A,SECCJNE A,#0,STLOP2MOV SEC,#20DEC R5DJNZ R6,ST2MOV R6,#5MOV R5,#55STA3:MOV P1,#00100001B ;南北红灯东西绿灯ST3:MOV TEMP1,R5MOV TEMP2,R7ACALL CONVERT ;调用BCD码转换子程序STLOP3: ACALL DISPLAY ;调用显示子程JNB TF0,STLOP3CLR TF0DEC SECMOV A,SECCJNE A,#0,STLOP3MOV SEC,#20DEC R5DJNZ R7,ST3MOV R7,#50STA4:MOV P1,#00010001B ;南北红灯东西黄灯ST4:MOV TEMP2,R6MOV TEMP1,R5ACALL CONVERT ;调用BCD码转换子程序STLOP4: ACALL DISPLAY ;调用显示子程JNB TF0,STLOP4CLR TF0DEC SECMOV A,SECCJNE A,#0,STLOP4MOV SEC,#20DEC R5DJNZ R6,ST4MOV R6,#5MOV R5,#55AJMP STA1INT: ;中断子程序PUSH 90H ;存入46H中PUSH PSWPUSH 00HPUSH 01HPUSH 02HPUSH 05HPUSH 06HPUSH 07HPUSH 20HPUSH 21HPUSH 22HPUSH 23HPUSH 24HPUSH 25HPUSH 30HPUSH TH0PUSH TL0MOV P1,#09H ;全部红灯CLR TF0MOV TH0,#3CHMOV TL0,#0B0HMOV SEC,#20L3:MOV TEMP1,R4MOV TEMP2,R4ACALL CONVERT ;调用BCD码转换子程序L4:ACALL DISPLAY ;调用显示子程JNB TF0,L4CLR TF0DEC SECMOV A,SECCJNE A,#0,L4MOV SEC,#20DJNZ R4,L3MOV R4,#10POP TL0POP TH0POP 30HPOP 25HPOP 24HPOP 23HPOP 22HPOP 21HPOP 20HPOP 07HPOP 06HPOP 05HPOP 02HPOP 01HPOP 00HPOP PSWPOP 90HRETI转换子程序CONVERT:MOV A,TEMP1 ;将南北要显示的数存放到A MOV B,#10DIV AB ;A除以B商存A,余数存B MOV A_BIT,A ;将A放到20HMOV B_BIT,B ;将B放到21HMOV A,TEMP2 ;将东西要显示的数存放到A MOV B,#10DIV AB ;A除以B商存A,余数存B MOV C_BIT,A ;将A放到22HMOV D_BIT,B ;将B放到23HRETDISPLAY: MOV DPTR ,#TAB ;显示子程序DPLOP1: MOV A,A_BIT ;将南北要显示的10位数送A MOVC A,@A+DPTR ;查表MOV P0,ACLR P2.7 ;显示南北10位数ACALL D1MS ;延时1MSSETB P2.7 ;灭南北10位数MOV A,B_BIT ;将南北要显示的个位数送A MOVC A,@A+DPTR ;查表MOV P0,ACLR P2.6 ;显示南北个位数ACALL D1MS ;延时1MSSETB P2.6 ;灭南北个位数MOV A,C_BIT ;将东西要显示的10位数送A MOVC A,@A+DPTR ;查表MOV P0,ACLR P2.5 ;显示东西10位数ACALL D1MS ;延时1MSSETB P2.5 ;灭东西10位数MOV A,D_BIT ;将东西要显示的个位数送A MOVC A,@A+DPTR ;查表MOV P0,ACLR P2.4 ;显示东西个位数ACALL D1MS ;延时1MSSETB P2.4 ;灭东西个位数RETD1MS:MOV R3,#250 ;1MS延时子程序D2:NOPNOPDJNZ R3,D2RETTAB:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH END。

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

微机原理与接口技术课程设计报告 题目:倒计时

学 院 专 业 计算机科学与技术 班 级 学 号 学生姓名 指导教师 课程成绩 完成日期 2011年6月23日 目 录 一. 设计功能 ........................................................ 3 二. 设计原理及原理图......................................... 3 1. 系统总设计原理 ............................................ 3 2. 硬件框架原理图 ............................................ 3 3. 硬件介绍 ........................................................ 4 4. 功能电路 ........................................................ 7 三. 程序模块及流程图......................................... 8 1. 8255A初始化 ................................................. 8 2. 显示程序模块 ................................................ 8 3. 延时程序模块 ................................................ 9 4. 控制程序模块 ................................................ 9 5. LED灯点亮程序模块 .................................... 10 四. 源程序 ......................................................... 11 五. 实验结果 ...................................................... 15 六. 总结 ............................................................. 16 附录1:系统硬件框架 ......................................... 17 附录2:系统总程序流程图 ................................. 18 附录3:8086/88计算机主板图 ............................ 19 题目:倒计时 一. 设计功能 本次课程设计我们在TD-PIT+实验系统和PC机平台上利用并行接口8255A、键盘及数码管显示单元、开关及LED显示单元、键盘按键和电脑显示屏设计成一个倒计时器。具体功能包括: 1. 用2位8段共阴数码管显示倒计时时间; 2. 使用开关K0实现暂停/启动功能,开关K1实现倒计时复位功能; 3. 倒计时为0时8盏LED灯实现跑马灯功能; 4. 利用数字键输入倒计时初始数值,按键“r”实现重新启动倒计时器,按键“e”实现退出程序进入DOS环境下,并对其他按键进行屏蔽; 5. 屏幕显示相应的提示信息,包括提示用户输入数据、倒计时结束、倒计时结束后用户进行的操作; 6. 可以任意设定倒计时的初始时间,每隔1秒钟计时器减1,直到为0; 7. 在倒计时过程中可通过开关K1实现退出当前的倒计时并开始新一轮的倒计时。

二. 设计原理及原理图 1. 系统总设计原理 我们选择并行接口8255A芯片,在程序中使用延时语句来输出秒脉冲,并在其中调用显示函数不断刷新数码管进行数值显示。使用8255A作为输入/输出接口,其中A端口为输出口,连接LED显示单元的D8~D15;B端口为输出口,连接数码管的A~Dp,进行数码管的段锁存;C端口高4位为输出口,连接数码管的X4~X1,进行位锁存,低4位为输入端,连接开关的K3~K0。采用在软件中控制循环程序的方式来控制倒计时的复位和暂停功能,并通过程序来显示语句和读入用户的键盘输入,以进行相应操作。此方案性价比高,但由于使用了软件延时,当芯片损耗以及芯片在工作时间过长后会出现倒计时不够准确。

2. 硬件框架原理图

图1 系统设计硬件框架 3. 硬件介绍 3.1 并行接口8255A (1) 8255A的内部结构

图2 8255A的内部结构 1) 8255A有3个8位数据接口,即接口A、接口B和接口C,可利用编程方法设置3个端口是作为输入端口还是输出端口; 2) 8255A能适应CPU和I/O接口之间的多种数据传送方式的要求,如无条件传送、查询方式传送、中断方式传送。8255A设置了方式0、方式1以及方式2; 3) 数据总线缓冲器是个双向三态8位数据缓冲器,与CPU系统数据总线相连,是8255A与CPU之间传输数据的必经之路。输入数据、输出数据、控制命令字都是通过数据总线缓冲器进行传递的; 4) 读/写控制逻辑电路接收来自CPU地址总线的信号和控制信号,并发出命令到两个控制组(A组和B组)。它控制把CPU发出的控制命令或输出的数据送到相应的端口,或者把外设的状态或输入的数据相应的端口送到CPU; 5) A组控制和B组控制一方面接收芯片内部总线上的控制字,一方面接收来自读/写控制逻辑电路的读/写命令,从而解决端口的工作方式和读/写操作。其中,A组控制电路控制端口A和端口C高4位(PC7-PC4)的工作方式和读/写操作:而B组控制电路控制端口B和端口C低4位(PC3-PC0)工作方式和读写操作。 (2) 8255A的外部引脚 图3 8255A的功能引脚图 1) 与外部设备端相连的引脚 PA7-PA0:A端口的输入/输出引脚; PB7-PB0:B端口的输入/输出引脚; PC7-PC0:C端口的输入/输出引脚; 2) 与CPU相连的引脚 RESET:复位信号,低电平有效。当RESET信号来到时,所有内部寄存器都被清0,同时3个端口被自动设为输入端口; D7-D0:8255A的数据线,和系统数据总线相连; CS:芯片选择信号。只有当CS有效时,读出信号RD和写入信号WR才对8255A有效; RD:读出信号。CPU通过IN指令使RD有效,将数据或状态信息从8255A中读到CPU; WR:写入信号。CPU通过OUT指令使WR有效,将数据或状态信息从CPU中写道8255A; A1,A0:端口选择信号。8255A内部有3个数据端口和1个控制端口,共4个端口。规定A1,A0为00、01、10和11时,分别选中端口A、端口B、端口C和控制端口。 (3) 8255A的控制字 1) 8255A的方式控制字 8255A共有两个控制字,即工作方式控制字和对C口置位/复位控制字。

8255A的工作方式字格式和各位的含义如图4 图4 8255A工作方式控制字格式 方式0为基本的输入输出方式;方式1为选通式输入/输出;方式3为双向选通输入/输出方式。 2) C口置位/复位控制字 8255A的C口置位/复位控制字的格式如图5

图5 8255A的C口置位/复位控制字 3.2 八段共阴数码管 一般8段LED显示器的内部结构和引脚如图6(a)所示。每段都是一个发光二极管,通过点亮不同的字段,可以显示0,1,…,9和A,B,…F。其内部各发光二极管之间的连接方法有共阴极和共阳极两种,如图6(b)和图6(c)所示。

(a)结构和引脚 (b)共阴极接法 (c)共阳极接法 图6 八段LED显示器 (1) 共阴极接法:把发光二极管的阴极连在一起构成公共阴极。使用时公共阴极接地,这样阳极端输入高电平的段发光二极管就导通点亮,而输入低电平的则不点亮。实验中使用的数码管为共阴极接法; (2) 共阳极接法:把发光二极管的阳极连在一起构成公共阳极。使用时公共阳极 接+5V。这样阴极端输入低电平的段发光二极管就导通点亮,而输入高电平的则不点亮。 表1 8段LED显示字形段码 字型 共阴极字形代码 字型 共阴极字形代码 字型 共阴极字形代码 0 3FH 6 7DH C 39H 1 06H 7 07H D 5EH 2 5BH 8 7FH E 79H 3 4FH 9 6FH F 71H 4 66H A 77H 灭 00H 5 6DH B 7CH

4. 功能电路 4.1 数码管显示电路

图7 显示连接电路 实验箱上有四个LED显示器,本实验利用PC口的最高两位选中X4和X3两个数码管,即进行位锁存; 八段数码管为阳极LED器件。要让A段点亮,要求PB0输出高电平“1”;要使B段熄灭,要求从PB1输出低电平“0”。其余各段以此类推。要使LED上显示0-9十个数字,需要按照如下段码表来驱动数码管的八段LED: 表2 8段数码管段码表 显示字符 0 1 2 3 4 5 6 7 8 9

八段代码 3FH 06H 5BH 4FH 66H 6DH 7DH 07H 7FH 6FH 4.2 开关与LED灯控制电路 图8 开关与LED灯控制电路 设置8255的A端口工作在方式0下,作为输出端,电路连接如上图,在倒计时到0的时候LED灯从左到右接着再从右往左依次点亮,实现跑马灯功能。开关K1为复位开关,在倒计时过程中置K1为“1”可以实现退出当前倒计时,置K1为“0”时又开始重新倒计时。开关K0为暂停开关,在倒计时过程中置K0为“1”可以暂停倒计时,置K0为“0”时,数码管接着当前的显示数据执行递减,并且在暂停过程中数码管始终显示暂停时的数据。

三. 程序模块及流程图 1. 8255A初始化 程序开始时对8255A进行初始化,A组和B组控制工作在方式0,因此方式字中的D6D5和D2为0。A口为输出,因此D4为0;C口高4位为输出,因此D3为0,低4位为输入,因此D0为1;B口为输出,因此D1为0。根据程序设计要求,8255A的方式控制字为1000 0001B,即81H。

2. 显示程序模块 根据方式控制字和连线可知,B口连接数码管的A~Dp进行段锁存,C口的高4位连接X4~X1进行位锁存。显示程序如下: DIS PROC NEAR ;数码管显示子程序 PUSH AX ;保护现场 PUSH DX MOV SI,3000H ;找到存数的缓冲区 MOV AL,0BFH ;1011 1111B,选中X3数码管 MOV DX,MY8255_C ;选中PC口,进而选中数码管 OUT DX,AL

相关文档
最新文档