8086.8088微机原理课程设计报告书

合集下载

微机原理课程设计-8088最小系统模板

微机原理课程设计-8088最小系统模板

微机原理课程设计学院:机电工程学院专业:自动化班级:学号:姓名:目录一电路总体设计 (2)二电路各部分原理图设计 (4)2.1 8088最小方式系统 (4)2.2 存储器的设计 (6)2.3 8位AD变换接口电路 (8)2.4 8位DA变换接口驱动直流电机 (11)2.5 步进电机控制电路 (14)2.6 键盘和显示电路 (16)三最小系统PCB版图设计 (18)四总结 (18)概述本系统采用8088位处理器工作在最小方式系统下,采用8282、8286、8284构成了最小系统,形成总线逻辑。

采用2764和6264构成了16KB的ROM和16KB的RAM。

在此基础之上,分别实现了一系列接口逻辑,包括采用0809实现8位的温度采集接口,采用0832实现直流电机的控制,采用8255和8253实现步进电机的控制,并设计了键盘和显示逻辑。

最后,运用Protel 99SE的自动布线功能,完成了最小系统的PCB版图设计。

一电路总体设计一、课程设计的要求本系统完成的功能如下:(1)用8088构成最小系统(2)用0809组成8位温度AD变换接口电路(3)用0832组成8位DA变换接口电路驱动直流电机(4)用8255和8253组成步进电机控制电路(5)键盘与显示功能二、系统的总体组成下面给出了系统的总体框图如下:1处理器芯片选用8088,当8088的MN/MX引脚接+5V电压时,8088工作在最小方式下。

①时钟发生器采用8284A芯片②主微处理器CPU选用8088芯片③总线锁存器采用74LS373,用ALE的下降沿锁存。

由于8088中地址线有20条,所以地址锁存要三个8282。

④数据收发器用来对数据进行缓冲和驱动,并控制数据发送和接收方向,向CPU传送IO的数据或向IO传送CPU提供的数据。

同样由于8088中数据线只有8条,所以数据收发器只要一个8286就可以了。

⑤地址译码器采用74LS138,用地址线的高三位(即A19、A18、A17三位)。

8086微机原理实验报告

8086微机原理实验报告

8086微机原理实验报告实验名称:8086微机原理实验实验目的:1.深入了解8086微处理器的内部结构和指令系统。

2.掌握汇编语言的编程方法和技巧。

3.熟悉微机系统的输入输出操作原理。

4.掌握8086微机系统的调试方法和程序调试技巧。

实验器材:1.8086微处理器芯片2.Intel 8086学习板3.编程器4.示波器5.实验箱实验步骤:1.熟悉8086微处理器的内部结构和指令系统在开始实验前,首先需要熟悉8086微处理器的内部结构和指令系统。

通过阅读教材和讲义,了解到8086微处理器采用16位结构,具有4个寄存器组,支持16种不同寻址方式的指令。

熟练掌握常用的指令系统和汇编语言的编程方法。

2.设计并编制简单的汇编程序在熟悉8086微处理器的内部结构和指令系统后,我们开始设计并编制简单的汇编程序。

本实验中,我们编写了一个简单的汇编程序,用于实现两个数的加法操作,并将结果存储在内存中。

程序中使用了mov指令将操作数送入寄存器,add指令将它们相加,再用mov指令将结果存储到内存中。

程序流程图如下所示:a. 将第一个数送入累加器A中。

b. 将第二个数送入寄存器B中。

c. 执行add指令,将A和B相加,结果保存在A中。

d. 将结果存储到内存中。

e. 程序结束。

3.调试程序并进行测试在完成汇编程序的编写后,我们需要使用调试器对程序进行调试,并进行测试。

首先,将程序加载到学习板上进行调试。

在调试过程中,我们使用示波器观察各个信号的波形,以确定程序的正确性。

通过逐步单步执行程序并观察寄存器和标志位的变化,我们验证了程序的正确性。

接下来,我们使用输入设备输入两个数,并观察输出结果是否正确。

测试结果表明程序正确实现了两个数的加法操作。

4.总结体会和改进建议通过本次实验,我们深入了解了8086微处理器的内部结构和指令系统,掌握了汇编语言的编程方法和技巧,熟悉了微机系统的输入输出操作原理,以及掌握了8086微机系统的调试方法和程序调试技巧。

微机原理实验报告

微机原理实验报告

微机原理实验报告1.实验的目的是学习8086/8088指令系统中一些基本指令的用法以及程序的基本方法。

2.熟悉在PC上建立,组装,连接,调试和运行8086.8088汇编语言程序的全过程。

2,在实验中,四个数字a,B,C和D分别以单字节压缩BCD代码的形式存储在num存储器的四个单元中。

然后,计算(a + b)-(c + D)并以Y1单位放置,结果显示在屏幕上。

在调试中,不断更改a,B,C,D的内容并查看结果。

本文提供了几组数据:1. A = 09,B = 06,C = 04,d = 07 2. A = 38,B = 41,C = 29,d = 343. A = 70,B = 23,C = 42,d = 414. A = 63,B = 73,C = 62,d = 50 3.实验调试的过程1.使用DOS工具掩码和链接生成EXE文件2.使用调试工具编译断点调试程序。

1.用-U命令反汇编程序②设置断点1以检查a + B的结果是否正确。

结果存储在A1中23h,结果正确。

③设置断点2以检查C + D的结果是否正确。

如果将结果存储在Al中30h,则结果正确。

④运行程序后,使用-D命令检查最终结果是否正确。

数据段的第五个地址是计算结果,该结果正确。

⑤使用-E特别是在(a + b)-(c + D)中,如果前者小于后者,则结果可能不正确。

这时,我们应该判断借位标志是否为负。

如果为负,请使用(c + D)-(a + b)并在结果中输出一个负号。

3.成功调试并检查结果直接在DOS命令add.exe 下运行或在调试中使用-G命令运行程序,并查看程序结果。

4.实验程序和DSEG程序框图。

