微机原理与接口技术实验总结

时间:2019-05-12 01:58:16下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《微机原理与接口技术实验总结》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《微机原理与接口技术实验总结》。

第一篇:微机原理与接口技术实验总结

微机原理与接口技术实验总结

11107108

徐寒黎

一、实验内容以及设计思路

1、①试编写一程序,比较两个字符串STRING1、STRING2 所含字符是否相同,若相同输出“MATCH”,若不相同输出 “NO MATCH”。设计思路:定义一个数据段,在数据段中定义两个字符串作为STRING1、STRING2以及几个用于输入提示的和输出所需内容的字符串,定义一个堆栈段用于存放,定义代码段。关键步骤以及少量语句:第一步将STRING1和STRING2都实现用键盘输入,方法是

MOV DX,OFFSET STRING2 MOV AH,0AH INT 21H 并且显示在显示器上,显示方法将0AH改成09H,语句与上面类似。然后进行比较第一个单元,MOV AL,[STRING1+1] CMP AL,[STRING2+1] JNZ NOMATCH 若字符串长度不等,则直接跳转,输出输出 “NO MATCH”; 若长度相等再逐个比较 LEA SI,[STRING1+2] LEA DI,[STRING2+2] MOV CL,[STRING1+1] MOV CH,0 CLD REPE CMPSB JCXZ MATCH,意思是全部相同就跳转MATCH,输出“MATCH”;不然进入下面的NOMATCH。退出。

②试编写求级数1^3+2^3 +3^3 …..前几项和刚大于10000的程序。

设计思路:原先编写的程序,设定和为10000,结果是14。但要求高一点的话,可以自己设置,实现用键盘输入和的值。

一个难点是将输入的ASCII码字符串,转换成与之相同的十进制数的数值。关键的思路部分是:从1开始求级数,将和的值存在AX里,要加下一项级数前,比如这时已经加到4,PUSH一下AX,然后将5乘三遍,将乘积MOV到BX里,再POP AX,然后将BX的值加到AX里,然后将AX与N比较,如果比N小就继续上述步骤,知道刚比N大就输出数字。

③试编写一程序,完成字符串中各字符出现频度的统计,统计结果在屏幕上输出。

设计思路:因为这个程序需要统计所有的字符,所以首先要定义一个存储区,用来存放26个字符以及每个字符出现的个数。用键盘控制输入字符串以后,将字符串的第一个字符与这二十六个字符逐个比较,若有相同,在存放相应次数的存储单元的值上加1。然后比较第二个字符,依次类推,将字符串里的字符全部比较完。将个数大于1的字符以及字符的个数都输出到屏幕上。退出语句。缺点和不足:这样需要定义一个非常繁的存储区。可以根据输入的字符,然后进行比较和统计。

④设计一个动画程序。

设计思路:这个程序参考了网上的资料,没有什么新意,是小鸟的图形,可以用上下左右键进行移动,可以退出。

步骤:首先设置堆栈段,数据段,代码段,设置显示方式等一些属性,设置背景色,设置小鸟的初始位置以及写出小鸟图形的像素的点。功能性的语句是,用键盘接受一个输入,将其与1bh比较,用JZ语句跳转到退出。若不是便与48h比较,看是否为向上,是则跳转到相应语句,不是则继续与50h比较;,看是否向下,是则跳转到关于向下移动的相关语句,否则再与4bh比较,看是否向左,依次类推,根据键盘输入的上下左右跳转到不同的语句。再将小鸟的位置进行与上下左右键的输入相应的移动。

最后编写好退出语句。

2、硬件接口主要是了解8255与8253的功能,以及控制字。①I/O地址译码

只要对硬件概念清晰,很简单的。基本上没有什么创造性。收获:熟悉实验箱结构,了解每部分元件和标注的意义。掌握I/O地址译码电路的工作原理。②可编程定时器8253 1,对照实验电路图,将计数器0设置为方式0,即数初值设为N(N<0fh),用手动逐个输入单脉冲,编程使计数值在屏幕上显示,并用逻辑笔观察OUT0点平变化。

2,将计数器0、计数器1分别设置为方式3,计数初值设为1000用逻辑笔观察out1输出电平的变化。

收获:掌握8253的基本工作原理和编程方法

③并行接口8255 1,试验电路如图所示,8255C口接逻辑电平开关K0~K7,A口接LED显示电路L0~L7。3,数码管静态显示:按下图接好电路,将8255A口PA0~PA6分别与七段数码管的段码驱动输入端a~g相连,位码驱动输入端S1接5V(选中),S0和dp接地(关闭)。编程从键盘输入一位十进制数(0-9),在七段数码管上显示。

4,数码管动态显示:按下图接好电路,七段数码管的连接不变,位码驱动输入端S1、S0接8255 C口的PC1和PC0。编程在两个数码管上显示“56”。

