(完整版)微机原理与接口技术 毕业课程设计
微型计算机原理及接口技术课程设计

微型计算机原理及接口技术课程设计课程设计概述微型计算机原理及接口技术课程设计是一门以Z80单片机为硬件平台,使用C 语言进行软件编程的课程设计。
该课程设计旨在引导学生深入理解微型计算机的原理及其接口技术,掌握软硬件协作设计的方法和技巧。
设计要求硬件要求1.使用Z80单片机作为系统的核心;2.至少连接三个以上的外设,如LCD显示屏、按键、LED灯等;3.采用最小系统方式,使用外挂晶振。
软件要求1.使用C语言进行编程;2.实现外设的控制和驱动;3.实现需求部分功能。
设计内容系统框架系统采用Z80单片机作为核心,通过软件驱动外设实现对系统的控制。
系统框图如下所示:st=>start: STARTlcd=>operation: 连接LCD显示屏keyboard=>operation: 连接按键led=>operation: 连接LED灯ctrl=>operation: 系统控制e=>end: ENDst->lcd->keyboard->led->ctrl->e功能需求系统需要实现的功能需求如下:1.通过LED灯显示系统启动后的信息;2.通过按键输入用户数据,并且通过LCD显示屏输出给用户;3.通过LCD显示屏反馈用户数据的计算结果。
实现细节1.LED灯显示:在系统启动过程中,LED灯需要进行连接和初始化,以便LED灯可以被控制显示。
在关键的启动阶段,LED灯需要显示系统启动成功的信息,以便用户可以得到正确的反馈。
2.按键输入:按键是用户与系统交互的主要方式,用户可以通过按键向系统输入数据。
系统需要支持多个按键同时输入,以便用户可以进行复杂操作。
3.LCD显示屏输出:在用户输入数据后,系统要及时地反馈给用户输入数据,并显示结果。
系统需要实现LCD显示屏控制功能,在屏幕上正确显示数据。
结论本文详细介绍了微型计算机原理及接口技术课程设计,包括课程设计概述、硬件要求、软件要求、设计内容等方面的内容。
微机原理与接口技术 课程设计

摘要霓虹灯主要是通过8255A对LED亮灭状态的控制,和8254定时/计数器的定时功能实现霓虹灯闪烁控制系统,外设是红、绿、黄三种颜色的发光二极管,在程序自动控制下,按照不同规律闪烁同时由数码管显示相应的闪烁方式。
关键字: 8255A 8254 LED 数码管一、设计的任务和要求设计霓虹灯闪烁控制系统,是外设的红、绿、黄三种颜色的发光二极管,在开关的控制下或者在程序自动控制下,按照不同规律闪烁。
要求发光二极管的亮、灭变化有一定的规律;发光二极管变化规律要求有多种状态。
二、设计小组成员及分工本次课设由冀任共同完成,在课设中遇到的问题四个人共同思考解决。
三、总体设计1、8254用于定时:定时/计数器0与定时器/计数器1共同构成100ms的定时器,确定执行相邻闪烁方式的间隔时间。
2.8255A用于控制LED的状态和数码管显示:PA0接8254的输出,B口接数码管,显示对应的闪烁方式,C口输出控制LED的状态。
3、六种闪烁方式:方式1:从左向右依次点亮8个LED灯,数码管显示1方式2:从右向左依次点亮8个LED灯,数码管显示2方式3:从左向右依次点亮4个的红灯、2个黄灯和2个绿灯,数码管显示3 方式4:从左向右两个两个的点亮8个LED灯,数码管显示4方式5:从两边向中间依次点亮8个LED灯,数码管显示5方式6:按红、绿、黄顺序点亮相同颜色的灯,数码管显示61、芯片介绍(1)芯片8255A8255A是具有3个8位并行I/O口3种工作方式的可编程并行接口芯片。
8255共有40个引脚,采用双列直插式封装。
D0--D7:三态双向数据线,与单片机数据总线连接,用来传送数据信息。
CS:片选信号线,低电平有效,表示芯片被选中。
RD:读出信号线,低电平有效,控制数据的读出。
WR:写入信号线,低电平有效,控制数据的写入。
Vcc:+5V电源。
PA0--PA7:A口输入/输出线。
PB0--PB7:B口输入/输出线。
PC0--PC7:C口输入/输出线。
【可编辑全文】微机原理与接口技术-课程设计任务书