定义数据段num DB 13h,27h,11h,12h;定义A,B,C,D Y1 DB?DSEG结束;数据段结束sseg段标准堆栈;定义堆栈DB 20 dup(?)sseg结束cseg段假定CS:cseg,ds:DSEG,SS:SSEG开始:MOV AX,DSEG MOV DS,AX MOV AX,SSEG MOV SS,AX MOV AL,[NUM];复制A至AL添加AL,[NUM + 1]; A + B DAA MOV CL,AL;保存AL MOV AL,[NUM + 2];复制C至AL 添加AL,[NUM + 3]; C + D DAA SUB CL,AL;(A + B)-(C + D)MOV AL,CL DAS MOV [NUM + 4],AL MOV BL,AL;保存AL和AL,0F0H; R SHIFT MOV CL,4 SHR AL,CL ADD AL,30H;获取ASCII MOV DL,AL MOV AH,02h int 21h mov Al,BL;恢复Al和Al,0Fh;取低4位,添加Al,30h mov DL,Al mov ah,02h int 21h mov ax,4c00h int 21h cseg结束起始端5。

微机原理实验报告

微机原理实验报告

微机原理实验报告1实验的目的是学习8086/8088指令系统中一些基本指令的用法和程序的基本方法。

2熟悉8086.8088汇编语言程序在PC机上建立、组装、连接、调试和运行的全过程。

实验中,a、B、C、D四个数字以单字节压缩BCD码的形式存储在num存储器的四个单元中。

然后,计算(a+b)-(c+D)并以Y1为单位,结果显示在屏幕上。

在调试过程中,不断更改a、B、C、D的内容,并检查结果。

本文提供了几组数据:1。

A=09,B=06,C=04,d=072。

A=38,B=41,C=29,d=34 3。

A=70,B=23,C=42,d=41 4。

A=63,B=73,C=62,d=50 3。

实验调试过程1。

使用DOS工具掩码和链接生成EXE文件2。

使用调试工具编译并中断单击调试器。

1使用-U命令反汇编程序②设置断点1检查a+B的结果是否正确。

结果在23小时存储在A1中,结果正确。

③设置断点2检查C+D的结果是否正确。

如果结果存储在Al中30小时,则结果正确。

④运行程序后,使用-D命令检查最终结果是否正确。

数据段中的第五个地址是计算结果,它是正确的。

⑤尤其在(a+b)-(c+D)中使用-E。

如果前者比后者小,结果可能不正确。

这时,我们应该判断借阅符号是否为负数。

如果是负数,则使用(c+D)-(a+b),并在结果中输出一个负号。

三。

已成功调试并检查结果。

直接在DOS命令下运行程序添加.exe 或者在调试期间使用-G命令运行程序,并检查程序结果。

4实验程序和DSEG程序框图。

定义数据段编号DB 13h、27h、11h、12h;定义A、B、C、D Y1 DB?DSEG结束;数据段结束sseg段标准堆栈;定义堆栈DB 20 dup(?)sseg结束cseg段假设CS:cseg,ds:DSEG,SS:sseg start:MOV AX,DSEG MOV ds,AX MOV AX,sseg MOV SS,AX MOV AL,[NUM];将A复制到AL以添加AL,[NUM+1];A+B DAA MOV CL,AL;保存AL MOV AL,[NUM+2];将C复制到AL 以添加AL,[NUM+3];C+D DAA SUB CL,AL;(A+B)-(C+D)MOV AL,CL DAS MOV[NUM+4],AL MOV BL,AL;save AL和AL,0F0H;R SHIFT MOV CL,4 SHR AL,CL ADD AL,30H;获取ASCII MOV DL,AL MOV AH,02h int 21h MOV AL,BL;还原AL和AL,0Fh;取低位4位,加上AL,30H MOV DL,AL MOV AH,02h int 21h MOV ax,4c00h int 21h cseg end start end end 5。

微机原理实验报告1

微机原理实验报告1

微机原理实验报告班级:电气93姓名:党尧学号:09041059实验一:顺序程序的设计一、实验目的:1.学习8086/8088指令系统中一些基本指令的用法和程序设计的基本方法。

2.熟悉在PC机上建立、汇编、链接、调试和运行8086、8088汇编语言程序的全过程。

二、实验内容:设a、b、c、d四个数分别以胆子解压缩BCD码形式存放在内存NUM开始的四个单元,计算(a+b)-(c+d)并将结果放在Y1单元,将结果在屏幕上显示出来。

在DEBUG中,不断改变a,b,c,d内容并查看结果。

1.a=09,b=06,c=04,d=072.a=38,b=41,c=29,d=343.a=70,b=23,c=42,d=414.a=63,b=73,c=62,d=50三、程序框架:DESG SEGMENT :定义数据段NUM DB 13H,27H,11H,12H :定义a,b,c,dY1 DB ?DSEG ENDS :数据段定义结束SSEG SEGMENT PARA STACK :定义堆栈段DB 20 DUP(?)SSEG ENDS :堆栈段定义结束CSEG SEGMENT :定义代码段ASSUME CS:CSEG,DS:DSEG,SS:SSEG :各段定义START: MOV AX,DSEGMOV DS,AX :数据段段地址送DSMOV AX,SSEGMOV SS,AX :堆栈段段地址送SSMOV AX,4C00HINT 21HCSEG ENDSEND START四、程序内容:DSEG SEGMENTNUM DB 13H,27H,11H,12HY1 DB ?DSEG ENDSSSEG SEGMENT PARA STACKDB 20 DUP(?)SSEG ENDSCSEG SEGMENTASSUME CS:CSEG,DS:DSEG,SS:SSEGSTART: MOV AX,DSEGMOV DS,AXMOV AX,SSEGMOV SS,AXMOV AL,NUM :数据a送ALADD AL,NUM+1 :将a+b存储到ALDAA :压缩BCD码加法调整MOV CL,AL :保存AL内容MOV AL,NUM+2 :数据c送ALADD AL,NUM+3 :将c+d存储到ALDAA :压缩BCD码加法调整SUB CL,AL :将(a+b)-(c+d)存储到CLMOV AL,CL :CL送ALDAS :压缩BCD码减法调整MOV Y1,AL :送出结果显示压缩BCD码:MOV BL,AL :保存AL中的内容AND AL,0F0H :取AL中高四位MOV CL,4SHR AL,CL :BCD码高位移到低位ADD AL,30H :(AL)加30H得ASCII码MOV DL,ALMOV AH,02HINT 21H :显示(DL)MOV AL,BL :恢复(AL)AND AL,0FH :取(AL)低四位ADD AL,30H :(AL)30H得ASCII码MOV DL,ALMOV AH,02HINT 21H :显示(DL)返回DOS:MOV AX,4C00HINT 21HCSEG ENDSEND START五、实验分析:运用debug程序的-u命令可见程序反汇编内容:之后用–g 及–r 命令可观察每一步程序进行后AL中存储内容的变化:0BD9:0000 B8D60B MOV AX,0BD60BD9:0003 8ED8 MOV DS,AX0BD9:0005 B8D70B MOV AX,0BD70BD9:0008 8ED0 MOV SS,AX0BD9:000A A00000 MOV AL,[0000] :AL=130BD9:000D 02060100 ADD AL,[0001] :AL=3A0BD9:0011 27 DAA :AL=400BD9:0012 8AC8 MOV CL,AL0BD9:0014 A00200 MOV AL,[0002] :AL=110BD9:0017 02060300 ADD AL,[0003] :AL=230BD9:001B 27 DAA :AL=2308D9:001C 2AC8 SUB CL,AL0BD9:001E 8AC1 MOV AL,CL :AL=1D0BD9:0020 2F DAS :AL=1708D9:0021 A20400 MOV [0004],AL-g 24后-r命令可见:AX=0B17 BX=0000 CX=0012 DX=0000 SP=0014 BP=0000SI=0000 DS=0BD6 SS=0BD7 CS=0BD9 IP=0024可知此时程序已将(a+b)-(c+d)结果17存入到AL中。