动态显示时,先送“5”的段码送A口,再送02h到C口为位码;经一定延时后,送“6”的段码送A口,再送01h到C口为位码。循环完成,可以显示数码。5,数码管动态显示(选做):同图接好电路,编程在两个数码管上显示循环显示“00-99”。只要搞清楚各个口的地址,以及选择适当的控制字,其实很简单的。

收获:掌握8255的基本工作原理和编程方法,对方式0的认识加深了。

二、试验中遇到的问题 1在编写程序时,我深深体会到,画程序框图的重要性,每一步跳转的条件一定要搞清楚,Y和N不能搞反了,否则就错了。

2实验2,里面涉及的寄存器很多,很容易就会用乱了,还是很需要注意的。3比如那个小鸟动画的题目,当时在控制左右移动的时候,选择的起始位置的语句没写对位置,每次按一个移位的键以后,都从最初的初始位置向某个方向移动。

4硬件方面的,一开始没搞懂地址什么意思,所以连线时很懵懂,后来清楚了,发现就没什么了。

三、心得感受

微机原理与接口技术的课程实验历时大半个学期,通过自己编写、运行程序,不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。以前对于编程工具的使用还处于一知半解的状态上,但是经过一段上机的实践,对于怎么去排错、查错,怎么去看每一步的运行结果,怎么去了解每个寄存器的内容以确保程序的正确性上都有了很大程度的提高。

前四个简单程序设计,加深了我们对初学的汇编语言指令的熟悉和理解,汇编语言直接描述机器指令,比机器指令容易记忆和理解。通过学习和使用汇编语言,向上为理解各种软件系统的原理,打下技术理论基础;向下为掌握硬件系统的原理,打下实践应用基础。不仅巩固了书本所学的知识,还具有一定的灵活性,发挥了我们的创造才能。

后面几个实验是并行输入输出接口8255和计数器8253的功能的操作,加深了我们对硬件的熟悉,锻炼了动手能力,发挥创造才能。

通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,最后在自己的思考以及和同学的讨论中,终于迎刃而解。

第二篇:微机原理与接口技术课程总结

10电子班《微机原理与接口技术》课程总结提要

一、围绕本课程的教学内容,除了阅读教材外你还看了哪些资料?请归纳简述其内容。

二、请陈述当前你对微控制器工作系统的认识

三、请综合运用51单片机的中断系统、定时/计数器、串行口,从实际应用出发做一个设计。这个设计可以是个新产品,也可以是对身边生活中某个环节或产品的改善;这个设计从电子专业的角度要合理可行。请清楚地阐述这个设计的功能、技术环节。不用描绘具体电路,用框图示意即可。

四、本学期的《微机原理与接口技术》课是第一次把微机原理、接口技术、单片机整合在一门课中,并赋予了72学时的课堂教学和36学时的实验学时。请从教学内容、实验内容、学时安排、教师对课程的把握等方面对本课的教学提出意见。

注:

①、对于撰写提要中的问题不能泛泛而论,希望确实通过自己的理解与想法具体说明;

②、要求字数在2000~4000之间;

③、课程总结将计入本课考核成绩;

④、请各位同学截止到7月5日24点,把课程总结的电子版发到我的教学邮箱:xyredleaf_homework_1@126.com

任课教师:洪小叶

2012-6-26

有什么问题及时沟通。

第三篇:微机原理与接口技术试题答案

微机原理与接口技术试题答案

一、填空题(20*1)

1、微机系统由(硬件系统)和(软件系统)两部分组成。2、8086有(20)位地址线,存储器容量为(1M)B。3、8086CPU 内部组成结构从功能上讲,可分为(BIU)和(EU)两部分。4、8086/8088的四个段寄存器为(DS)、(ES)、(SS)、(CS)

5、用来存放CPU状态信息的寄存器是(FLAGS)。

6、用来存放指令地址的寄存器是(IP)。7、8086的16位标志寄存器FLAGS中OF=1表示运算结果(溢出),ZF=1表示运算结果为零。PF=0表示运算结果的低8位中1的个数为(奇数)。

8、8086的16位标志寄存器FLAGS中IF=1表示CPU(允许)中断,TF=1表示CPU进入(单步)工作方式。

9、地址4000H:0300H,其物理地址是(40300H),段地址是(4000H),偏移地址是(0300H)。

11、I/O端口的寻址方式有两种,分别是(直接寻址),(间接寻址)。

12、指令JO NEXT 表示OF=(1)时转移。

13、将I/O设备端口内容读入AL中的指令助记符是(IN)。14、8086CPU的 I/O指令采用间接寻址时,使用的间接寄存器是(DX)。

15、设置DF=1的指令为(STD)。

16、清除CF标志的指令为(CLC)。

17、一对操作堆栈的指令为(POP)和(PUSH)。

18、LOOPNZ的循环条件为(CX≠0且ZF=0)。