可编辑修改精选全文完整版微机原理与接口技术课程设计任务及指导书(适用于0944121班)一、课程设计目的和任务:通过课程设计,主要达到以下目的:1、使学生增进对单片机的感性认识,加深对单片机理论方面的理解;2、使学生掌握单片机的内部功能模块的应用,如定时器/计数器、中断、片内外存贮器、I/O口、A/D、D/A等;3、使学生了解和掌握单片机应用系统的软硬件设计过程、方法及实现,为以后设计和实现单片机应用系统打下良好基础。
二、课程设计题目:【1】数字音乐盒设计要求:1、利用I/O口产生一定频率的方波,驱动蜂鸣器,发出不同的音响,从而演奏乐曲(最少储存三首乐曲,每首不少于三十秒);2、采用LCD显示;3、开机时有英文欢迎字符,播放时显示歌曲序号(或名称);4、可通过功能键选择乐曲,暂停,播放;扩展功能:显示乐曲播放时间或剩余时间;【2】数字温度计设计要求:1、基本范围为-50℃—110℃;2、精度误差小于0.5℃;3、LED数码管直读显示;扩展功能1、可以任意设定温度的上下限报警功能;2、实现语音报数。
【3】交通灯设计设计要求:1、设计一个十字路口交通灯控制器。
用单片机控制LED灯模拟指示。
2、系统包括人行道、左转、右转以及基本的十字路口交通灯功能;3、系统除具有基本交通灯功能外,还具有显示倒计时、时间设置、紧急情况处理功能。
扩展功能:1、分时段调整信号灯的点亮时间2、根据具体情况实现灵活手动控制功能。
【4】电子密码锁设计要求:1、系统能完成开锁、超时报警、超次锁定、管理员解密、修改用户密码基本的密码锁的功能;2、还具有调电存储、声光提示等功能。
扩展功能:通过遥控器实现锁的基本操作。
【5】电子钟的设计设计要求:1、可以实现23h59m59s的显示,用六位LED显示出来,显示格式为“时时:分分:秒秒”。
2、可以利用按键设置任意的时分秒各位,并具有按键复位功能;扩展功能:1、实现整点语音报时功能。
2、实现年月日的显示。
微机原理与接口技术 课程设计

《微机原理与接口技术》课程设计电气与自动化工程系 通信工程院 系:专 业: 年级班级: 学 号: 姓 名: 指导教师: 设计日期:一、设计目的用汇编语言独立完成一个程序,以达到熟练运用汇编语言编程实现加、减、乘、除的计算二、功能分析(1)开发环境:硬件:IBM PC机及其系列机ACSII键盘单色显示器或者彩色显示器软件:1M内存的硬盘或者1个软盘MASM是汇编语言开发环境下的。
汇编语言的特点:1.面向机器的低级语言,通常是为特定的计算机或系列计算机专门设计2.保持了机器语言的优点,具有直接和简捷的特点。
3.可有效地访问、控制计算机的各种硬件设备,如磁盘、存储器、CPU、I/ O端口等。
4.目标代码简短,占用内存少,执行速度快,是高效的程序设计语言。
5.经常与高级语言配合使用,应用十分广泛。
(2)总体设计功能系统分析主要包括设计的功能分析和系统的流程,功能分析放在首位,每一个软件都要能满足一定的功能才有使用价值。
根据功能需求来创建应用程序。
本设计的功能如下:1、输入2个数,先判断是加减运算还是乘除运算,再进行计算2、判断符号是否为运算符3、回车为换行符4、用十进制或十六进制输出运算结果(3)详细设计功能1、主程序功能:对两个数的加减乘除四则运算设置2、子程序功能:分别判断是加减还是乘除的运算输出运算结果三、调试和运行程序(1)调试程序:该汇编编译环境是MasmEdit,是一个集成开发环境,编译,链接,运行全部集成在一起。
程序编好后,直接点汇编按钮,就会提示你有无错误,刚刚编好第一次汇编时,出现了好多错误,其中很大一部分是编写代码时不小心,打字出现的错,其中,分号的错误是致命的,它让汇编无法进行,不能用中文输入法打的注释分号,要用英文。
参考网上的通讯录程序,在改了几天的代码后界面终于出现,但感觉界面不怎么友好,又改了一下界面和光标位置。
(2)运行程序执行时,需在文件名后直接跟上计算表达式,如在命令提示符下执行结果如下:c:\masm>js 3+25c:\masm>js 6*72Ac:\masm>js 10-46c:\masm>js 12/34四、总结第一次真正的感觉到自己是学计算机专业的,第一次真正自己完成一个大型的程序,刚开始拿到汇编程序设计题的时候确实有点儿兴奋,心想着一定要独立快速而又高质量的完成这个程序。
微机原理及接口技术课程设计

