微机原理课程设计报告
微机原理课设报告
中南大学微机原理课程设计报告一、课程设计目的通过本次课程设计要掌握8088,8255,0809,0832,8279 等多种芯片使用的方法,灵活运用课本知识,加深所学的知识,对所学的相关芯片的原理、内部结构、使用方法等有更加深刻的了解,学会利用课本知识联系实际应用及编程。
同时并了解综合问题的程序设计掌握实时处理程序的编制和调试方法,掌握一般的设计步骤和流程,使我们以后搞设计时逻辑更加清晰。
二、课程设计任务本次课设选题为“模拟电压采集,直流电机控制”。
根据我自己对这个课题的理解,我认为这个课题应该实现以下的要求:基本要求:1、对模拟电压进行采集转换为数字信号,并实时显示。
2、用转换的到的数字信号再经数模转换,对直流电机进行控制。
拓展要求:1、通过发光二极管作为信号指示灯,实时的指示直流电机的工作状态是否正常。
2、建立报警电路,对电机非正常工作情况以及反转工作情况下进行报警。
三、设计思想与原理1、设计思想本次课设选题为“模拟电压采集,直流电机控制”,基本分为两大部分:模拟量采集的模数转换部分,以及电机控制中的数模转换部分。
而为了让模拟量的采集结果更加明显可察,将加入数码管显示模块,实时显示模拟量采集的大小情况。
与此同时,在选题基础上添加了直流电机工作状态指示灯电路和报警电路。
2、设计原理根据试验箱相关配置,取电位器0~5V 可调电压为模拟量输出模块,可线性调节输出。
取芯片ADC 0809 对采集到的模拟信号进行模数转换,将0~5V 的电压信号转为00~FF 的数字信号,并通过8279 键盘扫描输出模块进行相应的显示输出。
得到转换后的数字量之后,使用DAC0832 数模转换芯片进行数模转换,并将所得模拟量输出到直流电机控制端,进行电机驱动。
对于添加的模块,主要通过8255 芯片来实现,取8255 的PA0 口作为输出端口,连接试验箱上的开关量输入显示区的发光二极管。
对A口分别赋值01H (直流电机正向非正常工作)、02H(直流电机正常工作)、04H(直流电机反向非正常工作)并输入给开关量输入显示区的发光二极管,驱动前三个二极管在电机的三种工作状态下分别发光,从而实现指示灯电路。
微机原理课程设计报告彩灯控制器
专业班级:计算机1301姓名:学号:指导老师:2016年 1 月15 日彩灯控制器一、实验要求、设计目的及功能实现实验要求:现在有8盏彩灯,4个开关作为输入,控制4种闪烁方式。
当没有开关闭合时,4种花型依次轮流闪烁,每种花型闪烁时间持续2分钟,每盏灯点亮的时间为1秒。
只有某一个开关闭合时,对应的花型连续不断的闪烁。
设计实现该功能的电路,并编写完整的代码。
设计目的:(1)巩固和加深微机原理所学知识;(2)学习掌握一般的软硬件的设计方法和查阅、运用资料的能力。
所实现的功能:本课程设计所设计的彩灯控制器的主要功能有:向外发散显示、向中递推显示、0-7依次显示、奇数灯显示,偶数灯显示等功能。
输出采用8个二极管显示,每个灯亮1秒。
二、实验原理在这次课程设计中主要用到了8255A可编程并行接口芯片可用程序来设置芯片的工作方式,通用性强,使用灵活,可为CPU与外设之间提供并行输入/输出的通道。
8254给1S的信号送到8259,再送到8255A控制灯亮的时间。
三、硬件原理图0 0000000000000000000000000008255工作原理及内部结构1.8255A内部结构8255A的内部结构如图2所示,它由4部分组成:(1) 数据总线缓冲器它是一个双向三态8位缓冲器,用作与系统总线连接是的缓冲部件.CPU与8255A之间所有的数据的发送与接收以及CPU向8255A发送的控制信息和8255A向CPU回送的状态信息都是通过它传送的(2)三个8位端口PA、PB、PC端口A(PA口):有一个8位数据输入锁存器和一个8位数据输入锁存/缓冲器;端口B(PB口):有一个8位数据输入缓冲器和一个8位数据输入/输出,锁存/缓冲存储器器;端口C(PC口):有一个8位数据输入缓冲存储器器和一个8位数据输出锁存/缓冲器。
通常PA口与PB口用作输入/输出的数据端口,PC口用作控制和状态信息端口。
PC口可以分为两个四位的端口,每个端口包含一个四位锁存器,可分别同PA 口和PB口配合使用,用作控制信号(输出)或作为状态信号(输入)。
微机原理课程设计报告文库
微机原理课程设计报告文库一、课程目标知识目标:1. 理解微机原理的基本概念,掌握微机硬件结构及其功能;2. 学会分析微机工作原理,了解指令系统及编程方法;3. 掌握微机接口技术,了解常见接口芯片的功能和应用。
技能目标:1. 能够运用所学知识进行微机系统的简单设计和调试;2. 培养学生具备一定的微机编程能力,能够编写简单的汇编语言程序;3. 提高学生动手实践能力,能够进行基本的硬件焊接和电路搭建。
情感态度价值观目标:1. 培养学生对微机原理课程的兴趣,激发学生学习热情;2. 培养学生具备良好的团队合作意识,学会与他人共同解决问题;3. 增强学生的创新意识,鼓励学生勇于探索新知识,提高自主学习能力。
课程性质:本课程为理论与实践相结合的课程,强调培养学生的动手实践能力和创新能力。
学生特点:学生已具备一定的电子技术和计算机基础,具有较强的学习能力和好奇心。
教学要求:教师应注重理论与实践相结合,引导学生主动参与课堂讨论,鼓励学生动手实践,培养学生解决问题的能力。
在教学过程中,关注学生的学习进度,及时调整教学策略,确保课程目标的实现。
通过本课程的学习,使学生能够掌握微机原理的基本知识,具备实际应用能力,为后续相关课程和未来职业发展打下坚实基础。
二、教学内容本课程教学内容主要包括以下几部分:1. 微机硬件结构:介绍微处理器、存储器、输入输出接口等硬件组件的工作原理和功能;教材章节:第一章 微机系统概述内容列举:CPU结构、存储器分类、I/O接口基础等。
2. 指令系统与编程:讲解汇编语言的基本指令、寻址方式、程序设计方法等;教材章节:第二章 指令系统与汇编语言内容列举:基本指令、汇编语言程序结构、循环、分支等编程技巧。
3. 微机接口技术:分析常见接口芯片的原理与应用,如并行接口、串行接口、定时器/计数器等;教材章节:第三章 微机接口技术内容列举:并行接口、串行接口、定时器/计数器接口芯片等。
4. 微机系统设计与实践:培养学生动手实践能力,进行简单的微机系统设计与调试;教材章节:第四章 微机系统设计与实践内容列举:硬件焊接、电路搭建、程序下载与调试等。
微机控制原理课程设计报告
微机控制原理课程设计报告一、课程目标知识目标:1. 让学生掌握微机控制原理的基本概念,包括微处理器、接口技术、中断处理等;2. 使学生了解微机控制系统的结构组成、工作原理及设计方法;3. 帮助学生理解并运用微机控制技术进行简单的控制系统设计。
技能目标:1. 培养学生运用微机控制原理解决实际问题的能力;2. 提高学生进行微机控制系统分析与设计的实际操作技能;3. 培养学生团队协作、沟通交流的能力,以适应实际工作中的项目开发需求。
情感态度价值观目标:1. 激发学生对微机控制技术的兴趣,培养其探索精神和创新意识;2. 培养学生严谨的科学态度和良好的工程伦理观念;3. 增强学生的国家意识,使其认识到微机控制技术在我国经济社会发展中的重要作用。
课程性质:本课程为专业选修课,旨在帮助学生掌握微机控制原理的基础知识,提高学生的实际操作能力和创新能力。
学生特点:学生已具备一定的电子技术基础,具有较强的学习能力和实践欲望。
教学要求:结合课本内容,注重理论与实践相结合,以项目为导向,培养学生解决实际问题的能力。
通过课程学习,使学生能够达到预定的知识、技能和情感态度价值观目标。
在教学过程中,将目标分解为具体的学习成果,便于教学设计和评估。
二、教学内容1. 微机控制系统概述:介绍微机控制系统的基本概念、发展历程、应用领域,使学生了解微机控制技术的背景及重要性。
教材章节:第一章2. 微处理器及其接口技术:讲解微处理器的结构、工作原理,以及常用的接口技术。
教材章节:第二章、第三章3. 中断处理与定时器/计数器:分析中断处理的过程,介绍定时器/计数器的工作原理及应用。
教材章节:第四章、第五章4. 微机控制系统设计方法:阐述微机控制系统的设计步骤、方法以及注意事项。
教材章节:第六章5. 微机控制系统实例分析:分析典型的微机控制系统案例,使学生了解实际应用中的设计方法和技巧。
教材章节:第七章6. 实践教学环节:组织学生进行微机控制系统的设计与实践,提高学生的实际操作能力。
微机原理课程设计报告
微机原理课程设计报告课程设计是每一个大学生在大学生涯中都不可或缺的,它使我们在实践中了巩固了所学的知识、在实践中锻炼自己的动手能力,本文就来分享一篇微机原理课程设计报告,希望对大家能有所帮助!微机原理课程设计报告(一) 以前从没有学过关于汇编语言的知识,起初学起来感觉很有难度。
当知道要做课程设计的时候心里面感觉有些害怕和担心,担心自己不会或者做不好。
但是当真的要做的时候也只好进自己作大的努力去做,做到自己最好的。
我们在这个过程中有很多自己的感受,我想很多同学都会和我有一样的感受,那就是感觉汇编语言真的是很神奇,很有意思。
我们从开始的担心和害怕渐渐变成了享受,享受着汇编带给我们的快乐。
看着自己做出来的东西,心里面的感觉真的很好。
虽然我们做的东西都还很简单,但是毕竟是我们自己亲手,呵呵,应该是自己亲闹做出来的。
很有成就感。
我想微机原理课程设计和其他课程设计有共同的地方,那就是不仅加深和巩固了我们的课本知识,而且增强了我们自己动脑,自己动手的能力。
但是我想他也有它的独特指出,那就是让我们进入一个神奇的世界,那就是编程。
对于很多学过汇编或者其他的类似程序的同学来说,这不算新奇,但是对于我来说真的新奇,很有趣,也是我有更多的兴趣学习微机原理和其他的汇编。
微机原理与接口技术是一门很有趣的课程,任何一个计算机系统都是一个复杂的整体,学习计算机原理是要涉及到整体的每一部分。
讨论某一部分原理时又要涉及到其它部分的工作原理。
这样一来,不仅不能在短时间内较深入理解计算机的工作原理,而且也很难孤立地理解某一部分的工作原理。
所以,在循序渐进的课堂教学过程中,我总是处于“学会了一些新知识,弄清了一些原来保留的问题,又出现了一些新问题”的循环中,直到课程结束时,才把保留的问题基本搞清楚。
学习该门课程知识时,其思维方法也和其它课程不同,该课程偏重于工程思维,具体地说,在了解了微处理器各种芯片的功能和外部特性以后,剩下额是如何将它们用于实际系统中,其创造性劳动在于如何用计算机的有关技术和厂家提供的各种芯片,设计实用的电路和系统,再配上相应的应用程序,完成各种实际应用项目。
微机技术原理课程设计报告
微机技术原理课程设计报告设计背景和目的:微机技术原理课程设计的主要目的是培养学生的计算机系统综合能力,通过设计和实现一个完整的微机系统,来加深学生对微机技术原理的理解,提高他们的动手能力和解决问题的能力。
本次课程设计的主题是设计一个简单的计算器程序,要求能够实现基本的四则运算功能以及其它一些扩展功能。
设计方案和流程:1. 确定系统需求:根据题目要求,确定计算器的基本功能为加减乘除四则运算,同时考虑到用户体验,还要加入其他一些功能,如开平方、取余等。
2. 确定系统架构:根据需求,确定使用的软件开发平台和工具,如C++编程语言和Visual Studio集成开发环境(IDE)。
3. 分解系统模块:根据计算器的功能,将系统分解为多个模块,如界面模块、算法模块和控制模块等。
4. 设计界面模块:根据用户交互需求,设计并实现计算器的用户界面,包括数字按钮、运算符按钮和结果显示区域等。
5. 设计算法模块:根据需求,设计并实现计算器的算法模块,包括加、减、乘除等基本运算算法,以及开平方、取余等扩展算法。
6. 设计控制模块:根据系统架构,设计并实现计算器的控制模块,用于协调界面模块和算法模块之间的交互,处理用户输入和计算结果的显示。
7. 调试和测试:在开发过程中,及时调试和测试各个模块的功能,确保各模块之间的协调正常,并对程序进行全面测试,保证程序的正确性和稳定性。
实施计划和进度安排:本次课程设计将分为多个阶段进行,每个阶段都有具体的任务和时间安排。
以下是整个设计的大致计划和进度安排:1. 第一周:确定系统需求,设计系统架构,完成界面模块的设计和实现。
2. 第二周:完成算法模块的设计和实现,完成控制模块的设计和实现。
3. 第三周:进行系统的集成测试和调试,解决存在的问题和bug。
4. 第四周:进行功能测试和性能测试,优化程序,准备最终的系统交付。
设计结果和实施效果:经过设计和实施,计算器程序可以实现基本的四则运算功能,并且还加入了一些扩展功能,如开平方、取余等。
微机原理课程设计报告---红绿灯
一、设计要求(1)南北路口的绿灯、东西路口的红灯同时亮5秒。
(2)南北路口的黄灯闪烁若干次,维持3秒,同时东西路口的红灯。
(3)南北路口的红灯、东西路口的绿灯同时亮5秒。
(4)南北路口的红灯、同时东西路口的黄灯亮烁若干次,维持3秒。
(5)转(1)重复。
(6)紧急情况可以手动控制红绿灯的变换。
一个开关控制南北绿,东西红,另一个按钮南北红,东西绿。
(7)黄灯闪烁时扬声器发声,提醒。
二、设计目的(1)了解红绿灯电路的基本工作原理;(2)了解8086微型计算机的工作过程;(3)学习8086CPU与外围设备的接口技术。
(4)运用微机原理与接口技术、数字电路、汇编语言程序设计等课程学到的知识,掌握微型计算机接口的方法和原理,具备一定的微机应用开发的实践能力,加深对理论课程的理解。
三、设计的具体实现原理框图3.1系统概述本次设计是模拟交通灯实时控制系统,以8086CPU为核心加以并行接口芯片8255、可编程计数器/定时器8253、LED灯、开关等组成的系统。
以LED灯模拟十字路口的红绿灯。
对交通灯控制的实现主要是通过编写汇编语言程序对8255的I/O及8253进行控制,从而实现对灯的亮与灭进行控制。
PC口做输入,读取定时,及应急开关状态。
用8253对扬声器的发声进行控制,利用软件编程给定8253芯片某一频率的方波信号,并且设定8255芯片的门控信号PB0 =1,则可控制扬声器发声。
利用8253的计数器1方式3、计数器0方式0实现对扬声器的控制,以及对于交通灯亮灭时间的精确延时。
3.2 8086CPU介绍8086由执行部件和总线接口部件组成(内部结构图如下图)外部设备8086内部结构图1. 执行部件EU由算术逻辑单元(ALU)、标志寄存器、通用寄存器组和EU控制器等部件组成。
主要功能是执行指令:一般顺序执行,EU不断地从指令队列中取指令连续执行,而省去访问存储器取指令的时间。
需要访问存储器取操作数时,EU将访问地址送给BIU后,将要等待操作数到来后才能继续操作;遇到转移类指令时,要将指令队列中的后续指令作废,等待BIU重新从存储器取出目标地址中的指令代码进入指令队列后,EU才能继续执行指令。
微机原理课程设报告
微机原理课程设计设计报告一、设计目的1、对微机原理课程中所学的理论知识进行进一步巩固和加深。
2、学会查阅相关手册与资料,培养独立分析与解决问题的能力。
3、学会使用屏幕编辑程序—MASM对汇编程序的编写,调试和运行。
4、了解对系统中DOS和BIOS的使用,弄懂汇编程序的上机过程以及如何运用DEBUG软件进行汇编程序的调试。
二、设计内容本次为期一周的课程设计,主要编写调试了5个程序,题目如下:1、字符串匹配设计为掌握提示信息的设置方法及读取键入信息的方法。
编写程序实现两个字符串比较。
如相同,则显示“MATCH”,否则,则显示“NO MATCH”。
2、从键盘上输出数据并显示为掌握接收键盘数据的方法,并了解将键盘数据显示时须转换为ASCII码的原理。
编写程序,将键盘接收到的四位十六进制数据转换为等值的二进制数,再显示在终端上。
3、字符和数据的显示设计为掌握字符和数据的显示方法,编写程序,先显示信息:INPUT STRING,THE END FLAG IS$,再接收字符。
如为0-9,则计数器加1,并显示数据;如为非数字,则直接显示,但不计数4、学生成绩名次表设计为进一步熟悉排序方法。
编写程序,将0-100之间的30个成绩存入首址为1000H的存储区中。
1000H+i表示学号为i的学生成绩。
编写程序使得在2000H 开始的区域排除名次表。
2000H+i为学号i的学生的名次。
三、具体设计程序设计一:字符串匹配设计为掌握提示信息的设置方法及读取键入信息的方法。
编写程序实现两个字符串比较。
如相同,则显示“MATCH”,否则,则显示“NO MATCH”。
流程图程序DATA SEGMENTDAT1 DB 'INPUT STRING1:','$' ;$保持当前地址DAT2 DB 'INPUT STRING2:','$'DAT3 DB 'MATCH!',0AH,0DH,'$' ;0DH为回车ASCII码,0AH为换行ASCII码DAT4 DB 'NOT MATCH!',0AH,0DH,'$'STRING1 DB 50 ;最长长度DB ? ;实际长度DB 50 DUP(?) ;存储空间STRING2 DB 50DB ?DB 50 DUP(?)DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,ES:DATASTART: MOV AX,DATA ;数据段设置MOV DS,AXMOV ES,AXMOV AH,09H ;字符串显示,显示DAT1,显示DS:DX MOV DX,OFFSET DAT1INT 21HMOV AH,0AH ;字符串缓冲输入,接收输入字符串MOV DX,OFFSET STRING1INT 21HMOV DL,0AH ;输出换行MOV AH,02HINT 21HMOV AH,09HMOV DX,OFFSET DAT2 ;显示DAT2INT 21HMOV AH,0AHMOV DX,OFFSET STRING2INT 21HMOV DL,0AH ;输出换行MOV AH,02HINT 21HLEA SI,STRING1 ;比较LEA DI,STRING2ADD SI,2 ;串1首字符[SI+2]ADD DI,2 ;串2首字符[DI+2]CLD ;DF=0MOV CX,50REPZ CMPSB ;CX≠0或ZF=1时重复,DS:SI和ES:DI所指的两个字节相同则继续比较,如果比较相等,ZF=1,则继续比较下一个字节,DI和SI分别加1(DF=0时),CX-1JZ MATCHNMATCH:MOV AH,09HMOV DX,OFFSET DAT4 ;输出不匹配INT 21HJMP NEXTMATCH: MOV AH,09HMOV DX,OFFSET DAT3 ;输出匹配INT 21HNEXT: MOV AH,4CHINT 21HCODE ENDSEND START小结在设计过程中,我把程序分成了宏定义显示回车,数据段定义,初始化,开始比较,匹配时再比较,不匹配时SI指向串1首字符,DI指向新字符重新开始比较等模块。
中南大学微机原理课程设计报告.docx
中南大学微机原理课程设计实验报告题目设计电子万年历专业班级通信工程一、设计目的及要求(1)设计任务:通过本次课程设计,使学生巩固和加深微型计算机原理理论知识,通过过实践进一步加强学生独立分析问题和解决问题的能力、综合设计及创新能力的培养,同时注意培养学生实事求是、严肃认真的科学作风和良好的实验习惯,为今后工作打下良好的基础。
计算机原理与接口课程课程设计结合教学内容,从应用的角度出发,进行三类课程设计,分别分为:汇编语言程序设计、微机标准接口课程设计和接口技术课程设计。
(1)通过设计电子万年历,掌握中断的使用方法。
(2)掌握基本的显存读写技术。
(3)学会在屏幕上以七段数码管的形式显示本机时间的方法。
(4)学会用汇编语言编写一个完整的程序,提高自己的动手操作能力。
(5)学习程序设计的基本思路和方法,培养分析问题、解决问题的能力。
汇编语言是计算机能够提供给用户使用的最快而又最有效的语言,也是能够利用计算机所有硬件特性并能直接控制硬件的唯一语言。
因而,对程序的空间和时间的要求很高的场合,汇编语言的应用是必不可少的。
至于很多需要直接控制硬件的应用场合,则更是非用汇编语言不可了。
随着科学技术迅速发展, 理工科大学生不仅需要掌握计算机方而的基本理论知识,而且还需要掌握基本的实验技能及一定的科学研究能力。
通过课程设计,使学生巩固和加深微型计算机原理理论知识,通过实践进一步加强学生独立分析问题和解决问题的能力、综合设计及创新能力的培养,同时注意培养学生实事求是、严肃认真的科学作风和良好的实验习惯,为今后工作打下良好的基础。
鉴于汇编语言的广泛用途及其在当代计算机界的重要作用,本人利用学的知识,在同学门的帮助下,花费大量时间,完成了关于电子万年历的系统设计。
这个系统是应用于电脑中的小应用程序,可是显示电脑中的时间。
很多地方都会有个时钟显示,其中大多是应用了类似这样的方法。
关键词:汇编语言微机原理接口技术时钟显示键盘输入一次性初始化六位(二)设计功能:1.电子万年历,具有年、月、日、时、分、秒24小时制的运行,并可以在8位数码管上显示:2.电子万年历具有启动键、蜂鸣、整点报时、暂停、初始化年、月、日、时、分、秒。
软件微机原理课程设计报告
软件微机原理课程设计报告一、课程目标知识目标:1. 理解微机原理的基本概念,掌握微型计算机的硬件组成及工作原理。
2. 学会分析微机系统中各组成部分的功能和相互关系。
3. 掌握汇编语言编程的基本方法,能够编写简单的汇编程序。
技能目标:1. 能够运用所学知识,设计简单的微机控制系统。
2. 培养学生动手实践能力,能够进行基本的硬件连接和调试。
3. 提高学生的问题分析能力,学会运用理论知识解决实际问题。
情感态度价值观目标:1. 培养学生对计算机科学的兴趣,激发学生的学习热情。
2. 培养学生的团队合作意识,提高沟通与协作能力。
3. 引导学生认识科技发展对社会进步的重要性,树立正确的价值观。
课程性质分析:本课程为软件微机原理课程设计,旨在帮助学生将理论知识与实际应用相结合,提高学生的实践能力。
学生特点分析:学生为高中年级学生,具备一定的计算机基础,对新鲜事物充满好奇心,但可能缺乏实际动手操作经验。
教学要求:1. 结合课本内容,注重理论与实践相结合,提高学生的实际操作能力。
2. 通过小组合作,培养学生的团队协作能力。
3. 注重启发式教学,引导学生主动思考,提高问题解决能力。
二、教学内容1. 微机原理概述:介绍微型计算机的发展历程、硬件组成及工作原理,对应课本第一章内容。
- 硬件组成:CPU、存储器、输入输出接口等。
- 工作原理:指令执行、数据存储与传输等。
2. 汇编语言编程:讲解汇编语言的基本语法、指令系统及编程方法,对应课本第二章内容。
- 基本语法:寄存器、指令格式、操作数等。
- 指令系统:数据传输、算术运算、逻辑运算等。
3. 硬件连接与调试:学习微机系统中各硬件组件的连接方法,进行基本调试,对应课本第三章内容。
- 硬件组件:内存、I/O接口、中断控制器等。
- 调试方法:静态调试、动态调试等。
4. 微机控制系统设计:结合所学知识,设计简单的微机控制系统,对应课本第四章内容。
- 控制系统组成:输入、处理、输出等模块。
微机原理课程设计报告-软件部分
微机原理课程设计报告一、设计题目Pc机实时时钟的设计二、设计内容及功能设计内容:利用PC机现有的硬件和软件资源设计程序,以实现在显示器上显示XX(时):XX(分):XX(秒)。
设计功能:按下任意键开始显示数据区中存放的时间值,并且每秒更新一次。
运行中按下空格键则停止运行并返回DOS。
运行过程中按下回车键则依次提示输入时,分,秒的值,输入完毕后时钟自动按照设置的时间工作。
程序中应保护原系统的08H中断矢量以便退出时恢复原系统的设置。
三、设计思想及原理设计基本思想:PC机系统板上使用一片8253,其地址为40H—43H,其通道0以方式3工作,每55ms向中断控制器8259A IRQ0端发一次中断请求。
本设计题要求借用原有电路,重新设置8253的计数器0每10ms产生一次中断,100次中断后加1秒,然后调整时、分、秒并显示在屏幕上。
设计原理:100次中断给秒针的个位加1秒,秒针个位加1产生进位时,高位加1,低位回0.依此类推。
设置时间时,将输入的6个数字依此送入时钟高位开始的时间字符显示区,再显示即可四、模块划分及程序流程图模块划分:本程序分为几大模块1.时钟显示模块display使用09H字符串显示DOS功能调用完成时钟字符显示区的字符显示(即时间显示),这种显示在无其他有效指令的情况下不停进行,完成对时钟字符显示区的扫描显示,字符区有任何变化均会显示在屏幕上。
对本程序,用户会看到正在工作的时钟。
2.时钟设置模块SET当按下回车键ENTER即进入设置程序段SET。
利用使用09H字符串显示DOS功能调用进行提示语的显示input the value of hour[00-23]:使用两次AH=01H字符输入显示DOS功能调用完成对时钟小时值的设定。
同理完成分和秒的输入提示及值设定3.程序退出模块exit当按下空格键SPACE即进入退出程序段,退出程序先写初始状态8253计数器的控制字00110110B(通道0,先读低8位,再读高8位,工作方式3,计数值2进制格式),再将计数初值0000H送入通道0,完成了对8253设置的恢复,接着完成保护原系统的08H中断矢量以便退出后恢复原系统的设置。
微机原理课程设计报告
目录一、课题任务 (2)二、程序功能描述及程序流程 (3)1、程序功能描述 (3)2、程序流程图 (3)三、程序源代码及注释 (4)四、DOS/BIOS功能调用,文件列表清单 (6)五、源程序调试 (9)六、调试中出现的问题 (12)七、总结 (12)一、课题任务1·要求利用80x86汇编语言BIOS中断调用的方法,通过‘*’字符设计自己的名字,并在显示器上用6种以上的颜色显示出来。
2·分析1)BIOS中断调用:BIOS常驻ROM,独立于DOS,可与任何操作系统一起工作。
它的主要功能是驱动系统所配置的外部设备,如磁盘驱动器、显示器、打印机、及异步通讯借口等。
通过INT10H~1AH向用户提供服务程序的入口,使用户无需对硬件有深入的了解,就可以完成对I/O设备的控制与操作。
BIOS中断调用与DOS功能调用类似。
2)图形设计:掌握BIOS中断调用INT 10H的13H功能。
注意13H号功能入口参数的要求。
3)颜色显示:在彩色显示屏幕上每个字符在存储中用两个字节表示。
一个字节保存字符的ASCII码,另一个字节保存字符的属性。
BIOS中断调用INT 10的13H号功能是显示字符串,字符的属性在BL中。
二、程序功能描述及程序流程1·程序功能使得自己的名字可以在显示器上用6种以上的颜色显示出来。
2·程序流程图三、程序源代码及注释ROW =0 ;显示信息的行号COLUM=00 ;列号ESCKEY=1BH ;ESC键的ASCII码制;数据段DSEG SEGMENTMESS DB '+-----------------------------------------------------------------------------+',0DH,0AHDB '************ ** ** *** ||',0DH,0AHDB ' * ** ** * ||',0DH,0AHDB ' * ** ** *******************************||',0DH,0AHDB ' * ** ** * *||',0DH,0AHDB ' * ** ** * *||',0DH,0AHDB '************ ** ** * *||',0DH,0AHDB '* ** ** ************** ||',0DH,0AHDB '* *** ** ||',0DH,0AHDB '* ************** ** ||',0DH,0AHDB '* *** ********************** ||',0DH,0AHDB '************ *** ** ||',0DH,0AHDB ' ** ** * ** ||',0DH,0AHDB ' ** ** ** ** ||',0DH,0AHDB ' ** ** ** ** ||',0DH,0AHDB ' ** ** ** ** ||',0DH,0AHDB ' ** ** ** ** ||',0DH,0AHDB ' **** **** ** **** ||',0DH,0AHDB ' *** *** ** *** ||',0DH,0AHDB ' ** ** *** ** ||',0DH,0AHDB ' * * ***** ||',0DH,0AH MESS_LEN=$-OFFSET MESS ;显示信息长度COLORB DB 07H,01H,0FH,70H,74H,04H,0EH ;颜色COLORE LABEL BYTEDSEG ENDS;代码段CSEG SEGMENTASSUME CS:CSEG,DS:DSEG,ES:DSEGSTART: MOV DI,OFFSET COLORB-1 ;颜色指针初值NEXTC:MOV AX,DSEGMOV DS,AX ;设置数据段段值MOV ES,AXINC DI ;调整颜色指针CMP DI,OFFSET COLORE ;是否超过指定的最后一种颜色JNZ NEXTE ;否MOV DI,OFFSET COLORB ;是,重新指定第一种颜色NEXTE:MOV BL,[DI] ;取颜色MOV SI,OFFSET MESS ;取显示信息指针MOV CX,MESS_LEN ;取显示信息长度MOV DH,ROW ;置显示开始行号MOV DL,COLUM ;置显示开始列号CALL ECHO ;显示MOV AH,0INT 16HCMP AL,ESCKEY ;是否为ESC键JNZ NEXTC ;不是,继续MOV AX,4C00H ;结束INT 21HECHO PROC NEARMOV AX,0B800HMOV DS,AXMOV AL,80 ;计算显示开始位置偏移MUL DH ;偏移=(行号*80+列号)*2 XOR DH,DHADD AX,DXADD AX,AXXCHG AX,BXMOV AH,AL ;属性值保存到AH寄存器JCXZ ECHO2 ;显示信息长度是否ECHO1:MOV AL,ES:[SI] ;取一要显示字符代码INC SI ;调整指针MOV [BX],AX ;送显示存储区,即显示INC BX ;准备显示下一个字符INC BXLOOP ECHO1 ;循环显示ECHO2:RET ;返回ECHO ENDPCSEG ENDSEND START四、DOS/BIOS功能调用1.文本显示方式:所谓文本显示方式是指以字符为单位的显示方式。
微机原理课程设计报告
微型计算机技术课程设计指导教师:班级:姓名:学号:班内序号:课设日期:_________________________目录一、课程设计题目错误!未定义书签。
二、设计目的错误!未定义书签。
三、设计内容错误!未定义书签。
四、设计所需器材与工具3五、设计思路错误!未定义书签。
六、设计步骤(含流程图和代码)错误!未定义书签。
七、课程设计小结36一、课程设计题目:点阵显示系统电路及程序设计利用"汇编语言与微型计算机技术"课程中所学的可编程接口芯片8253、8255A、8259设计一个基于微机控制的点阵显示系统。
二、设计目的1.通过本设计,使学生综合运用"汇编语言与微型计算机技术"、"数字电子技术"等课程的内容,为今后从事计算机检测与控制工作奠定一定的根底。
2.掌握接口芯片8253、8255A、8259等可编程器件、译码器74LS138、8路同相三态双向总线收发器74LS245、点阵显示器件的使用。
3.学会用汇编语言编写一个较完整的实用程序。
4.掌握微型计算机技术应用开发的全过程,包括需求分析、原理图设计、元器件选用、布线、编程、调试、撰写报告等步骤。
三、设计内容1.点阵显示系统启动后的初始状态在计算机显示器上出现菜单:dot matrix display system1.←left shift display2.↑up shift display3.s stop4.Esc Exit2.点阵显示系统运行状态按计算机光标←键,点阵逐列向左移动并显示:"微型计算机技术课程设计,点阵显示系统,计科11302班,陈嘉敏,彭晓〞。
按计算机光标↑键,点阵逐行向上移动并显示:"微型计算机技术课程设计,点阵显示系统,计科11302班,陈嘉敏,彭晓〞。
按计算机光标s键,点阵停顿移动并显示当前字符。
3.完毕程序运行状态按计算机Esc键,完毕点阵显示系统运行状态并显示"停〞。
微机原理课程设计报告
目录一.设计内容 (1)二.设计原理及方案 (1)三.汇编源程序代码 (2)四.实施结果 (10)五.课程设计体会 (13)六.参考文献 (14)一.设计内容利用DAC设计一个波形发生器,能分别产生三角波、正弦波、锯齿波和方波,要求自行设计波形输出的切换方式。
主要功能:本题用到8255,dac0832芯片1.产生四种波形2.键盘切换波形3.数码管显示波形号(1-三角波,2-正弦波,3-锯齿波,4-方波)二.设计原理及方案设计原理:D/A转换器(DAC0832)产生各种波形的原理:利用D/A转换器输出的模拟量与输入数字量成正比关系这一特点,将D/A转换器作为微机输出接口,CPU通过程序向D/A转换器输出随时间呈现不同变化规律的数字量,则D/A转换器就可输出各种各样的模拟量,如三角波、正弦波、锯齿波、方波等。
8255A实现波形切换:从8255的C口读入外接开关的信号,CPU读入不同信号值,从而执行不同的代码,向D/A转换器传送不同的数据,控制D/A转换器输出三角波、正弦波、锯齿波、方波等。
通过键盘切换波形,DAC0832输出各种波形,同时共阴极数码管显示按键号:1-三角波,2-正弦波,3-锯齿波,4-方波。
电路原理图(设计连接图):三.汇编源程序代码;***********************功能说明*****************************;题目二利用D/A设计波形发生器;利用D/A设计一个波形发生器,能分别产生三角波、正弦波、锯齿波和方波,;至少设计一种波形切换方式。
;功能:本项目用到8255,DAC0832芯片; 1 产生四种波形; 2 键盘切换波形; 3 数码管显示波形号(1-三角波,2-正弦波,3-锯齿波,4-方波);************************主程序******************************io3 EQU 600h ;8255io4 EQU 800h ;DAC 0832;********************************数据段定义data segmentsin_wave db 200,195,181,159,131db 100,69,41,19,5,0,0 ;正弦波幅值LED DB 06H,5BH,4FH,66H ;共阴极段码表data ends;********************************code segmentassume cs:code,ds:datastart: mov ax,data ;建立DS段地址 mov ds,axcall jian;********************************三角波san: mov Bx,255SAN3: MOV CX,BXmov al,0mov dx,io4san1: out dx,al ;三角波形上升段call delayinc alloop san1mov cx,BXmov al,BLmov dx,io4san2: out dx,al ;三角波形下降段 call delaydec alloop san2call jian;************************************正弦波sin: mov cx,11mov bx,0mov dx,io4lea si,sin_wavesin1: mov al,[si][bx] ;正弦波下降段 out dx,alcall delay1inc bxloop sin1mov cx,11sin2: mov al,[si][bx] ;正弦波上升段 out dx,alcall delay1dec bxcall jian;***************************************锯齿波juchi: mov Bx,255juchi1: mov cx,bxmov al,blmov dx,io4juchi2: out dx,al ;下降沿call delaycall delaydec alloop juchi2call jian;***************************************方波fang: mov Bx,255fang1: mov al,bl ;高电平段mov dx,io4out dx,alcall delay1MOV al,0 ;低电平段out dx,alcall delay1;****************************************延时delay proc ;延时子程序一push axpush bxpush cxpush dxmov cx,50lp0: noploop lp0pop dxpop cxpop bxpop axretdelay endpdelay1 proc;延时子程序二push axpush bxpush cxpush dxmov cx,1250loop lp1pop dxpop cxpop bxpop axretdelay1 endp;****************************************键盘选波形jian proc nearjian1: mov al,10001000B ;c口高四位输入MOV DX,io3+6HOUT DX,AL ;送控制字MOV AL,0MOV DX,io3+4HOUT DX,AL;c口低四位为0即行输出为0 nokey: in al,dx ;读c口高四位and al,0f0H ;屏蔽c口低四位cmp al,0f0Hjz nokey ;无键按下则循环call delay1 ;延时in al,dxshr al,1 ;列信息存于al低四位 shr al,1shr al,1shr al,1mov bl,0 ;初始列变量BL为0mov cx,4jian2: shr al,1 ;逐列检测,找出为0信号jnc jian3inc blloop jian2jian3: mov al,10010001b ;c口低四位输入mov dx,io3+6hout dx,al ;送控制字mov al,0mov dx,io3+4hout dx,al ;c口高四位为0即列输出为0in al,dxand al,0fh ;屏蔽高四位cmp al,0fhjz jian1 ;出错从头来mov bh,0 ;初始行变量为0mov cx,4jian4: shr al,1jnc jian5inc bh ;初始行变量BH为0loop jian4jian5: shl bh,1shl bh,1add bh,bl ;BH为键号MOV CH,BH ;保存键号在ch中MOV AL,BH ;数码管显示波行号LEA BX,LED ;1三角波2正弦波3锯齿波4方波 XLA Tout dx,alMOV DX,IO3+2OUT DX,ALMOV BX,155 ;幅值一MOV DX,IO3IN AL,DXcmp ch,0jz sancmp ch,1jz sincmp ch,2jz juchicmp ch,3jz fangretjian endpcode endsend start四.实施结果(1)键盘选择1——三角波(2)键盘选择2——正弦波(3)键盘选择3——锯齿波:(4)键盘选择4——矩形波五.课程设计体会在为期近两周的微机原理课程设计中,我们小组利用所学微机的理论知识进行软硬件整体设计,同时锻炼了我们理论联系实际,提高我们的综合应用能力。
微机原理课程设计报告(8255控制开关状态)
微机原理课程设计报告(8255控制开关状态)湖南科技⼤学潇湘学院《微机原理》课程设计报告实验内容:8255控制8位单⾊灯的开关状态姓名:学号:学院:潇湘学院专业:电⼦信息⼯程实验时间:2011.12.19-2011.12.30课程设计时间:2011.12.31⽬录⼀、实验⽬的与内容1,对实验箱的了解2,对本实验所⽤到的芯⽚的了解3,原理图的制作⼆、基本的实验内容三、⽅案实现与测试四、提⾼与创新研究五、分析总结⼀、实验⽬的与内容1、实验要求与⽬的:了解74LS138、8255、74LS245以及发光⼆极管的⼯作原理;编写程序,设定8255的⼀个输⼊⼝,⼀个输出⼝,并能随时将输⼊⼝的开关状态通过输出⼝的发光⼆极管表⽰出来;学习并掌握8255,以及各个⼝不同的⼯作⽅式;熟练掌握Altium designer 10.0软件对电路原理图的编辑;通过设计调试较为复杂的汇编语⾔程序进⼀步熟练常⽤会变语⾔程序设计技术;掌握数码转码换类程序设计的基本⽅法。
2、对实验箱的了解:AEDK实验系统介绍,详见实验指导书。
3、对实验所⽤到的芯⽚的了解:实验中,所需⽤到的芯⽚⼤致为:74LS138,8255,74LS245等等。
74LS138:74ls138引脚图:74HC138管脚图:74LS138为3 线-8 线译码器,共有54/74S138和54/74LS138两种线路结构型式,其⼯作原理如下:当⼀个选通端(G1)为⾼电平,另两个选通端(/(G2A)和/(G2B))为低电平时,可将地址端(A、B、C)的⼆进制编码在⼀个对应的输出端以低电平译出。
利⽤G1、/(G2A)和/(G2B)可级联扩展成24 线译码器;若外接⼀个反相器还可级联扩展成32 线译码器。
若将选通端中的⼀个作为数据输⼊端时,74LS138还可作数据分配器⽤与⾮门组成的3线-8线译码器74LS1383线-8线译码器74LS138的功能表:8255:8255是Intel公司⽣产的可编程并⾏I/O接⼝芯⽚,有3个8位并⾏I/O⼝。
微机原理课程设计报告--秒表设计
微机原理课程设计报告--秒表设计课程设计报告2013?7>2014 年度第一学期课程: 微机原理及应用题目: 秒表设计院系: 自动化系班级:学号:学生姓名: Acceler 指导教师:设计周数:一周成绩:日期:2014年 1 月 10一、课程设计目的与要求通过对微机系统分析和具体设计,使学生加深对所学课程的理解。
掌握汇编语言程序设计的基本方法和典型接口电路的基本设计方法。
培养学生分析问题、解决问题的能力。
培养学生对微型计算机应用系统的基本设计能力。
提高学生的实践动手能力和创新能力课程设计正文(一)设计题目:秒表设计:利用实验箱上的小键盘,自定义各按键为启动计时,数据清零,停止并显示。
利用六个数码管显示分、秒、毫秒。
8253产生10ms定时中断,在中断服务子程序中显示秒表计时。
附加部分:加入记录功能,可通过按键记录多次时间,然后在停止计时后,通过键盘上的0,1,2……等按键再把记录的时间取出并显示,达到实际秒表的分别计时功能。
(二)总体设计方案:1. 自定义小键盘中的三个按键分别为启动键、清零键、分别计时键、停止显示键(我们依次选择了MON、LAST、NEXT、RES这三个按键)。
2利用8253产生的10ms的方波来触发8259产生中断,对秒表进行增1操作3动态扫描键盘,判断按键情况,并利用蜂鸣器模拟按键声音4根据按键情况确定要显示的内容, 然后对六位数码管进行扫描显示(三)系统的功能作用:实验箱启动后,六位数码管全部显示为0,如果不对键盘进行操作将始终保持这个状态普通计时功能:按下MON(启动键),数码管开始从零开始显示计时,从左到右依次显示每两位之间用八段数码管的小数点了隔开来作为分、秒、毫秒的区分,按下停止键RES,计时结束,显示停止时的时间。
分记功能:在计时过程中按下分别计时按键NEXT,将按下瞬间的显示值存储起来(最多可取16次),再停止计时后,可通过按下0、1、2等按键依次读出第1次、第2次、第3次按键时记录下的时间,并在数码管上显示,达到实际秒表的分别计时功能。
微机原理课设报告
中南大学微机原理课程设计报告一、课程设计目的通过本次课程设计要掌握8088,8255,0809,0832,8279 等多种芯片使用的方法,灵活运用课本知识,加深所学的知识,对所学的相关芯片的原理、内部结构、使用方法等有更加深刻的了解,学会利用课本知识联系实际应用及编程。
同时并了解综合问题的程序设计掌握实时处理程序的编制和调试方法,掌握一般的设计步骤和流程,使我们以后搞设计时逻辑更加清晰。
二、课程设计任务本次课设选题为“模拟电压采集,直流电机控制”。
根据我自己对这个课题的理解,我认为这个课题应该实现以下的要求:基本要求:1、对模拟电压进行采集转换为数字信号,并实时显示。
2、用转换的到的数字信号再经数模转换,对直流电机进行控制。
拓展要求:1、通过发光二极管作为信号指示灯,实时的指示直流电机的工作状态是否正常。
2、建立报警电路,对电机非正常工作情况以及反转工作情况下进行报警。
三、设计思想与原理1、设计思想本次课设选题为“模拟电压采集,直流电机控制”,基本分为两大部分:模拟量采集的模数转换部分,以及电机控制中的数模转换部分。
而为了让模拟量的采集结果更加明显可察,将加入数码管显示模块,实时显示模拟量采集的大小情况。
与此同时,在选题基础上添加了直流电机工作状态指示灯电路和报警电路。
2、设计原理根据试验箱相关配置,取电位器0~5V 可调电压为模拟量输出模块,可线性调节输出。
取芯片ADC 0809 对采集到的模拟信号进行模数转换,将0~5V 的电压信号转为00~FF 的数字信号,并通过8279 键盘扫描输出模块进行相应的显示输出。
得到转换后的数字量之后,使用DAC0832 数模转换芯片进行数模转换,并将所得模拟量输出到直流电机控制端,进行电机驱动。
对于添加的模块,主要通过8255 芯片来实现,取8255 的PA0 口作为输出端口,连接试验箱上的开关量输入显示区的发光二极管。
对A口分别赋值01H (直流电机正向非正常工作)、02H(直流电机正常工作)、04H(直流电机反向非正常工作)并输入给开关量输入显示区的发光二极管,驱动前三个二极管在电机的三种工作状态下分别发光,从而实现指示灯电路。
微机原理设计报告
微机原理课程设计题目: I/O接口卡设计学院:仪器与电子学院专业:测控技术与仪器指导教师:**组员姓名:目录一.设计题目及设计规定1.设计内容2.设计规定二.设计总体方案三.重要元件1.IBM PC/XT总线简介2.ISA总线简介3.8255芯片简介4.驱动器5.LED显示屏四.工作原理五.硬件电路六.程序设计及流程图1.流程图2.程序设计七.设计心得八.参照文献一、设计题目及设计规定:1.设计一块I/O卡,该卡具有3个8位I/O口(A、B、C口),运用该I/O卡控制该卡控制一种四位旳LED显示屏,该卡插在PC机旳IMB-PC扩展总线插槽上(ISA),选用8255接口芯片2.设计规定:画出电路原理图,阐明工作原理,编写运用该接口卡对键盘上键入旳数字进行显示旳程序(当回车键按下前,假如键入旳数字旳次数不不大于4时显示最终旳4位数)二.设计整体方案该接口卡旳主芯片是8255芯片,将ISA总线上旳地址线A0-A19通过译码作为8255旳片选信号,IOR、IOW分别作为8255旳读写信号。
四位LED显示屏采用共阴极接法,将8255旳A端口旳8个引脚通过驱动器与LED旳a-h相连,用C端口旳低四位来控制那个LED亮,B端口不使用。
三.重要元件1.IBM PC/XT总线简介总线在PC/XT机旳底板上共有8个插头,称为IMB PC/XT总线。
PC/XT 总线在每个插槽(扩展槽)配有62个引脚代表多种不同样旳信号。
IBM PC/XT总线旳62条引线包括20位地址线、8位数据线、21根控制线、2根状态线和11根辅助线及电源线。
每一种插槽对应旳引脚均有相似旳意义,因此所有旳接口卡可插于任何一种插槽上。
引脚间隔为2.54mm。
2.ISA总线简介ISA总线是IBM PC/AT机(CPU是80286)所用旳系统总线,这是一种16位兼8位旳总线原则。
假如忽视原则化细节,则可认为16位ISA总线就是PC/AT总线。
由于IBM PC/AT与IBM PC、IBM PC/XT机(CPU 都是8088)所用旳Pc总线兼容,因此可认为8位ISA总线(16位ISA总旳低8位部分)就是PC总线。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微型计算机技术课程设计指导教师:班级:姓名:学号:班内序号:课设日期: _________________________目录一、课程设计题目.................. 错误!未定义书签。
二、设计目的...................... 错误!未定义书签。
三、设计内容...................... 错误!未定义书签。
四、设计所需器材与工具 (3)五、设计思路...................... 错误!未定义书签。
六、设计步骤(含流程图和代码) ...... 错误!未定义书签。
七、课程设计小结 (36)一、课程设计题目:点阵显示系统电路及程序设计利用《汇编语言与微型计算机技术》课程中所学的可编程接口芯片8253、8255A、8259设计一个基于微机控制的点阵显示系统。
二、设计目的1.通过本设计,使学生综合运用《汇编语言与微型计算机技术》、《数字电子技术》等课程的内容,为今后从事计算机检测与控制工作奠定一定的基础。
2.掌握接口芯片8253、8255A、8259等可编程器件、译码器74LS138、8路同相三态双向总线收发器74LS245、点阵显示器件的使用。
3.学会用汇编语言编写一个较完整的实用程序。
4.掌握微型计算机技术应用开发的全过程,包括需求分析、原理图设计、元器件选用、布线、编程、调试、撰写报告等步骤。
三、设计内容1.点阵显示系统启动后的初始状态在计算机显示器上出现菜单:dot matrix display system1.←left shift display2.↑up shift display3.s stop4.Esc Exit2.点阵显示系统运行状态按计算机光标←键,点阵逐列向左移动并显示:“微型计算机技术课程设计,点阵显示系统,计科11302班,陈嘉敏,彭晓”。
按计算机光标↑键,点阵逐行向上移动并显示:“微型计算机技术课程设计,点阵显示系统,计科11302班,陈嘉敏,彭晓”。
按计算机光标s键,点阵停止移动并显示当前字符。
3.结束程序运行状态按计算机Esc键,结束点阵显示系统运行状态并显示“停”。
四.设计所需器材与工具1.一块实验面包板(内含时钟信号1MHz或2MHz)。
2.可编程芯片8253、8255、74LS245、74LS138各一片,16×16点阵显示器件一片。
3.导线若干。
4.示波器、万用表、常用工具等共用(从实验室现借现还)。
五、设计思路1.利用74LS138设计地址译码电路,8255端口地址:300H~303H,8253端口地址:304H~307H。
2.74LS245用于总线和8253、8255之间的双向传输和隔离。
3.利用面包板上时钟(1MHz或2MHz)和8253设计一个1毫秒定时电路,将定时信号(1毫秒方波)接到总线的IRQ2或IRQ10送给8259控制点阵左移或上移。
4.选择8255的PA0、PA4、PA5和PB4、PB5、PB6、PB7,7个位控制点阵显示器件行和列的数据串行输入、输入脉冲、锁存脉冲(并行输出脉冲)。
六、设计步骤1.电路原件介绍(1)74LS245数据总路线缓冲器图6-1-174LS245的功能表图6-1-2图6-1-3(2)74LS138 图6-1-4标准地址译码电路图6-1-58255CS对应的地址为300H~303H, 8253CS对应的地址为304H~307H。
简化后的非标准地址译码电路图6-1-6(3).8253定时/计数器图6-1-7(4).8255A 图6-1-8(5).点阵显示器件图6-1-9 图6-1-10 附4、课程设计所用器件图6-1-12附5、点阵生成图图6-1-13图6-1-14图6-1-15图6-1-16图6-1-18图6-1-202.流程图3.电路图图6-3-1开始初始化8253、8255A 及8259芯片,选择计数器1、2,输出端口A 、B ,工作方式0显示主界面信息,点阵显示出字模,停止不移动中断服务程序,不断扫描键盘,等待有键按下(1.2.3.4)并执行相应服务程序按键1 启动LeftShift 功能,调用左移程序,并显示在点阵上 按键2 启动UpShift 功能,调用上移程序,并显示在点阵上按键3 启动StopDisplay 功能,调用停止程序,点阵停止移动并显示当前字符按键4启动Esc 功能,调用退出程序,点阵显示“停”,并结束显示。
注:(1)电路箱总芯片上已集成8259芯片,实际连接时8253的OUT2直接接到总芯片的IRQ10处;(2)实际连接时,是由8255A芯片的PA0、PA4、PA5、PB4、PB5、PB6、PB7控制点阵显示屛;PA0→R1、PA4→SCK、PA5→LATCH、PB4→A、PB5→B、PB6→C、PB7→D。
GND和EN/OE接地,+5V接电源正极。
4.正确运用所给器件布线,搭接硬件电路初始接线图图6-4-1测试中发现8255无法正常工作,检查得知面包板底下有短路,重新申请新的面包板,更改部分线路,最后得到线路图如下,并测试成功。
最终接线图及测试图6-4-25.详细汇编代码DATA SEGMENT微db 12H, 10H, 12H, 10H, 2AH, 90H, 4AH, 0A4H, 8AH, 0BEH, 1FH, 0C4H,20H, 24H, 7FH, 0A8H, 0A0H, 28H, 2FH, 28H, 29H, 10H, 29H, 50H, 29H, 0A8H, 29H, 28H, 30H, 46H, 20H, 84H型db 01H, 04H, 7FH, 84H, 12H, 24H, 12H, 24H, 12H, 24H, 0FFH, 0A4H, 12H, 24H, 12H, 24H, 12H, 04H, 23H, 14H, 41H, 08H, 7FH, 0FCH, 01H,00H, 01H, 04H, 0FFH, 0FEH, 00H, 00H计db 00H, 40H, 20H, 40H, 10H, 40H, 10H, 40H, 00H, 40H, 00H, 44H, 0F7H, 0FEH, 10H, 40H, 10H, 40H, 10H, 40H, 10H, 40H, 12H, 40H, 14H, 40H, 18H, 40H, 10H, 40H, 00H, 40H算db 20H, 80H, 3EH, 0FCH, 49H, 20H, 9FH, 0F0H, 10H, 10H, 1FH, 0F0H, 10H, 10H, 1FH, 0F0H, 10H, 10H, 1FH, 0F0H, 08H, 24H, 0FFH, 0FEH, 08H, 20H, 08H, 20H, 10H, 20H, 20H, 20H机db 10H, 00H, 10H, 10H, 11H, 0F8H, 11H, 10H, 0FDH, 10H, 11H, 10H, 31H, 10H, 39H, 10H, 55H, 10H, 51H, 10H, 91H, 10H, 11H, 10H, 11H, 12H, 12H, 12H, 14H, 0EH, 18H, 00H技db 10H, 40H, 10H, 40H, 10H, 48H, 13H, 0FCH, 0FCH, 40H, 10H, 40H, 10H, 40H, 13H, 0F8H, 1AH, 08H, 31H, 10H, 0D1H, 10H, 10H, 0A0H, 10H, 40H, 10H, 0B0H, 51H, 0EH, 26H, 04H术db 01H, 00H, 01H, 40H, 01H, 30H, 01H, 10H, 01H, 04H, 0FFH, 0FEH, 01H, 00H, 03H, 80H, 05H, 40H, 09H, 20H, 11H, 10H, 21H, 0EH, 0C1H, 04H, 01H, 00H, 01H, 00H, 01H, 00H课db 00H, 08H, 43H, 0FCH, 22H, 48H, 22H, 48H, 03H, 0F8H, 02H, 48H, 0E2H, 48H, 23H, 0F8H, 20H, 40H, 2FH, 0FEH, 20H, 0E0H, 29H, 50H, 32H, 48H, 24H, 4EH, 08H, 44H, 00H, 40H程db 08H, 04H, 1DH, 0FEH, 0F1H, 04H, 11H, 04H, 11H, 04H, 0FFH, 04H, 11H, 0FCH, 38H, 00H, 37H, 0FEH, 54H, 20H,50H, 28H, 91H, 0FCH, 10H, 20H, 10H, 24H, 17H, 0FEH, 10H, 00H设db 01H, 0F0H, 21H, 10H, 11H, 10H, 11H, 10H, 01H, 10H, 02H, 0EH, 0F4H, 00H, 13H, 0F8H, 11H, 08H, 11H, 10H, 10H, 90H, 10H, 0A0H, 14H, 40H, 18H, 0B0H, 13H, 0EH, 0CH, 04H计Db 00H, 40H, 20H, 40H, 10H, 40H, 10H, 40H, 00H, 40H, 00H, 44H, 0F7H, 0FEH, 10H, 40H, 10H, 40H, 10H, 40H, 10H, 40H, 12H, 40H, 14H, 40H, 18H, 40H, 10H, 40H, 00H, 40HDou0 db 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 18H, 00H, 18H, 00H, 10H, 00H, 20H, 00H, 00H, 00H, 00H, 00H点db 02H, 00H, 02H, 00H, 02H, 08H, 03H, 0FCH, 02H, 00H, 02H, 10H, 3FH, 0F8H, 20H, 10H, 20H, 10H, 20H, 10H, 3FH, 0F0H, 00H, 00H, 29H, 10H, 24H, 0C8H, 44H, 44H, 80H, 04H阵db 00H, 80H, 78H, 84H, 4FH, 0FEH, 50H, 80H, 50H, 0A0H, 61H, 20H, 51H, 28H, 4BH, 0FCH, 48H, 20H, 48H, 20H, 68H, 24H, 57H, 0FEH, 40H,20H, 40H, 20H, 40H, 20H, 40H, 20H显db 00H, 10H, 1FH, 0F8H, 10H, 10H, 10H, 10H, 1FH, 0F0H, 10H, 10H, 10H, 10H, 1FH, 0F0H, 14H, 50H, 44H, 44H, 34H, 4CH, 14H, 50H, 04H, 40H, 04H, 44H, 0FFH, 0FEH, 00H, 00H示db 00H, 10H, 3FH, 0F8H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 04H, 0FFH, 0FEH, 01H, 00H, 01H, 00H, 09H, 20H, 19H, 18H, 21H, 0CH, 41H, 04H, 01H, 00H, 05H, 00H, 02H, 00H系db 00H, 38H, 7FH, 0C0H, 04H, 00H, 04H, 10H, 08H, 20H, 3FH, 0C0H, 01H, 00H, 02H, 20H, 04H, 10H, 3FH, 0F8H, 01H, 08H, 09H, 20H, 09H, 10H, 11H, 08H, 25H, 08H, 02H, 00H统db 10H, 80H, 10H, 40H, 20H, 48H, 27H, 0FCH, 48H, 80H, 0F9H, 10H, 12H, 08H, 27H, 0FCH, 41H, 24H, 0F9H, 20H, 41H, 20H, 01H, 20H, 1AH, 22H, 0E2H, 22H, 44H, 1EH, 08H, 00HDou2 db 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 18H, 00H, 18H, 00H, 10H, 00H, 20H, 00H, 00H, 00H, 00H, 00HZhang Db 09H, 00H, 0FDH, 08H, 09H, 08H, 09H, 10H, 09H, 20H, 79H, 40H,41H, 04H, 47H, 0FEH, 41H, 40H, 79H, 40H, 09H, 20H, 09H, 20H, 09H, 10H, 09H, 4EH, 51H, 84H, 21H, 00Hstrmenu DB 'dot matrix display system',0AH,0DH,'1.','L',' left shift display',0AH,0DH,'2.','U',' up shift display',0AH,0DH,'3.S stop',0AH,0DH,'4.Esc Exit',0AH,0DH,0AH,0DH,'$'OUTSET DW 0000H;用于存放字符首地址,增加程序可移植性。