8086数字时钟课程设计报告

8086数字时钟课程设计报告

INTEL 8086/8088系列微型计算机原理及接口技术课程名称:微型计算机原理及接口技课程设计设计题目:具有年月日时分秒功能的时钟显示院系:电气工程学院班级:设计者:学号:同组者:指导教师:设计时间:目录一、设计内容与要求 (2)二、设计思路 (3)三、流程图 (4)四、程序 (7)五、运行结果 (12)六、硬件设计…………………………………………………………………………………………………七、调试步骤 (13)八、心得体会 (14)九、参考文献 (14)一、设计内容与要求:用汇编语言编写一个时钟程序,在微机屏幕上显示当前时间****年**月**日**时**分**秒。

在程序启动后,微机屏幕上显示当前时间,按下a键开始计时,按下b键停止计时,按下c键退出程序。

二、设计思路:利用BIOS的INT 1AH的2号系统功能调用,将计算机系统的时间参数(BCD 码)送入寄存器。

其中CH 和CL中保存的是小时数和分钟数;DH中保存的是秒钟数。

利用除法命令DIV,若进行字节操作,16位被除数隐含在AX中,8位除数就是源操作数,结果的8位商在AL中,8位余数在AH中,即(AL)(AH)/(SRC)的商(AL)(AH)/(SRC)的余数若进行字操作,32位被除数低16位隐含在AX中,高16位8位隐含在DX中,16位除数就是源操作数,结果的16位商在AX中,16位余数在DX中,即(AX)(DX,AX)/(SRC)的商(DX)(DX,AX)/(SRC)的余数通过以上方法将二进制表示的年月日时分秒转换为BCD码,再将BCD码表示的时,分,秒转换成AS CⅡ码并送入屏幕显示。

能调用子程序,若显示时间与当前时间不符,则校准显示时间,并用INT 21H 的7号功能调用判断输入回车并清屏。

若输入字符C,则令SIGN=3,即退出程序,若无输入或输入字符不是C,则反复从系统中取出当前时间并显示。

详细过程见程序注释。