昆明理工大学理学院《微机原理与接口技术》综合课程设计成员:谢X X(2xxxxxxxxxx8)阳兴贤(201111103122)毕成旭(201111103216)专业:电子科学与技术指导教师:赵建军试验箱号: 8号完成时间: 2013年12月一、实验目的1. 了解简单LED灯规律工作基本原理。
2. 熟悉8255A并行接口的各种工作方式和应用。
3. 熟悉8253计数器/定时器的工作方式及应用编程,掌握利用软硬件相结合定时的方法。
二、实验内容本次课程设计的内容为简单规律LED灯控制管理:通过8253编程控制工作方式,实现精确延时。
通过8255并行接口来控制LED发光二极管的亮灭,实现试验箱上面的LED1-LED8灯的间歇闪烁。
三、实验原理(一)8253芯片的内部结构及引脚功能8253控制字intel8253是NMOS工艺制成的可编程计数器/定时器,工作的最高计数速率8253(2.6MHz)。
8253内部有三个计数器,分别称为计数器0、计数器1和计数器2,他们的机构完全相同。
每个计数器的输入和输出都决定于设置在控制寄存器中的控制字,互相之间工作完全独立。
每个计数器通过三个引脚和外部联系,一个为时钟输入端CLK,一个为门控信号输入端GATE,另一个为输出端OUT。
每个计数器内部有一个8位的控制寄存器,还有一个16位的计数初值寄存器CR、一个计数执行部件CE和一个输出锁存器OL。
执行部件实际上是一个16位的减法计数器,它的起始值就是初值寄存器的值,而初始值寄存器的值是通过程序设置的。
输出锁存器的值是通过程序设置的。
输出锁存器OL用来锁存计数执行部件CE的内容,从而使CPU可以对此进行读操作。
顺便提一下,CR、CE和OL都是16位寄存器,但是也可以作8位寄存器来用。
8253具有3个独立的计数通道,采用减1计数方式。
在门控信号有效时,每输入1个计数脉冲,通道作1次计数操作。
当计数脉冲是已知周期的时钟信号时,计数就成为定时。
《微机原理与接口技术课程设计》教学大纲