19、实现无符号数乘2的指令的助记符是(SHL),实现有符号数除2的指令的助记符是(SAR)。22、8086CPU引脚信号中中断请求两个信号名称为(INT)和(NMI)。

26、I/O端口的编址方式一般有(存储器统一编址)和(独立编址)两种

29.1片8259A中断控制器可管理(8)级中断,用9片8259A可构成(64)级主从式中断管理系统。

二: 填空题(每题2分, 共20分)1.8086CPU复位时, 寄存器 CS值为(FFFFH), 寄存器 IP的值为(0000H)2.8086CPU的8个8位通用寄存器名为(AL),(AH),(BL),(BH),(CL),(CH),(DL),(DH).3.若SS = 3240H, SP = 2000H, 栈顶的实际地址为(34400H).4.指令 MOV AX, [BX] 的机器码为 8BH, 07H , 指令 MOV [BX], AX的机器码为(89H),(07H).5.8255A的工作方式有方式0功能为(基本输入输出), 方式1功能为(选通输入输出), 方式2功能为(双向数据传送).6.执行指令 PUSH AX有 SP =(SPBUF DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA STAR PROC FAR PUSH DS MOV AX, 0 PUSH AX MOV AX, DATA MOV DS, AX LEA BX, BUF1 MOV CX , COUNT-1 MOV AL, [BX] AG: INC BX CMP AL, [BX] JAE BIG MOV AL, [BX] BIG: DEC CX JNZ AG MOV BUF2, AL RET STAR ENDP CODE ENDS END STAR 问: 该程序执行后BUF2中的值为(9).四、程序设计题(2*10)

1、编写一个汇编语言程序,要求从键盘输入一个小写字母,将其转换成大写字母在屏幕上显示出来。

DATA SEGMENT BUF DB 0DH,0AH,“PLEASE INPUT A CHAR:$” DATAENDS

STACK SEGMENT

DB 20 DUP(?)STACKENDS

CODESEGMENT

ASSUME DS:DATA,CS:CODE ,SS:STACK BEGIN: MOV AX,DATA

MOV DS,AX

LEA DX,BUF;9号调用显示PLEASE INPUT A CHAR:

MOV AH,9

INT 21H

MOV AH,1;1号调用,从键盘接收1字符

INT 21H

CMP AL,61H /41H;若比“a”/A小转PEND

JB PEND

CMP AL,7AH /5BH;若比“z”/Z大转PEND

JA PEND;

ADD/SUB AL,20H;如在“a”与“z”之间则减去20变为大写字符

MOV DL,AL

MOV AH,2;2号功能调用显示一个字符

INT 21H

PEND: MOV AH,4CH;程序结束运行,返回DOS

INT 21H CODE ENDS

END BEGIN

2、已知芯片8253的端口地址为4F0H~4F3H,设计数器1工作在方式1,计数器初值为3060H,采用二进制计数,请设计实现上述功能的8253初始化程序。8253控制字格式如下:

因为计数器初值为3060H,即为16位的,所以读/写格式为11 因此控制字为:01110010 =72 控制字:MOV AL, 72H OUT 4F3H, AL

低8位:MOV AL, 60H OUT 4F1H, AL

高8位:MOV AL, 30H

OUT 4F1H, AL

六: 编程题(7分)编一个完整的程序, 数据段有10个符号的ASCII码值数据块 BUF , 若数据为0到 9的ASCII码值, 在屏上显示 Y , 否则显示 N 解: DATA SEGMENT BUF DB 10 DUP(?)DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA NAIN PROC FAR PUSH DS MOV AX, 0 PUSH AX MOV AX, DATA MOV DS, AX MOV CX, 10 LEA BX, BUF AG: MOV AL, [BX] CMP AL, 30H JL DISNO CMP AL, 39H JG DISNO MOV AH, 02H MOV DL, ‘Y’ INT 21H JMP NEXT DISNO: MOV AH, 02H MOV DL, ‘N’ INT 21H NEXT: INC CX DEC CX JNZ AG RET MAIN ENDP CODE ENDS END MAIN 七: 接口编程(7分, 仅编程序段)8255A的A口,B口均工作于方式0, 从A口输出数据30H, 将B口输入的数据放入寄存器BL中.(注:8255A口地址为60H到63H)解: 1 0 0 0 X 0 1 X 方式控制字= 82H MOV AL, 82H OUT 63H, AL MOV AL, 30H OUT 60H, AL IN AL, 61H MOV BL, AL

第四篇:微机原理与接口技术小结

微机原理与接口技术基础

1.为什么在流水CPU中,将一条指令从取指到执行结束的任务分割为一系列子任务,并使各子任务在流水线的各个过程段并发地执行,从而使流水CPU具有更强大的数据吞吐能力?

这里可以使用时空图法证明结论的正确性。

假设指令周期包含四个子过程:取指令(IF)、指令译码(ID)、取操作数(EX)、进行运算(WB),每个子过程称为过程段(Si),这样,一个流水线由一系列串连的过程段组成。在统一时钟信号控制下,数据从一个过程段流向相邻的过程段。

2.译码器是如何译码的?寻址空间是如何确定的?译码器与寻址空间是怎么联系的?

译码器实际上是由许多与门、或门、非门和它们的组合构成的。它有若干个输入端和若干个输出端(也可能只有一个输出端)。对某一个输出端来说,它的电平高低必然与输入的某一种状态相对应。

例如,具有4个输入端的与非门就是一个简单的译码器,只有四个输入端为1111时,它的输出端才为0。如果将地址总线的A9、A8、A7、A6与它的四个输入连接起来,并把它的输出连到存储器芯片或某个需要寻址的外设接口的片选端(假定低电平有效),那么,只有当A9、A8、A7、A6为1111时,存储器芯片或外设才会被选中。

译码器的寻址空间取决于地址总线的哪几根线接到译码器的输入端,例如上例,地址总线的A9、A8、A7、A6与译码器的输入连接,那么其寻址空间应该是11 1100 0000~11 1111 1111,即3C0H~3F0H。

注意,没有参与译码的低位地址线必然要参与存储器芯片或外设接口的内部译码。也就是说,内部译码地址范围是0--2n11 0000。

可以说,译码器的译码输出决定了寻址空间的起始地址,内部译码决定了寻址空间的大小。由于上一条指令的四个子过程全部执行完毕后才能开始下一条指令,因此每隔4个单位时间才有一个输出结果,即一条指令执行结束。表示非流水CPU的时空图。由于上一条指令与下一条指令的四个过程在时间上可以重叠执行,因此,当流水线满载时,每一个单位时间就可以输出一个结果,即执行一条指令。

比较后发现:流水CPU在八个单位时间中执行了5条指令,而非流水CPU仅执行了2条指令,因此流水CPU具有更强大的数据吞吐能力。

3.书本上讲的是若是计算结果中1的个数为偶数时,则PF=1;但我又在另外的辅导书上看到的说如果计算结果的低8位中1的个数为偶数,PF=1.请问老师是否是低八位?

答:对,PF只与结果的低8位有关。

4.80386 CPU包含哪些寄存器?各有什么主要用途?

80386共有7类34个寄存器。它们分别是通用寄存器、指令指针和标志寄存器、段寄存器、系统地址寄存器、控制寄存器、调试和测试寄存器。

(1)通用寄存器(8个)

EAX,EBX,ECX,EDX,ESI,EDI,EBP和ESP。每个32位寄存器的低16位可单独使用,同时AX、BX、CX、DX寄存器的高、低8位也可分别当作8位寄存器使用。它们与8088/8086中相应的16位通用寄存器作用相同。

(2)指令指针和标志寄存器。

指令指针EIP是一个32位寄存器,存放下一条要执行的指令的偏移地址。

标志寄存器EFLAGS也是一个32位寄存器,存放指令的执行状态和一些控制位。

(3)段寄存器(6个)

CS,DS,SS,ES,FS和GS。在实方式下,它们存放内存段的段地址。在保护方式下,它们被称为段选择符。其中存放的是某一个段的选择符。当选择符装入段寄存器时,80386中的硬件章自动用段寄存器中的值作为索引从段描述符表中取出一个8个字节的描述符,装入到与该段寄存器相应的64位描述符寄存器中。

(4)控制寄存器(4个)

CR0、CRl、CR2和CR3。它们的作用是保存全局性的机器状态。

(5)系统地址寄存器(4个)

GDTR、IDTR、LDTR和TR。它们用来存储操作系统需要的保护信息和地址转换表信息、定义目前正在执行任务的环境、地址空间和中断向量空间。

(6)调试寄存器(8个)

DR0~DR7。它们为调试提供硬件支持。

(7)测试寄存器(8个)

TR0~TR7,其中TR0~TR5由Intel公司保留,用户只能访问TR6、TR7。它们用于控制对TLB中的RAM和CAM相连存储器的测试。TR6是测试控制寄存器,TR7是测试状态寄存器,保存测试结果的状态

5.什么是外部中断源?什么是中断向量码?什么是读选通信号?

答:外部中断源就是在CPU外部能够产生中断请求的设备/器件;通俗地说,中断向量码就是中断的编号,其值为0-FFH;选通信号就是打开逻辑门的控制信号,或用来锁存信息(类似D触发器的CP或CLK)的控制信号。读选通信号就是用来打开总线缓冲器,以便把的数据送到总线上的控制信号。

6.CPU处于单步执行指令的工作方式(课本49页),请问什么是单步执行指令工作方式? 答:在这种方式下,CPU每执行一条指令,就产生一次特殊的中断,以便可以停下来检查执行的结果。主要用于各类程序的调试。

7.片选信号(CS)到底是起使数据有效或无效的作用还是起选择芯片的作用啊?若是前者,干吗叫片选?

片选信号就是选择芯片的信号。前者不叫片选信号,应该叫允许信号。

8.书本上讲的是若是计算结果中1的个数为偶数时,则PF=1;但我又在另外的辅导书上看到的说如果计算结果的低8位中1的个数为偶数,PF=1.请问老师是否是低八位?

微型计算机基础

1.为什么在流水CPU中,将一条指令从取指到执行结束的任务分割为一系列子任务,并使各子任务在流水线的各个过程段并发地执行,从而使流水CPU具有更强大的数据吞吐能力?

这里可以使用时空图法证明结论的正确性。

假设指令周期包含四个子过程:取指令(IF)、指令译码(ID)、取操作数(EX)、进行运算(WB),每个子过程称为过程段(Si),这样,一个流水线由一系列串连的过程段组成。在统一时钟信号控制下,数据从一个过程段流向相邻的过程段。

2.译码器是如何译码的?寻址空间是如何确定的?译码器与寻址空间是怎么联系的?

译码器实际上是由许多与门、或门、非门和它们的组合构成的。它有若干个输入端和若干个输出端(也可能只有一个输出端)。对某一个输出端来说,它的电平高低必然与输入的某一种状态相对应。

例如,具有4个输入端的与非门就是一个简单的译码器,只有四个输入端为1111时,它的输出端才为0。如果将地址总线的A9、A8、A7、A6与它的四个输入连接起来,并把它的输出连到存储器芯片或某个需要寻址的外设接口的片选端(假定低电平有效),那么,只有当A9、A8、A7、A6为1111时,存储器芯片或外设才会被选中。

译码器的寻址空间取决于地址总线的哪几根线接到译码器的输入端,例如上例,地址总线的A9、A8、A7、A6与译码器的输入连接,那么其寻址空间应该是11 1100 0000~11 1111 1111,即3C0H~3F0H。

注意,没有参与译码的低位地址线必然要参与存储器芯片或外设接口的内部译码。也就是说,内部译码地址范围是0--2n11 0000。

可以说,译码器的译码输出决定了寻址空间的起始地址,内部译码决定了寻址空间的大小。由于上一条指令的四个子过程全部执行完毕后才能开始下一条指令,因此每隔4个单位时间才有一个输出结果,即一条指令执行结束。表示非流水CPU的时空图。由于上一条指令与下一条指令的四个过程在时间上可以重叠执行,因此,当流水线满载时,每一个单位时间就可以输出一个结果,即执行一条指令。

比较后发现:流水CPU在八个单位时间中执行了5条指令,而非流水CPU仅执行了2条指令,因此流水CPU具有更强大的数据吞吐能力。

3.书本上讲的是若是计算结果中1的个数为偶数时,则PF=1;但我又在另外的辅导书上看到的说如果计算结果的低8位中1的个数为偶数,PF=1.请问老师是否是低八位?

答:对,PF只与结果的低8位有关。

4.80386 CPU包含哪些寄存器?各有什么主要用途?

80386共有7类34个寄存器。它们分别是通用寄存器、指令指针和标志寄存器、段寄存器、系统地址寄存器、控制寄存器、调试和测试寄存器。

(1)通用寄存器(8个)

EAX,EBX,ECX,EDX,ESI,EDI,EBP和ESP。每个32位寄存器的低16位可单独使用,同时AX、BX、CX、DX寄存器的高、低8位也可分别当作8位寄存器使用。它们与8088/8086中相应的16位通用寄存器作用相同。

(2)指令指针和标志寄存器。

指令指针EIP是一个32位寄存器,存放下一条要执行的指令的偏移地址。

标志寄存器EFLAGS也是一个32位寄存器,存放指令的执行状态和一些控制位。

(3)段寄存器(6个)

CS,DS,SS,ES,FS和GS。在实方式下,它们存放内存段的段地址。在保护方式下,它们被称为段选择符。其中存放的是某一个段的选择符。当选择符装入段寄存器时,80386中的硬件章自动用段寄存器中的值作为索引从段描述符表中取出一个8个字节的描述符,装入到与该段寄存器相应的64位描述符寄存器中。

(4)控制寄存器(4个)

CR0、CRl、CR2和CR3。它们的作用是保存全局性的机器状态。

(5)系统地址寄存器(4个)

GDTR、IDTR、LDTR和TR。它们用来存储操作系统需要的保护信息和地址转换表信息、定义目前正在执行任务的环境、地址空间和中断向量空间。

(6)调试寄存器(8个)

DR0~DR7。它们为调试提供硬件支持。

(7)测试寄存器(8个)

TR0~TR7,其中TR0~TR5由Intel公司保留,用户只能访问TR6、TR7。它们用于控制对TLB中的RAM和CAM相连存储器的测试。TR6是测试控制寄存器,TR7是测试状态寄存器,保存测试结果的状态

5.什么是外部中断源?什么是中断向量码?什么是读选通信号?

答:外部中断源就是在CPU外部能够产生中断请求的设备/器件;通俗地说,中断向量码就是中断的编号,其值为0-FFH;选通信号就是打开逻辑门的控制信号,或用来锁存信息(类似D触发器的CP或CLK)的控制信号。读选通信号就是用来打开总线缓冲器,以便把的数据送到总线上的控制信号。

6.CPU处于单步执行指令的工作方式(课本49页),请问什么是单步执行指令工作方式? 答:在这种方式下,CPU每执行一条指令,就产生一次特殊的中断,以便可以停下来检查执行的结果。主要用于各类程序的调试。

7.片选信号(CS)到底是起使数据有效或无效的作用还是起选择芯片的作用啊?若是前者,干吗叫片选?

片选信号就是选择芯片的信号。前者不叫片选信号,应该叫允许信号。

8.书本上讲的是若是计算结果中1的个数为偶数时,则PF=1;但我又在另外的辅导书上看到的说如果计算结果的低8位中1的个数为偶数,PF=1.请问老师是否是低八位?对,PF只与结果的低8位有关

第五篇:(语言、微机原理及接口技术)实验交通灯

课程设计说明书

课程设计名称:

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

课程设计题目:

微机打印口外接交通灯模拟LED显示器

称:

信息工程学院

专业:

计算机科学与技术

班级:

学号:

姓名:

评分:

教师:

X

X

设计选题及功能说明

设计选题:微机打印口外接交通灯模拟LED显示器。

课题要求及功能说明:

通过微机打印插座(25D)设计,用微机编程可实现对打印口外接12个路口交通灯(红、绿、黄)的控制显示等。

设有一个十字路口,1、3为南北方向,2、4为东西方向,初始为四个路口的红灯全亮,之后,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车;

延时一段时间后,1、3路口的绿灯熄灭,而1、3路口的黄灯开始闪烁,闪烁若干次后,1、3路口红灯亮,而同时2、4路口的绿灯亮,2、4方向通车;

延时一段时间后,2、4路口的绿灯熄灭,而黄灯开始闪烁,闪烁若干次后,再切换到1、3路口方向,之后重复上述过程。

硬件电路设计

硬件电路采用Protel

Technology公司的CAD工具Protel

99进行设计。

2.1

8255A芯片选择

按照课题设计要求,我们选择通过8255A并口来控制LED发光二极管的亮灭,8255A具有3个通道3种工作方式的可编程并行接口芯片。使用前要写入一个方式控制字选择A、B、C三个端口各自的工作方式,共有三种;

方式0

:基本的输入输出方式,即无须联络就可以直接进行的I/O方式。其中A、B、C口的高四位或低四位可分别设置成输入或输出。

方式1

:选通I/O,此时接口和外围设备需联络信号进行协调,只有A口和B口可以工作在方式1,此时C口的某些线被规定为A口或B口与外围设备的联络信号,余下的线只有基本的I/O功能,即只工作在方式0.方式2:

双向I/O方式,只有A口可以工作在这种方式,该I/O线即可输入又可输出,此时C口有5条线被规定为A口和外围设备的双向联络线,C口剩下的三条线可作为B口方式1的联络线,也可以和B口一起方式0的I/O线。

8255A引脚信号如右图

2.2电路设计

本设计用DB25

连接8255控制12个LED亮灭

电路原理图如图1:

图1

交通灯原理图

2.3印刷电路图设计

制作pcb印刷电路板,采用的是自动布线的方法。即利用正确的原理图制作网络表,然后新建CAM

output

configuration文件,在设定好印刷板得规格大小后导入刚才生成的网络表,然后再调整各元件的位置,等待其自动布线。经过多次设计修改,本交通灯模拟LED显示器的PCB图如图2所示

图2

交通灯模拟LED显示器

测试程序

用汇编语言编写对交通灯的测试程序要根据交通灯原理图,主机与8255A连接:从交通灯原理图可以看出,低电平有效/CS选择8255A,通过对A0、A1控制选择8255A的PBPC端口,低电平有效/WR控制输入;8255A与交通灯连接:8255A的端口PB高4位分别与交通灯的四个方向的绿灯相连,PC端口的低4位与四个方向的红灯相连,PC端口的高4位与四个方向的黄灯,从交通灯原理图可看出一下特点(1)相对方向的灯保持一致,如1、3,方向,2、4方向。那么在设计程序时,1、3方向的一样,2、4方向的一样(2)四个方向的交通灯可能出现的组合:红绿、红黄,不会出现绿黄。既不能出现端口PB高4位与PC端口的高4位同时有效的情况。根据以上所述程序可以设计为如下

DATAPT

EQU

378H

CTRLPT

EQU

37AH

INTCNT

EQU

GDURA

EQU

YDURA

EQU

RDURA

EQU

GSTATE

EQU

0

Y1STATE

EQU

Y2STATE

EQU

RSTATE

EQU

Y3STATE

EQU

Y4STATE

EQU

DSEG

SEGMENT

OLD1CH

DD

?

LTSTATE

DB

?

YBLKCNT

DB

0

DSEG

ENDS

CSEG

SEGMENT

ASSUME

CS:

CSEG,DS:

DSEG

START:

MOV

DX,CTRLPT

MOV

AL,11101100B

OUT

DX,AL

MOV

DX,DATAPT

MOV

AL,10000000B

OUT

DX,AL

MOV

AX,351CH

INT

21H

MOV

WORD

PTR

OLD1CH,BX

MOV

WORD

PTR

OLD1CH

+

2,ES

MOV

DX,OFFSET

NEW1CH

MOV

AX,251CH

CALL

GREEN

INT

21H

MOV

AH,0

INT

16H

LDS

DX,OLD1CH

MOV

AX,251CH

INT

21H

MOV

AH,4CH

INT

21H

NEW1CH:

CMP

CX,0

JZ

NEXT

DEC

CX

IRET

NEXT:

CMP

LTSTATE,GSTATE

JZ

GRN

CMP

LTSTATE,Y1STATE

JZ

YLW1

CMP

LTSTATE,Y2STATE

JZ

YLW2

CMP

LTSTATE,RSTATE

JZ

RD

CMP

LTSTATE,Y3STATE

JZ

YLW3

CMP

LTSTATE,Y4STATE

JZ

YLW4

GRN:

CALL

GREEN

IRET

YLW1:

CALL

YELLOW1

IRET

YLW2:

CALL

YELLOW2

IRET

RD:

CALL

RED

RET

YLW3:

CALL

YELLOW3

IRET

YLW4:

CALL

YELLOW4

IRET

GREEN

PROC

;

;绿灯

PUSH

AX

PUSH

DX

MOV

DX,CTRLPT

MOV

AL,11101000B

OUT

DX,AL

MOV

DX,DATAPT

MOV

AL,11110000B;1、3方向的绿灯,2、4方向的红灯亮30秒

OUT

DX,AL

MOV

DX,MOV

AL,11100100B

OUT

DX,AL

MOV

DX,DATAPT

MOV

AL,10100101B

OUT

DX,AL

MOV

CX,GDURA

*

INTCNT

MOV

LTSTATE,Y1STATE

POP

DX

POP

AX

RET

GREEN

ENDP

YELLOW1

PROC

;黄灯

PUSH

AX

PUSH

DX

MOV

DX,CTRLPT

MOV

AL,11100100B

OUT

DX,AL

MOV

DX,DATAPT

MOV

AL,11110101B

;

1、3方向的黄灯亮0.5秒(黄灯一共闪烁3次,即亮灭各3次)

OUT

DX,AL

MOV

DX,CTRLPT

MOV

AL,11101000B

OUT

DX,AL

MOV

DX,DATAPT

MOV

AL,10100000B

OUT

DX,AL

MOV

CX,INTCNT

/

MOV

LTSTATE,Y2STATE

POP

DX

POP

AX

RET

YELLOW1

ENDP

YELLOW2

PROC

PUSH

AX

PUSH

DX

MOV

DX,CTRLPT

MOV

AL,11101000B

OUT

DX,AL

MOV

DX,DATAPT

MOV

AL,11110000B;

1、3方向的黄灯灭0.5秒(黄灯一共闪烁3次,即亮灭各3次)

OUT

DX,AL

MOV

CX,INTCNT

/

INC

YBLKCNT

CMP

YBLKCNT,YDURA

JZ

CHGRED

MOV

LTSTATE,Y1STATE

JMP

Y2RET

CHGRED:

MOV

LTSTATE,RSTATE

MOV

YBLKCNT,0

Y2RET:

POP

DX

POP

AX

RET

YELLOW2

ENDP

RED

PROC

;红灯

PUSH

AX

PUSH

DX

MOV

DX,CTRLPT

MOV

AL,11100100B

OUT

DX,AL

MOV

DX,DATAPT

MOV

AL,01011010B;

1、3方向的红灯,2、4方向的绿灯亮30秒

OUT

DX,AL

MOV

CX,RDURA

*

INTCNT

MOV

LTSTATE,Y3STATE

POP

DX

POP

AX

RET

RED

ENDP

YELLOW3

PROC;

PUSH

AX

PUSH

DX

MOV

DX,CTRLPT

MOV

AL,11100100B

OUT

DX,AL

MOV

DX,DATAPT

MOV

AL,11111010B

;

2、4方向的黄灯亮0.5秒(黄灯一共闪烁3次,即亮灭各3次)

OUT

DX,AL

MOV

DX,CTRLPT

MOV

AL,11101000B

OUT

DX,AL

MOV

DX,DATAPT

MOV

AL,01010000B

OUT

DX,AL

MOV

CX,INTCNT

/

MOV

LTSTATE,Y4STATE

POP

DX

POP

AX

RET

YELLOW3

ENDP

YELLOW4

PROC

PUSH

AX

PUSH

DX

MOV

DX,CTRLPT

MOV

AL,11101000B

OUT

DX,AL

MOV

DX,DATAPT

MOV

AL,11110000B

;

2、4方向的黄灯灭0.5秒(黄灯一共闪烁3次,即亮灭各3次)

OUT

DX,AL

MOV

CX,INTCNT

/

INC

YBLKCNT

CMP

YBLKCNT,YDURA

JZ

CHGGRN

MOV

LTSTATE,Y3STATE

JMP

Y4RET

CHGGRN:

MOV

LTSTATE,GSTATE

MOV

YBLKCNT,0

Y4RET:

POP

DX

POP

AX

RET

YELLOW4

ENDP

CSEG

ENDS

END

START

小结

通过本次关于微机打印口外接交通灯模拟LED显示器的课程设计,我了解了交通灯的工作原理,而在此基础上设计原理图和硬件电路板,则让我对课本上的知识进行了实际的应用,例如DB25

25帧的打印机接口,8255A芯片,对他们的功能及作用都有了较深的理解。完成本次实验的工具软件是protel99,这是一款电子工程师设计电路原理图和PCB的行业软件。不过值得注意的是,本软件的汉化版经常出现问题,特别是对制作pcb图的影响很大。所以建议使用protel99的英文版。通过主机打印口和8255A接口的连接,对db25各个针脚功能有了更深入得了解,拓展了课本上的知识。因为在整个小组中我主要负责制作pcb这一块,所以觉得确定印刷电路板的尺寸大小,定印刷电路层次和元器件布局很重要。实验的最后一部分是编写程序,增强了我的汇编语言能力。

参考文献

戴梅萼

史嘉权

微型计算机技术及应用(第4版)

清华大学出版社

2008年2月

Protel

99SE电路设计基础与工程范例

赵景波

王臣业编著

清华大学出版社2008年5月

Protel

99SE

电路设计与制板

朱云芳

江桦

翟旭等编著

机械工业出版社

2007年11月

汇编语言程序设计教程

(第二版)

卜艳萍编著

清华大学出版社

2007

胡景春

实践优秀作品选编

东南大学出版社

2010年2月

胡景春

刘洪

微机原理\单片机应用实验指导(第二版)

南昌航院计算机系

2004

附录一

电路原理图

附录二

PCB图

附录三

25针并行口打印机口的针脚功能表

南chang航空大学

下载微机原理与接口技术实验总结word格式文档
下载微机原理与接口技术实验总结.doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    《微机原理与接口技术》课程总结 (精选5篇)

    《微机原理与接口技术》课程总结 主要内容: 《微机原理与接口技术》是我们这学期开的比较难学的一门课,课程紧密结合通信工程专业的特点,围绕微型计算机原理和应用主题,以Intel8......

    微机原理与接口技术试验学习总结

    微机原理与接口技术试验学习总结 本学期微机原理的实验课程即将结束,关于微机原理课程实验的心得体会颇多。 初学《微机原理》时,感觉摸不着头绪。面对着众多的术语、概念及原......

    微机原理与接口技术试题及答案

    一、 填空题(每空 1 分,共 15 分) 得分 评阅人 1.RESET信号到来后8088/86的CS和IP 分别为 _FFFF_H 和_0000_H。 2. 在特殊全嵌套方式下,8259可响应 同级或高级 中断请求。 3......

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

    评阅微机原理与接口技术实验报告一姓名匡越学号1715211016时间地点实验题目一、实验目的1.熟悉Keil软件使用2.熟悉MCS-51指令3.学习简单程序的调试方法二、实验说明通过实验......

    微机原理与接口技术及其课程设计心得体会

    微机原理与接口技术及其课程设计心得体会 本学期的微机原理和接口技术及其课程设计都已经结束。在这个过程中,我们有所付出,也有所回报,让我感受颇多。 对于《微机原理与接口技......

    微机原理与接口技术学习心得5篇

    本学期微机原理课程已经结束,关于微机课程的心得体会甚多。微机原理与接口技术作为一门专业课,虽然要求没有专业课那么高,但是却对自己今后的工作总会有一定的帮助。记得老师第......

    微机原理与接口技术及其课程设计心得体会

    微机原理与接口技术及其课程设计心得体会 本学期的微机原理和接口技术及其课程设计都已经结束。在这个过程中,我们有所付出,也有所回报,让我感受颇多。 对于《微机原理与接口技......

    微机原理与接口技术每章小结(范文大全)

    第一章微型计算机概述 课程知识总结: 本章的主要内容为计算机的基本结构、微型计算机系统的组成和主要性能指标、不同进位计数制计数方法、不同进位制数之间相互转换的方法、......