三、流程图:四、程序:GB MACRO X ;宏定义MOV AX,0200HMOV BX,0000HMOV CX,0000HMOV DX,XINT 10HENDMXIANSHI MACRO Y,Z,WMOV BP,OFFSET YMOV AH,13HMOV AL,0BMOV BX,0EHMOV CX,ZMOV DX,WINT 10HENDMDATA SEGMENTBUFFER1 DB 11 DUP (?)BUFFER2 DB 9 DUP (?)SECOND DB ?SIGN DB ?STR1 DB 'THE CURRENT TIME: $'STR4 DB 'PRESS C TO EXIT:$'DATA ENDSSTACK SEGMENT STACK 'STACK'DB 100 DUP ('S')STACK ENDSCODE SEGMENT PARA 'CODE'ASSUME CS:CODE,DS:DATA,SS:STACK,ES:DATA STA PROC FARPUSH DSXOR AX,AXPUSH AXMOV AX,DATAMOV DS,AXMOV ES,AXMOV AX,0600HMOV BX,0754HMOV CX,0000HMOV DX,194FHINT 10HXIANSHI STR1,17,0416H ;显示‘ THE CURRENT TIME:’XIANSHI STR4,16,1016H ;显示‘ PRESS C TO EXIT:’BEGIN: CMP SIGN,3 ;若输入字符C,则令SIGN=3,即退出程序,若无输入或输入字符不是C,则反复从系统中取出当前时间并显示JE TUI1MOV AH,2AHINT 21H ;取日期LEA BX,BUFFER1PUSH DX ;保护寄存器MOV AX,CX ;利用除法产生商和余数,把以二进制形式保存的年号转换为BCD码MOV DX,0000H ;年号除以1000得到商即为年号的千位MOV CX,1000DIV CXOR AL,30H ;年号的千位转换为其ASCII码并存入BUFFER1第1存储单元中MOV [BX],ALMOV AX,DX ;年号的百位转换为其ASCII码并存入BUFFER1第2存储单元中MOV CL,64HDIV CLOR AL,30HINC BXMOV [BX],ALMOV AL,AHMOV AH,00H ;年号的十位转换为其ASCII码并存入BUFFER1第3存储单元中MOV CL,10DIV CLOR AL,30HINC BXMOV [BX],ALOR AH,30H ;年号的千位转换为其ASCII码并存入BUFFER1第4存储单元中INC BXMOV [BX],AHPOP DX ;年号转换完毕INC BXMOV CL,2DH ;“—”号的ASCII码存入BUFFER1第5存储单元中MOV [BX],CL ;月数除以10得到商即为月数的十位MOV AL,DH ;月数的十位转换为其ASCII码并存入BUFFER1第6存储单元中CMP AL,10JAE L1JMP L2L1: ADD AL,6L2: PUSH AXAND AL,0F0HSHR AL,1SHR AL,1SHR AL,1SHR AL,1OR AL,30HINC BXMOV [BX],ALPOP AXAND AL,0FHOR AL,30HINC BXMOV [BX],AL ;月数的十位转换为其ASCII码并存入BUFFER1第7存储单元中INC BX ;月数转换完毕MOV CL,2DH ;“—”号的ASCII码存入BUFFER1第8存储单元中 MOV [BX],CL ;日期除以10得到商即为日期的十位MOV AL,DL ;日期的十位转换为其ASCII码并存入BUFFER1第9存储单元中MOV AH,00HMOV CL,10DIV CLOR AL,30HINC BXMOV [BX],AL ;日期的个位转换为其ASCII码并存入BUFFER1第10存储单元中OR AH,30HINC BX ;年月日转换完毕MOV [BX],AHMOV CL,'$' ;“$”号的ASCII码存入BUFFER1第11存储单元中 INC BXJMP NEXTTUI1:JMP TUI2NEXT:MOV [BX],CLXIANSHI BUFFER1,10,0616H ;用9号功能显示年月日MOV AH,2CHINT 21H ;取时间LEA BX,BUFFER2MOV AL,CH ;小时数除以10得到商即为小时数的十位MOV AH,00HMOV CH,10DIV CHOR AL,30H ;小时数的十位转换为其ASCII码并存入BUFFER2第1存储单元中MOV [BX],ALOR AH,30H ;小时数的个位转换为其ASCII码并存入BUFFER2第2存储单元中INC BXMOV [BX],AHINC BXMOV CH,3AH ;“:”号的ASCII码存入BUFFER2第3存储单元中 MOV [BX],CH ;分钟数除以10得到商即为分钟数的十位MOV AL,CLMOV AH,00HMOV CL,10DIV CLOR AL,30H ;分钟数的十位转换为其ASCII码并存入BUFFER2第4存储单元中INC BXMOV [BX],AL ;分钟数的个位转换为其ASCII码并存入BUFFER2第5存储单元中OR AH,30HINC BXMOV [BX],AHINC BXMOV CL,3AH ;“:”号的ASCII码存入BUFFER2第6存储单元中 MOV [BX],CLMOV AL,DH ;秒数除以10得到商即为秒数的十位MOV AH,00HMOV CL,10DIV CLOR AL,30H ;秒数的十位转换为其ASCII码并存入BUFFER2第7存储单元中INC BXMOV [BX],ALOR AH,30H ;秒数的个位转换为其ASCII码并存入BUFFER2第8存储单元中INC BXMOV [BX],AHINC BX ;时分秒转换完毕MOV CL,'$' ;“$”号的ASCII码存入BUFFER2第9存储单元中 MOV [BX],CLXIANSHI BUFFER2,8,0716H ;用9号功能显示时分秒CALL DELY ;调用子程序,若显示时间与当前时间不符,则校准显示时间JMP BEGINTUI2: RETSTA ENDPDELY PROCPUSH CXPUSH DXMOV AH,2CHINT 21HMOV SECOND,DHRE: MOV AH,2CHINT 21HPUSH DXMOV AH,6MOV DL,0FFHINT 21HPOP DXCMP AL,63H ;若输入字符C,则令SIGN=3,即退出程序,若无输入或输入字符不是C,则反复从系统中取出当前时间并显示JE Z3JMP CONTINZ3: MOV SIGN,3CONTIN: CMP SECOND,DHJE RECMP SIGN,1JMP EXITEXIT: POP DXPOP CXRETDELY ENDPCODE ENDSEND STA五、运行结果:程序运行后如下图所示:按下c键,则会出现下图界面:(此时按下任意键即可退出该程序)(注意,若没按下任何键或按下的不是c键,则不会出现下图所示界面)六、硬件设计:1、硬件设计说明:由8284产生系统脉冲送8253的CLK1,通过CPU置计数初值使计数器2输出1KHZ方波。

微机课程设计8086控制的循环彩灯报告

微机课程设计8086控制的循环彩灯报告

微机原理课程设计报告题目:循环彩灯控制系统学年:10/11学年学期:第1学期班级:学号:姓名:循环彩灯控制系统课程设计报告设计目的:1.巩固和加深课堂所学知识;熟悉各种指令的应用及条件;2.学习掌握一般的软硬件的设计方法和查阅、运用资料的能力;3.深入了解与掌握8255A在PC机系统的典型接法和8255A的工作方法及应用编程。

设计任务与要求:设计一个循环彩灯控制系统,能输出四种花型,输出花型如下:1)00000001 左循环(1时亮,0时灭)2)10000000 右循环3)按00000001,00000011,00000111-----11111111规律递增,后同时闪烁一次,循环不断。

4)按01010101,10101010(或红、绿彩灯)交替闪烁。

功能要求:1)循环彩灯的循环速度可调;2)按键要求①启动/暂停,按SW0开关启动系统,按SW1开关停止系统工作。

②花型变换,由开关SW2、SW3进行四种花型切换;总体方案与说明:根据所学内容和对8255A的应用,整个系统硬件采用8086微处理器,74LS373锁存器,和8255A可编程并行接口芯片和8个led彩灯。

Intel 8255A是一种通用的可编程并行接口芯片,由于它是可以编程的,可以通过程序来设置芯片的工作方式,通用性强,使用灵活,可为多种不同的CPU与外设之间提供并行输入/输出的通道;8086微处理器,选择最小工作模式,所有的总线控制信号均由8086产生;8086CPU的地址\数据总线AD15-AD0和地址\状态总线A16/S3-A19/S6是复用的,必须通过地址锁存器把地址总线和数据总线分离循环彩灯主要模块流程图软件设计采用模块化程序设计思想,将软件划分成若干单元,主要包括主程序、LED 彩灯显示子程序和延时子程序等。

本系统具体汇编源程序见附表一。

使用软件说明:ProteusProteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等Emu8086Emu8086-MicroprocessorEmulator结合了一个先进的原始编辑器、组译器、反组译器、具除错功能的软件模拟工具(虚拟PC),还有一个循序渐进的指导工具,编译源代码,并在模拟器上一步一步的执行。

微机原理实验指导书

微机原理实验指导书

《8086/8088微机原理与接口技术》实验指导书成都理工大学核技术与自动化工程学院电气工程系2012-9-10目录实验一EMU8086软件的使用 (3)实验二8086指令观察 (7)实验三顺序结构程序设计 (10)实验四分支结构程序设计 (13)实验五循环结构程序设计 (15)实验六子程序设计 (17)附录1汇编语言上机实验基础 (19)1.1汇编语言程序上机实验过程 (19)1.2EMU8086 .................................... 错误!未定义书签。

1.3实验及实验报告要求 (20)基础软件实验部分共有六个实验组成,通过对这些实验程序的编写、调试,使学生熟悉8086/8088的指令系统等,了解程序设计过程,掌握汇编程序设计方法以及如何使用实验系统提供的各种调试、分析手段来排除程序错误。