《微机原理与接口技术课程设计》教学大纲《微机原理与接口技术课程设计》教学大纲一、课程概述《微机原理与接口技术课程设计》课程以实践环节为主,根据课程的性质、任务、要求及学习的对象,将课程内容分三个层次:基础性实验、综合设计性实验和科技创新实验。
前两个层次实验,只给出实验任务,由学生自行设计电路和程序,拟订实验方法和步骤。
第三个层次的实验,由学生自拟题目,自选器件,独立设计电路和程序,并付诸实现。
实验采用两种方法,第一种方式是在实验室利用实验箱和计算机进行硬件和软件实验,第二种方式是采用EDI技术手段,使学生学会计算机辅助设计和电子设计自动化的方法。
经过多层次、多方式教学的全面训练后,学生应达到下列要求:1. 进一步巩固和加深计算机接口技术的理解,提高综合运用所学知识,独立设计计算机测控系统的能力。
2. 能根据需要选学参考书,查阅手册,通过独立思考,深入钻研有关问题,学会自己独立分析问题、解决问题,具有一定的创新能力。
3. 能正确使用仪器设备,掌握测试原理,熟练运用实验工具和开发环境。
4. 能独立撰写设计说明,正确绘制计算机测控系统的各类图纸。
5. 课前做好预习,准确分析实验结果。
二、课程目标《微机原理与接口技术课程设计》是继《微机原理与接口技术》课程之后而开设的独立实验课程,是理论教学的深化和补充,具有较强的实践性,是一门重要的计算机专业课程,可作为计算机科学技术和通信工程类本科专业学生的必修课。
随着科学技术迅速发展,理工科大学生不仅需要掌握计算机方面的基本理论知识,而且还需要掌握基本的实验技能及一定的科学研究能力。
通过该课程的学习,使学生巩固和加深计算机技术理论知识。
通过实践,进一步加强学生独立分析问题和解决问题的能力和综合设计及创新能力的培养;同时注意培养学生事实求是、严肃认真的科学作风和良好的实验习惯,为今后工作打下良好的基础。
适用专业:计算机科学技术(本科)、通信工程(本科)。
主要仪器设备及实验材料:双踪示波器、微机接口技术和EDA实验箱、逻辑测试笔、信号发生器、稳压电源、计算机。
微机原理与接口技术课程设计