实验一 EMU 8086软件使用EMU 8086是一款基于Windows的集编辑、汇编、链接、调试运行于一体的可视化的8086 CPU仿真软件,有着与8086十分相近的功能。

EMU8086是交互式学习汇编语言(Assembly Language)、计算机结构(Computer Architecture)和逆向工程(Reverse Engineering)的完整仿真体系。

其内部集成了汇编程序汇编器、链接器、虚拟硬件、参考资料、例程、学习指南等。

EMU8086是学习Intel 8086微处理器的理想工具,它模拟真实微处理器的每一步骤,并显示内部寄存器、存储器、堆栈、变量和标志寄存器,而且其中任何一个数值都可通过鼠标双击来改变。

同时它还提供了微机显示器、直流步进电机、交通灯、LED等虚拟外设。

本节对EMU 8086的使用方法作一简介,仍以例1的HELLO程序为例。

双击EMU8086图标,打开程序。

此时会弹出welcome窗口,见图1.1所示,可将该窗口关闭直接进入编辑状态;也可点击它的new按钮,则会弹出代码模板选择框供用户选择(可选择EXE模板),见图1.2所示,一般点击Cancel按钮,直接进入编辑状态。

8088微机原理及接口技术报告

8088微机原理及接口技术报告

微机原理及接口技术实验报告课程(项目)名称:微机原理与接口技术学院:自动化专业:自控姓名:学号:指导教师:成绩:2014年11 月26 日实验一认识实验及多字节加减法程序一、任务与目的1. 实验任务:(1) 熟悉和掌握MASM汇编程序及TD调试软件的使用;(2) 熟悉代码段、数据段、堆栈段的结构;(3) 掌握8086/8088汇编程序的结构;(4) 掌握多字节加减法程序的编写。

2. 实验目的:(1). 掌握8086/8088汇编程序及调试程序的基本使用方法;(2) 熟悉8086/8088汇编语言编写的基本结构;(3) 熟悉多字节加减算术运算的基本方法。

二、原理(条件)1.相关知识:(1) MASM汇编程序及TD调试软件的使用方法;(2) 8086/8088汇编程序结构及算术运算等相关指令。

2.实验条件:MASM汇编程序及TD调试软件。

三、内容步骤1.启动TD(Turbo Debugger)输入程序段,观察执行情况并分析结果:(1) MOV BL,08HMOV CL,BLMOV AX,03FFHMOV BX,AXMOV [0200H],BXMOV ES:[0300H],AX(2) MOV AX,0A268HMOV SI,9D1CHADD AX,SIAX= 3F84H CF= 1 AF= 1 ZF= 0 PF= 1 OF= 1 SF= 0 ADD AL,30HAX= 3FB4H CF= 0 AF= 0 ZF= 0 PF= 1 OF= 0 SF= 1ADC AX,0FFFFHAX= 3FB3H CF= 1 AF= 1 ZF= 0 PF= 0 OF= 0 SF= 0分析:第一个是两个字相加,第二个是两个字节相加,第三个是两个字带进位相加,AX内结果改变的同时,FLAGS标志位也相应发生变化。

(3) 输入程序段,分步运行:MOV AX,0102HMOV BX,0304HMOV CX,0506HMOV DX,0708HPUSH AXPUSH BXPUSH CXPUSH DXPOP DXPOP CXPOP BXPOP AX分析:该段程序是对栈的操作,将AX,BX,CX,DX先后栈之后再出栈,观察到进栈出栈时栈内变化及SP指针值的变化。

微机原理课程设计报告_基于8086钢琴的程序设计

微机原理课程设计报告_基于8086钢琴的程序设计

Hefei University微机原理课程设计报告课题名称:基于8086钢琴的程序设计班级:09自动化(1)班报告人:指导教师:2011 年 12 月 30 日目录摘要: (3)关键字: (3)正文: (3)一、总体框图 (4)二、方案的论证 (4)三、电路设计 (5)3.1 扬声器接口电路 (5)3.2键盘模块 (5)3.3 总电路系统 (6)四、软件设计流程图 (7)4.1主流程图 (7)4.2键盘扫描子程序图 (8)五、c51单片机系统仿真实现 (10)六、总结与体会 (10)参考文献: (10)附件一、自动化专业微机原理课程设计任务书 (11)附件二:汇编程序清单 (12)附件三:C语言程序清单 (16)基于8086钢琴的程序设计摘要:本设计以8086为主体,结合使用8255,8253及相关电路设计利用键盘输入发出不同频率的的音调。

利用8255检测键盘,根据输入信号驱动数码管显示,控制8253,完成输入与检测;利用8253的分频输出不同的信号,经放大驱动扬声器发出声音。

关键字: 8086、8255、8253、键盘正文:一、总体框图本系统主要有两个功能模块组成:键盘扫描,蜂鸣器发声。

围绕这二个功能需要用到三个主要芯片:8086,8255,8253。

首先8086主芯片负责数据交换与处理,芯片初始化等。

系统开始时对键盘进行扫描,有输入信号时,8255采集信号并输入8086进行处理, 8086接到8255输入的信号时,调用与之相关的初始值n,输入到8253,对clock进行分频输出不同的频率信号,驱动扬声器发出不同的音调,同时8255对8253进行控制并对信号进行采集送到8086,决定发声时间的长短。

二、方案的论证扬声器接口由8255、8253、驱动器和低通滤波器等构成,8255做控制器,8253做音频信号源。

根据音阶频率表,利用8253可以产生相应频率的脉冲信号,不同频率的脉冲信号经驱动电路放大后,就会发生不同的音调。

微机原理课程设计说明书

微机原理课程设计说明书

武汉纺织大学课程设计任务书课题名称:基于8086/8088的交通信号灯设计完成期限:2011年12月12日至 2011年12月22日院系名称外经贸学院指导教师周国鹏专业班级机设0824指导教师职称学生姓名钮宇宽院系课程设计(论文)工作领导小组组长签字一、任务分析基于8086/8088交通信号灯设计主要需要实现这几部分功能,第一,信号灯的通断延时;第二、紧急按键对交通信号灯的控制;第三、环境湿度、温度的采集。

在以往的设计中,采用8253计数器0和计数器1级联实现准确定时,运用较多,这种设计方法,定时范围比较任意,不受条件的限制,不足之处,需要的硬件电路块比较多,结构较复杂,如果运用我们本次设计任务,不利于节约资源。

基于此,我采用了,单级计数器累加定时的简单设计方法。

二、设计内容分析根据设计任务书,确定灯亮灭的规律;1.东西南北两个方向起始状态全为红,延续3秒。

2.东西方向红灯亮,南北方向绿灯亮;延续6秒。

3.东西方向红灯亮,南北方向转为黄灯亮;延续3秒。

4.东西方向红灯亮,延续3秒;南北方向黄灯亮,以频率1HZ闪烁3秒。

5.东西方向绿灯亮,南北方向红灯亮,延续6秒。

6.东西方向黄灯亮,南北方向红灯亮;延续3秒。

7.东西方向黄灯亮,以频率1HZ闪烁3秒;南北方向红灯亮,延续3秒。

8.东西方向红灯亮,南北方向绿灯亮,重复以上步骤。

9.每一个路口有一个紧急按键,可以中断当前的交通状态,使当前的路口为绿灯,经过12秒后恢复。

从允许通行时灯的亮灭情况开始分析,总结出下表(1标示灯亮,0标示灯灭):状态时间东西红灯东西黄灯东西绿灯南北红灯南北黄灯南北绿灯无效无效a 0-6 1 0 0 0 0 1 0 0b 6-9 1 0 0 0 1 0 0 0c 9-12 1 0 0 0 0 1 0 0 0d 12-18 0 0 1 1 0 0 0 0e 18-21 0 1 0 1 0 0 0 0f 21-24 0 0 1 0 1 0 0 0 0转换成控制码:状态 时间 十六进制 二进制 状态1 0-6 84H 10000100B 状态2 6-12 88H 10001000B 状态3 12-18 30H00110000B状态418-2450H01010000B东西、南北分别在0-6,、6-12、12-18、18-24时间段的亮灯情况比较:一般十字路口的交通灯控制系统的工作过程如下:(1)南北车道绿灯亮,东西车道红灯亮。

微机原理课程设计--用8088设计一个能实现0-9整数加法运算的计算器,和用2位LED数码显示。

微机原理课程设计--用8088设计一个能实现0-9整数加法运算的计算器,和用2位LED数码显示。

二○一一~二○一二学年第一学期信息科学与工程学院课程设计报告书课程名称:微机原理及应用课程设计班级:学号:姓名:指导教师:2011年12月一、程序设计目的综合运用本课程知识,利用集成电路设计实现一些中小规模电子电路或者完成一定功能的程序,以复习巩固课堂所学的理论知识,提高程序设计实现系统、绘制系统电路图的能力,为实际应用奠定一定的基础。

二、实验内容及具体要求用8088设计一个能实现0-9整数加法运算的计算器,和用2位LED数码显示。

键盘包括0-9“+”和“=”12个按键。

具体要求:1.画出连接线路图或功能模块引脚连接图。

2.采用8088CPU作主控制器,8255作为并行接口电路实现按键的扫描以及数码管的显示。

3.采用2个共阴极型LED,只需显示0—255范围内的值。

三、设计分析8255A写方式控制字8255A各端口结构四、流程图五、程序清单CODE SEGMENTASSUME CS:CODE,DS:CODEBEGIN: JMP BEGINBUFF DB 1,2,3,4,5,6TABLE1DW 3E07H,3E0BH,3D0BH,3B0BH,3E0DH,3D0DH,3B0DH,3E0EH,3D0EH,3B0EH; 对应0~9的键盘值DW370EH,370DH,370BH,3707H,3B07H,3D07H,2F07H,2F0BH,2F0DH,2F0EH,1F07H,1F0BH,1F 0DH; 对应其他的键盘值TABLE DB 3FH,6,5BH,4FH,66H,6DH,7DH,7,7FH,6FH,46H,40H,48H,00; 0~9上的字型码X DW 0Y DW 0F DB 0N DB 0C DB 0ADDF DB 0SHI DB 0GE DB 0BEGIN: MOV AX,CSMOV DS,AXCALL CLEARAGAIN: MOV DX,203HMOV AL,8255ACALL LED ;调用子程序CALL KEYCMP F,1JNE AGAINCMP BL,9 ;对比数字键盘JLE D_PROCECMP BL,10JE TO_ADD ; 转到加法子程序CMP BL,11JMP AGAIN ;返回继续循环CLEAR1: CALL CLEARCALL CLBUFJMP AGAIND_PROCE: CMP N,1JE D_P_YMOV CL,4SHL X,CLMOV BH,0ADD X,BXCALL BSHIFTMOV BUFF+5,BLJMP AGAIND_P_Y: MOV CL,4SHL Y,CLMOV BH,0ADD Y,BXCALL BSHIFTMOV BUFF+5,BLJMP AGAINTO_ADD CALL BSHIFT ; 加法子程序的具体实现MOV BUFF+5,BLMOV F,0MOV N,1MOV ADDF,1JMP AGAINKEY PROC ;键盘扫描程序的实现MOV DX,203HMOV AL,10001001BOUT DX,AL ;写控制字MOV F,0MOV DX,201HMOV AL,0OUT DX,ALMOV DX,202HIN AL,DXAND AL,0FHCMP AL,0FHJE K_EXITMOV CX,3000LOOP $ ; 延时IN AL,DXAND AL,0FHPUSH AXMOV DX,203HMOV AL,10000010B; B_IN,C_OUTOUT DX,ALPOP AXMOV BL,ALMOV DX,202HOUT DX,ALMOV DX,201HIN AL,DXAND AL,00111111HMOV BH,ALLEA SI,TABLE1MOV CX,23MOV AH,0NK: CMP BX,[SI]JE FOUNDINC AHADD SI,2LOOP NKFOUND: MOV AL,0 ;不断扫描,等待输入MOV DX,202HOUT DX,ALMOV DX,201HIN AL,DXAND AL,3FHCMP AL,3FHJNE FOUND ;如果无输入继续扫描MOV CX,3000LOOP $MOV F,1MOV BL,AHK_EXIT: RETKEY ENDPSTORE PROC ; 存储程序MOV WORD PTR BUFF,1414HLEA SI,BUFF ;赋给偏移地址MOV CH,4DISPLAY: MOV DL,0MOV AL,BUFF[DL] ;取数MOV AH,0MOV CL,10DIV CLMOV SHI,AH ;求和的十位MOV GE,AL ;和的个位MOV DX,383H ;PA口输出方式选择控制字MOV AL,80HOUT DX,ALMOV DX,380H ;PA口代码输出十位显示MOV AL,TABLE[SHI]OUT DX,ALMOV DX,383H ;PB口方式选择控制字MOV AL,10000000HOUT DX,ALMOV DX,381H ;PB口代码输出个位显示MOV AL,TABLE[GE]OUT DX,ALINC DLJMP DISPLAYS_REL: MOV CL,4ROL BX,CL ;循环左移四位MOV AL,BLAND AL,0FH ; 取低四位MOV [SI+2],ALINC SIDEC CHJNZ S_RELCALL CLEARRETSTORE ENDPCODE ENDSEND START六、硬件部分七、设计小结本次课程设计花费了我很多时间和精力,但是也锻炼了我很多方面的能力。