目录一.设计目地。
2二.设计要求。
2三.设计任务及项目说明。
2四.硬件设计原理4.1最小系统原理图及PCB。
34.2扩展系统原理图及PCB。
44.3硬件工作原理。
6五.购置元器件5.1最小系统元器件。
75.2扩展元件。
8六.程序设计6.1程序设计原理。
86.2程序内容。
8七.作品功能。
29八.心得体会。
29参考文献。
30一.设计目的使大家对学习的微机原理与接口技术进一步的掌握和巩固,掌握电路板的焊接技术,会利用软件实现简单的程序设计和调试。
二.设计要求根据最小系统的原理图及PCB,购齐相关电子元件,完成实验开发板的焊接,并为扩展留下接口。
然后利用最小系统的接口,完成扩展训练,扩展项目如下,可自行选择(也可超出以下题目自拟,需包含输入和输出)。
三.设计任务及项目说明这里选择流水灯项目。
流水灯是一串按一定的规律像流水一样连续闪亮。
流水灯控制是可编程控制器的一个应用,其控制思想在工业控制技术领域也同样适用。
流水灯控制可用多种方法实现,但对现代可编程控制器而言,利用移位寄存器实现最为便利。
通常用左移寄存器实现灯的单方向移动;用双向移位寄存器实现灯的双向移动。
本案例利用价格低廉的AT89C51系列单片机控制基色LED灯泡从而实现丰富的变化。
四.硬件设计原理4.1最小系统原理图及PCB最小系统原理图8051最小系统PCB4.2扩展系统原理图及PCB扩展系统原理图扩展系统PCB4.3硬件工作原理整个系统工作由软件程序控制运行,以AT89C51单片机作为主控核心,与驱动等模块组成核心主控制模块。
在主控模块上设有晶振电路和32个LED 显示二极管,根据需要编写若干种亮灯模式,根据各种亮灯时间的不同需要,在不同时刻输出灯亮或灯灭的控制信号。
五.购置元器件5.1最小系统元器件5.2扩展元件六.程序设计6.1程序设计原理用查表的方法控制点亮流水灯,即移位的思想:0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xff;//左边单个点亮0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00;//右边逐个点亮0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff;//左边逐个熄灭0x7f,0x8f,0xdf,0xef,0xf7,0xf8,0xfd,0xfe,0xff;//右边单个点亮0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00;//左边逐个点亮0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff;//右边逐个熄灭0xfc,0xf9,0xf3,0xef,0xcf,0x9f,0x3f,0xff;//左边逐两个点亮0x3f,0x9f,0xcf,0xe7,0xf3,0xf9,0xfc,0xff;//右边逐两个点亮0xf8,0xf1,0xe3,0x07,0x8f,0x1f,0xff;//左边逐三个亮0x1f,0x8f,0x07,0xe3,0xf1,0xf8,0xff;//右边逐三个亮6.2程序内容#include<reg52.h>#define uchar unsigned charuchar flag=200;///////////////////////////////////////////////////////////////////////uchar code Tab1[]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F,0xFF};//暗中左移向下uchar code Tab2[]={0x7F,0xBF,0xDF,0xEF,0xF7,0xFB,0xFD,0xFE,0xFF};//暗中右移向上uchar code Tab3[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x00};//亮中左移向下uchar code Tab4[]={0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01,0x00};//亮中右移向上uchar code Tab11[]={0xFE,0xFC,0xF8,0xF0,0xE0,0xC0,0x80,0x00,0xff};//暗中左移向下uchar code Tab22[]={0x7F,0x3F,0x1F,0x0F,0x07,0x03,0x01,0x00,0xff};////////////////////////////////////////////////////////////////////uchar code Tab33[]={0x80,0xC0,0xE0,0xF0,0xF8,0xFC,0xFE,0xFF};uchar code Tab44[]={0x01,0x03,0x07,0x0F,0x1F,0x3F,0x7F,0xFF};uchar code Tab55[]={0x08,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff,0xff};uchar code Tab5[]={0x00,0x80,0xC0,0xE0,0xF0,0xF8,0xFC,0xFE,0xff};uchar code Tab6[]={0x00,0x01,0x03,0x07,0x0F,0x1F,0x3F,0x7F,0xff};uchar code Tab7[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};uchar code Tab8[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};////////////////////////////////////////////////////////////////void shansuo();void xl();///////////////////////////////////////////////////////////////void delay(void){unsigned char m,n;for(m=0;m<flag;m++)for(n=0;n<250;n++);}///////////////////////////////////void hy1(void) //点亮状态逆时针旋转90度(一个一个灭){unsigned char i;for(i=0;i<8;i++){P0=Tab11[i];P3=Tab22[i];P2=Tab11[i];P1=Tab22[i];delay();}for(i=0;i<8;i++){P0=Tab44[i];P3=Tab55[i];P2=Tab44[i];P1=Tab55[i];delay();}}///////////////////////////////////////////void hy2(void) //暗中逆时针转360。
微机原理与接口技术课程设计_数字信号发生器