8086-8088微机原理及应用实验指导书

8086-8088微机原理及应用实验指导书

8086/8088微机原理与接口技术8086/8088微机原理与接口技术 (1)前言 (3)第一章实验环境介绍 (6)1.1汇编语言程序的上机过程 (6)1.1.1、源程序的编辑 (6)1.1.2、汇编 (6)1.1.3、链接 (6)1.1.4、调试 (7)1.2 8088实验仪的连机实验环境(DJ-8086k) (7)1.2.1、系统配置 (7)1.2.2、DJ-8086k软件启动和联机 (7)1.2.3、DJ-8086k软件主窗口 (8)1.2.4、源程序的编辑 (8)1.2.5、编译 (9)1.2.6、仿真调试 (9)第二章软件部分实验 (10)实验一汇编语言上机环境及基本操作 (10)实验二DEBUG调试程序的应用 (12)实验三多精度十进制加法程序设计 (17)实验四数学表达式计算 (19)实验五分支结构程序设计 (21)实验六循环结构程序设计 (22)实验七EMU8086集成开发环境 (23)第三章硬件部分实验 (25)3.1 存储器实验 (25)3.2 简单IO口实验 (28)3.3 8255A接口控制实验(一) (30)3.4 8255A接口控制实验(二) (32)附:实验报告格式 (37)前言认真做好实验,是掌握应用,提高动手能力的一个重要环节。

本课程安排了一些接口部件的实验,每个实验2学时,目的在于让同学们了解和掌握汇编语言的程序设计的基本方法和常用的接口器件的使用方法。

一个完整的实验过程,包括实验前的准备、实验操作过程和实验后的总结三部分。

做好实验前的准备,是做好实验的重要保障,希望同学们一定要做好实验前的准备工作。

一、实验前的准备1、认真阅读实验指导书,详细了解本课程实验的软硬件环境。

硬件环境:实验仪的基本组成和使用方法。

软件环境:调试软件的基本功能和使用方法。

这项工作应该在本学期开始,领到实验指导书时就进行。

2、详细了解本次实验的基本任务,充分理解实验原理为了实现本次实验的基本任务,硬件电路由哪几个部分组成,各部分电路的主要作用是什么,各部分电路之间如何连接?在此基础上读懂实验电路图。

微机原理课设报告

微机原理课设报告

中南大学微机原理课程设计报告一、课程设计目的通过本次课程设计要掌握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(直流电机反向非正常工作)并输入给开关量输入显示区的发光二极管,驱动前三个二极管在电机的三种工作状态下分别发光,从而实现指示灯电路。

8086-8088微机原理及应用Ⅰ实验指导书

8086-8088微机原理及应用Ⅰ实验指导书
改变当前工作目录
格式为:
cd d:\student\your_name
3、MD命令
建立一个新的目录
格式为:
md your_name
4、DEL命令
删除文件
格式为:
delfirst01.asm
5、RD命令
删除目录,要求要删除的目录下无任何目录或文件
格式为:
rd your_name
6、COPY命令
拷贝命令
DOS功能调用就是为诸如此类的目的设置的。DOS功能调用要求在进入INT21H调用前,首先将功能调用号送AH寄存器,并根据功能调用号准备初始数据。也就是说INT 21H的2号功能调用是输出DL寄存器中的字符。INT 20H是BIOS中断服务,这一软中断用来正常结束程序。
运行步骤:
(1)进入DEBUG
data segment
astr DB 'This is a masm sample!',0dh,0AH,'$'
data ends
code segment
assumeCS:code,DS:data
main proc far
start:
PUSHDS
XORAX, AX
PUSHAX
MOVAX,code
MOVDS, AX
例如:BCDSUM.EXE可执行文件在A盘,用DEBUG对其进行调试的操作命令如下。
C:\>DEBUG A:\BCDSUN.EXE
DOS在调用DEBUG程序后,再由DEBUG把被调试文件装入内存,当被调试文件的扩展名为COM时,装入偏移量为100H的位置,当扩展名为EXE时,装入偏移量为0的位置,并建立程序段前缀PSP,为CPU寄存器设置初始值。

基于8086交通灯课程设计说明书

基于8086交通灯课程设计说明书

武汉纺织大学微机原理及应用课程设计说明书姓名学号学院外经贸学院班级题目基于8086/8088的交通灯程序设计指导教师周国鹏2010 年 6月目录一、需求分析 (2)1、课题背景 (2)2、课题训练内容 (2)3、设备需求 (2)4、功能需求 (2)二、设计方案 (3)1、基于8255A的分析 (3)2、基于8259A的分析 (4)3、中断分析 (4)三、详细设计 (5)1、信号灯显示模块 (5)2、LED显示模块 (6)3、中断子程序模块 (6)4、整合所有模块 (6)5、硬件原理及电路图 (7)6、程序源代码 (9)四、设计总计 (15)五、参考资料 (16)一、需求分析1、课题背景现代城市交通日益拥挤,为保证交通安全,防止交通阻塞,在城市交通井然有序,交通信号灯便出为此出现在人们眼中。

十字道口的红绿灯是交通法规的无声命令,是司机和行人的行为准则。

十字道口的交通红绿灯控制是保证交通安全和道路畅通的关键。

当前,国内大多数城市正在采用“自动”红绿交通灯,它具有固定的“红灯—绿灯”转换间隔,并自动切换。

它们一般由“通行与禁止时间控制显示、红黄绿三色信号灯和方向指示灯”三部分组成。

交通灯的时间控制显示,以固定时间值预先“固化”在单片机中,每次只是以一定周期交替变化。

.2、课题训练内容设计一个基于8086/8088微型计算机的一个交通信号灯控制系统,要求能完成基本的交通灯控制,如红、绿、黄三种灯的定时交替点亮与熄灭;能提供行人通过时的临时信号修改;能提供当时当地的温度、湿度信息;提供基本的键盘输入。

要求学生了解8086/8088微型计算机控制系统的基本设计方法与思路,能独立查阅资料并汇总,具备一定的控制系统设计能力,掌握绘制电路原理图的能力,能编写一定难度的汇编程序并调试。

3、设备需求①.8086系统微机一台。

②温度传感器(可自选)和湿度传感器(可自选)、信号放大器。

③ 8253定时/计数器和8255A并行接口芯片、8259A、ADC0809。

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

8086/8088微机原理课程设计
1、课程设计说明
“微机原理与接口技术课程设计”主要是测试学生的8086/8088系统输入输出技术应用能力、数字电路应用能力和程序设计能力。

设计题目中综合了《数字逻辑》、《微机原理与接口技术》和《程序设计基础》等课程中的相关知识点。

特别是电气工程系各专业学习了《模拟电子》、《传感器技术》、《单片机技术》等课程,给题目的扩展和实际应用提供了基础。

本课程的课程设计实际上是一个综合性应用的设计和制作。

这里只给出了部分课程设计的题目,主要和接口电路有关,每个题目的实现方式和扩展空间都很大,指导教师可根据学生的具体情况决定设计题目的内容和设计量。

纯汇编语言软件的设计未在这里列出。

欢迎学生自拟题目,经指导教师审核其难易程度和确定所用器材,优先选用。

2、课程设计计分办法
课程设计的计分由课设题目(60)、课设报告(20)、考勤(20)三部分组成。

一、题目的选择
设计题目分为星级制(★),根据选择题目的难易程度确定成绩,以百分制计算,按比例计入总成绩。

要根据个人情况合理选择题目,不可多组选择同一题目。

1、无星为最简题目,做完多个题目仅记分为及格(69分及以下)。

2、1星(★)为简单题目,做完1个题目记分为良(70~89分)。

3、2星(★★)为较难题目,做完1个题目记分优(90~100分)。

4、星级题目多做可提高分值。

5、课设一般为分组实施,主要设计者记原星级分值,辅助者减1星。

6.、未完成设计者视设计程度减星计分。

7、无星题目可单人完成,但不选题目者记0分。

二、报告要求
课设报告应按规定格式书写,并按时上交。

报告原则上要求手工书写,如要打印必须是独立版本,遇雷同课设报告均不计入总成绩。

三、考勤
考勤。

点名一次未到扣5分,5次以上记0分。

3、课程设计题目
设计一、发光管间隔交替闪烁。

使QTH实验仪上的8个发光管间隔交替闪烁,要求:
①8255的PA0~PA7接L1~L8;
②8255的片选信号CE接地址线A15;
③闪烁时间可通过PC键盘、QTH小键盘或波动开关调整;
说明:
①发光管可接8255的其它口,CE也可接其它地址线。

★设计二、循环显示“0~9”。

使与KL1相连的数码管以闪烁的方式循环显示“0~9”(即每个数字亮、灭至少两次),要求:
①8255的PA0~PA3接KL1~KL4,PB0~PB7接KD0~KD7;
②8255的片选信号CE接地址线A15;
③除与KL1相连的数码管外,其余数码管熄灭。

说明:
①或是与KL2、KL3、KL4相连的数码管;
②数码管可接8255的其它口,CE也可接其它地址线。

★设计三、电机控制
电机(步进电机)控制,要求:
①通过程序控制电机的转速、方向,要求有多档调速;
②电机的转速、方向可通过PC键盘、QTH小键盘或拨动开关调整;
③显示电机的转速、方向。

★★设计四、循环显示“00~99”。

使与KL1相连的数码管以闪烁的方式循环显示“0~9”(即每个数字亮、灭至少两次),要求:
①8255的PA0~PA3接KL1~KL4,PB0~PB7接KD0~KD7;
②8255的片选信号CE接地址线A15;
③除与KL1相连的数码管外,其余数码管熄灭。

说明:
①或是与KL2、KL3、KL4相连的数码管;
②数码管可接8255的其它口,CE也可接其它地址线。

★★设计五、LED 16×16点阵显示汉字。

使LED16×16点阵显示一个汉字,要求:
①点阵模块的D7~D0和D15~D8与CPU模块的AD7~AD0相连;
②点阵模块的CS1与地址线A14相连,CS2与地址线A15相连;
③点阵模块的A0~A3与8255的PA0~PA3相连;
说明:
①CS1、CS2也可接其它地址线;
②点阵模块的A0~A3也可与8255的其它端口相连;
③可显示更多的字符、或调整移动速度。

★★设计六、显示开关编号。

当开关KN01,KN02,……,KN08中任意一个为1时,使与KL1相连的数码管显示该开关的编号;若有两个以上为1 时,显示“E”,要求:
①8255的PA0~PA7接KN01~KN08,PB0~PB7接KD0~KD7;
②8255的片选信号CE接地址线A15;
③除与KL1相连的数码管外,其余数码管熄灭。

说明:
①或是与KL2、KL3、KL4相连的数码管;
②数码管可接8255的其它口,CE也可接其它地址线。

4、设计报告格式及要求
这里给出了设计报告书写的一般格式要求,以后的设计报告均可按此格式书写,甚至一些科技类论文也可参照这种格式。

一、封面和目录
设计报告应有包含课程名称、设计题目、班级、姓名、学号、日期的封面,和含有内容条目信息的目录。

二、关键字(可选)
本设计中所涉及到的关键技术或应用词组等,如:微机原理、程序设计、接口、显示、精度、A/D转换等。

三、摘要
以简洁文字叙述本设计的主要内容、设计的目标及达到的效果、成就等,一般字数控制在100字左右。

四、设计简介
简单说明设计的动机、相关的成熟技术与方法、本系统(设计)的特点、系统准备实现的主要功能。

五、系统设计
设计的理论依据、技术依据、数学模型(公式、算法)的推导,主要器件特性说明、系统逻辑功能结构、主要算法及说明。

六、设计(实验)结果与讨论
系统连线、核心程序流程说明、设计记录、数据分析及讨论。

七、结论
在设计中的主要工作、设计特点、评价、总结、意见或建议。

八、参考资料
书籍、期刊、网址。

书籍应有书名、作者及出版社等信息;期刊应有期刊名称、期号及所参考文章的名称、作者信息。

九、附录
程序清单、特殊仪器、电路图、元器件及参数等。

特别注意的是,在论文的正文中不要有程序清单,如果需要只能出现关键的程序代码,其它应放在附录中。

相关文档
最新文档