微机系统与接口技术课程设计任务书一、设计目的1、建立微机系统概念加深对微机系统的理解和认识,提高微机系统的应用能力。
2、进一步学习和掌握微机程序设计方法,通过应用程序的应用和调试学习程序的调试。
3、进一步熟悉微机典型接口芯片的使用,接口及外部设备系统的连接方法。
二、题目微机应用系统设计——数字信号发生器的设计三、设计要求1、以8086(8088)CPU为主控单元构建微机应用系统。
2、应用系统的硬件设计,画出电路原理图和线路连接图。
3、应用系统的软件设计,画出软件流程图,写出主要控制程序。
4、根据实验条件,进行微机应用系统的部分模拟调试工作,写出调试说明。
5、整理设计说明,列出参考文献清单。
四、列出使用的元器件和设备清单五、完成定时/计数器8253,中断控制器8259实验,写出实验报告目录第一章绪论 ......................................................................................... - 3 -第二章硬件设计 ................................................................................. - 4 -一、硬件的选择与设计 ....................................................................... - 4 -二、设计原理 ....................................................................................... - 6 -第三章软件设计 ................................................................................. - 9 -一、子程序设计 ................................................................................... - 9 -二、总程序设计 ................................................................................. - 15 -第四章实验调试与设计 ................................................................... - 20 -一、实验箱上连线 ............................................................................. - 20 -二、调试修正程序 ............................................................................. - 20 -三、产生的波形 ................................................................................. - 20 -第五章设计总结 ............................................................................... - 22 -参考文献 ............................................................................................. - 23 -元器件清单 ......................................................................................... - 24 -第一章绪论信号发生器是我们在学习,科学研究等方面不可缺少的工具,锯齿波和正弦波、矩形波、三角波是常用的基本测试信号。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
上海工程技术大学Shanghai University of Engineering Science《微机原理与接口技术》课程设计姓名:郭扬学院:电子电气工程学院专业:自动化授课教师:戎自强班级: 0 2 1 2 1 0 2学号: 0 2 1 2 1 0 2 2 2学年:2012—2013学期:第一学期20 12 年12月15日目录一、课程设计的目的 (3)二、设计题目1的分析 (3)三、设计题目2的分析 (9)四、附加内容的分析 (17)五、设计总结 (27)六、参考文献 (28)一、课程设计的目的:1.通过《微机原理与接口》课程设计,使我们能够进一步了解微型计算机工作原理, 微型计算机的硬件结构及微型计算机软件编程。
2.要求我们根据接口电路的硬件要求进行计算机的汇编语言程序设计,使我们的软件编程能力得到加强,对接口电路的综合应用能力有较大提高。
3. 课程设计有利于基础知识的理解和逻辑思维的锻炼。
本课程设计是培养和锻炼我们综合应用所学理论知识解决实际问题能力、进行工程实训的重要教学环节,也能培养我们理论联系实际、敢于动手、善于动手和独立自主解决设计实践中遇到的各种问题能力。
4. 微机原理与接口技术是一门实践性较强的课程,我们在学完该课程之后,进行一次课程设计,是非常必要的。
这能使我们将课堂所学的知识和实践有机结合起来,初步掌握计算机应用系统设计的步骤和接口设计的方法,提高分析和解决实际问题的能力。
通过设计实践,培养我们查阅专业资料、工具书或参考书,了解有关工业标准,掌握现代设计手段和软件工具,并能以图纸和说明书表达设计思想和结果的能力。
在设计中不但要培养和提高学生解决工程具体问题、动脑动手的技术工作能力,而且还要逐步建立科学正确的设计和科研思想,培养良好的设计习惯,牢固树立实事求是和严肃认真的工作态度。
二、设计题目1的分析:⑴.设计目的:1.熟练掌握8088汇编语言程序各种结构的设计及编程方法;2.熟练掌握DOS中断功能调用的方法。
⑵.设计要求:编制一个完整的程序,计算100个正整数(字数据)之和,如果不超过机器数的范围(65535),则计算其平均值并存于RESULT中,否则显示“overflow”。
⑶.设计思想:本设计要求100个正整数之和再按设计要求显示,但是在将源程DOS 时,输入100数要溢出时用cup代码表示不明显,直观,所以我将100个该写成10个数,手动输入10个数,使程序简单明了。
虽然变成了10个数,其他源代码都与100个数时意义相同,能满足设计的要求及目的。
程序开始时定义10个正整数以及存放结果的变量,然后10个数相加,在期间如果超出“65535”,则通过DOS输出“overflow”,如果没有则继续相加,直至相加完成,完成后再通过DOS求平均值,再通过DOS输出结果至目标地址,程序结束。
⑷.程序源代码:①.没有溢出时:DATA SEGMENTSTR DB 'overflow!',0DH,0AH,'$'RESULT DW ?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXXOR AX,AXMOV SI,AXMOV CX,100SUM:ADD AX,MEM[SI]JC NEXTADD SI,2LOOP SUMMOV BX,100MOV DX,0DIV BXMOV RESULT,AXJMP SHORT E XITNEXT:LEA DX,STRMOV AH,09HINT 21HEXIT:MOV AH,4CHINT 21HCODE ENDSEND START①.溢出时:DATA SEGMENTSTR DB 'overflow!',0DH,0AH,'$' RESULT DW ?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA START:MOV AX,DATAMOV DS,AXXOR AX,AXMOV SI,AXMOV CX,100SUM:ADD AX,MEM[SI]JC NEXTADD SI,2LOOP SUMMOV BX,100MOV DX,0DIV BXMOV RESULT,AXJMP SHORT E XIT NEXT:LEA DX,STRMOV AH,09HINT 21HEXIT:MOV AH,4CHINT 21HCODE ENDSEND START⑸.程序流程图:⑹.调试结果和程序结果分析:①.没有溢出时:118F:0000 B88C11 MOV AX,118C118F:0003 8ED8 MOV DS,AX118F:0005 33CO XOR AX AX118F:0007 8BFO MOV SI,AX118F:0009 B9OAOO MOV CX OOOA118F:0010 7212 JB 0024118F:0012 83C602 ADD SI,+02118F:0015 E2F5 LOOP OOOC118F:0017 BB0A00 MOV BX,000A118F:001A BA0000 MOV DX,0000118F:001D F7F3 DIV BX118F:001F A31F00 MOV [OO1F],AX118F:0022 EB08 JMP 002C118F:0024 8D161400 LEA DX,[0014]118F:0028 B409 MOV AH,09118F:002A CD21 INT 21118F:002C B44C MOV AH,4C-G 002CAX=0005 BX=000A CX=0000 DX=0000 SP=0000 BP=OOOO SI=0014 DI=0000 DS=118C ES=117C SS=118C CS=118F IP=002C MV UP EI PL NZ NA PE NC118F:002C B44C MOV AH,4C-D 0000118C:0000 05 00 05 00 05 00 05 00-05 00 05 00 05 00 05 00118C:0010 05 00 05 00 6F 76 65 72-66 6C 6F 77 0D 0A 24 05118C:0020 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00118C:0030 B8 8C 11 8E D8 33 C0 8B-F0 B9 0A 00 03 84 00 00 118C:0040 72 12 83 C6 02 E2 F5 BB-0A 00 BA 00 00 F7 F3 A3 118C:0050 1F 00 EB 08 8D 16 14 00-B4 09 CD 21 B4 4C CD 21 118C:0060 04 89 87 C4 03 89 97 C6-03 FF 36 26 21 EB CC 7F 118C:0070 83 C4 02 2B C0 50 FF 36-64 27 FF 36 62 27 8B 1E ②.溢出时:118F:0000 B88C11 MOV AX,118C118F:0003 8ED8 MOV DS,AX118F:0005 33CO XOR AX AX118F:0007 8BFO MOV SI,AX118F:0009 B9OAOO MOV CX OOOA118F:0010 7212 JB 0024118F:0012 83C602 ADD SI,+02118F:0015 E2F5 LOOP OOOC118F:0017 BB0A00 MOV BX,000A118F:001A BA0000 MOV DX,0000118F:001D F7F3 DIV BX118F:001F A31F00 MOV [OO1F],AX118F:0022 EB08 JMP 002C118F:0024 8D161400 LEA DX,[0014]118F:0028 B409 MOV AH,09118F:002A CD21 INT 21118F:002C B44C MOV AH,4C-G 002CoverflowAX=0924 BX=0000 CX=0001 DX=0014 SP=0000 BP=OOOO SI=0012 DI=0000 DS=118C ES=117C SS=118C CS=118F IP=002C MV UP EI PL NZ AC PO CY118F:002C B44C MOV AH,4C三、设计题目2的分析:⑴.设计目的:1.掌握8088CPU及存储器硬件接口电路的设计连接;2.掌握相关硬件驱动软件设计及信息处理软件的设计调试的方法。
⑵.设计要求:设计十字路口交通灯控制系统。
基本要求:完成双向红绿黄灯的配合控制。
附加内容:在基本的电路中加入必要的灯光闪灯,人行定时显示等。
⑶.设计思想:把实验箱中的8255的8个C口按我规定的顺序接到实验箱红绿灯模块的接口处。
实验中,8255的C口作为输出口,通过编写程序来控制C口输出的信号,信号从C口输出后以二进制数的形式被输出到实验箱的红绿灯模块的接口。
再以8255 8个C口所输出的高低电平来控制实验箱的红绿灯模块的灯的情况。
实验时,通过高低电平测试,灯亮是低电平有效,且DG是指灯亮绿色,DR是指灯亮红色,若同时驱动则灯亮黄色。
我所设计的红绿灯双向亮灯情况如下,假使开始时,北南方向亮红灯,东西方向亮绿灯。
调用延时子程序后,北南方向还为红灯,东西两方向灯熄灭,再调用延时子程序后,北南两方向不变,东西两方向亮绿灯,通过这样反复几次,以造成东西方向灯闪烁的效果,此后,东西两方向变黄灯,北南两方向还为红灯,调用延时子程序后,东西两方向变为红灯,北南两方向变为绿灯,后面东西方亮灯情况与北南方亮灯情况在前面的状态下交换。
东西方和南北方亮灯情况交换完成后再返回到开始东西方亮绿灯,北南方向亮红灯,最后进行跳转,重新开始输入信号。
这样就可以完成双向红绿黄灯的配合控制。
⑷.实验电路及接线:实验箱上控制红绿灯的接口线路如下图所示:⑸.程序源代码:DSEG SEGMENTDSEG ENDSSSEG SEGMENT SSEGSTA DW 50 DUP(?)TOP EQU LENGTH STASSEG ENDSCSEG SEGMENTASSUME CS:CSEG,DS:DSEG,ES:DATA,SS:SSEG BEGIN: MOV AL,80HMOV DX,203HOUT DX,ALMOV DX,202HOVF: MOV AL,069HOUT DX,ALCALL DELAYMOV AL,07DHOUT DX,ALCALL DELAYMOV AL,069HOUT DX,ALCALL DELAYMOV AL,07DH OUT DX,AL CALL DELAY MOV AL,069H OUT DX,AL CALL DELAY MOV AL,07DH OUT DX,AL CALL DELAY MOV AL,069H OUT DX,AL CALL DELAY MOV AL,07DH OUT DX,AL CALL DELAY MOV AL,069H OUT DX,AL CALL DELAY MOV AL,041H OUT DX,AL CALL DELAY MOV AL,096H OUT DX,AL CALL DELAY MOV AL,0D7HOUT DX,AL CALL DELAY MOV AL,096H OUT DX,AL CALL DELAY MOV AL,0D7H OUT DX,AL CALL DELAY MOV AL,096H OUT DX,AL CALL DELAY MOV AL,0D7H OUT DX,AL CALL DELAY MOV AL,096H OUT DX,AL CALL DELAY MOV AL,0D7H OUT DX,AL CALL DELAY MOV AL,096H OUT DX,AL CALL DELAY MOV AL,014H OUT DX,ALCALL DELAYJMP OVFDELAY P ROC NEARMOV BX,1AAHNEXT1: MOV CX,0DFHNEXT2: LOOP NEXT2DEC BXJNZ NEXT1RETDELAY E NDPCSEG ENDSEND BEGIN⑹.程序结果分析:将实验箱与电脑连接,打开电脑编程软件,将所编译的程序打入其中,完成后将程序捎入实验箱中,程序开始后,8255输出信号69H,及为二进制数在其对应的8个红绿灯接口中,DG1为1,DR1为0,DG4为1,DR4为0,即左右两方向灯亮红灯;DG2为0,DR2为1,DG3为0,DR3为1,即上下两方向灯亮绿灯。