微机原理硬件实验报告范文

上传人:ca****in 文档编号:180028348 上传时间:2023-01-04 格式:DOC 页数:34 大小:1.29MB
收藏 版权申诉 举报 下载
微机原理硬件实验报告范文_第1页
第1页 / 共34页
微机原理硬件实验报告范文_第2页
第2页 / 共34页
微机原理硬件实验报告范文_第3页
第3页 / 共34页
资源描述:

《微机原理硬件实验报告范文》由会员分享,可在线阅读,更多相关《微机原理硬件实验报告范文(34页珍藏版)》请在装配图网上搜索。

1、微机原理硬件实验报告信息与通信工程学院微机原理硬件实验报告班级:2011211123姓名:高鹏 学号:2011211442序号:19 第一次:基本的 I/O 实验实验一 I/O地址译码一、 实验目的掌握I/O地址译码电路的工作原理。二、实验原理和内容 1、实验电路如图4-1-1(见硬件连接图)所示,其中74LS74为D触发器,可直接使用实验台上数字电路实验区的D触发器,74LS138为地址译码器。译码输出端Y0Y7在实验台上“I/O地址“输出端引出,每个输出端包含8个地址,Y0:280H287H,Y1:288H28FH, 当CPU执行I/O指令且地址在280H2BFH范围内,译码器选中,必有一

2、根译码线输出负脉冲。 例如:执行下面两条指令MOV DX,2A0HOUT DX,AL(或IN AL,DX) 对2A0H寻址,A5A4A3=100,Y4输出一个负脉冲 2、利用这个负脉冲控制L7闪烁发光(亮、灭、亮、灭),时间间隔通过软件延时实现。当Y4输出负脉冲,74LS74输入一个CLK信号,Q=1,当Y5输出一个负脉冲,74LS74输入一个CD信号,Q=0,这样就可以闪烁了。三、硬件接线图与软件程序流程图A、硬件连接图接线: Y4/IO地址 接 CLK/D触发器 Y5/IO地址 接 CD/D触发器 D/D触发器 接 SD/D角发器 接 +5V Q/D触发器 接 L7(LED灯)或 逻辑笔

3、B、软件流程图 程序初始化选址2A0H,点亮L7并延迟选址2A8H,熄灭L7并延迟四、程序代码及注释DATA SEGMENT DATA ENDSSTACK SEGMENT STACK STACK DB100 DUP(?)STACK ENDS CODE SEGMENT ASSUME CS:CODE ,DS:DATA, SS:STACKDELAY PROC NEAR ;延时子程序 PUSH CX PUSH BX MOV BX,250 ;25065535LP2: MOV CX,0FFFFHLP1: LOOP LP1 DEC BX JNZ LP2 POP BX POP CX RETDELAY ENDP

4、START:PUSH DSXOR AX,AXPUSH AXMOV AX,DATAMOV DS,AXMOV CX,10H ;灯闪烁的次数AGAIN:MOV DX,2A0H ;控制灯亮OUT DX,ALCALL DELAYMOV DX,2A8H ;控制灯灭OUT DX,ALCALL DELAYLOOP AGAINMOV AX,4C00HINT 21HCODE ENDS END START五、实验结果本实验实现LED闪烁的功能。核心在于通过CX不断减一实现的LOOP演示功能。六、实验总结问题出现及解决: 实验中,L7的亮灭速度过快,导致无法出现一亮一灭的效果,解决办法是修改延时子程序,调整CX、BX

5、的大小,使延时时间合理。 实验二简单并行接口(选作273)一、 实验目的掌握简单并行接口的工作原理及使用方法。二、实验内容1. 按实验连接图简单并行输出接口电路图连接线路(74LS273插通用插座,74LS32用实验台上的“或门”)。74LS273为八D触发器,8个D输入端分别接数据总线D0D7,8个Q输出端接LED显示电路L0L7。 2. 编程从键盘输入一个字符或数字,将其ASC码通过这个输出接口输出,根据8个发光二极管发光情况验证正确性。 3. 按实验连接图简单并行输入接口电路图连接电路(74LS244插通用插座,74LS32用实验台上的“或门”)。74LS244为八缓冲器,8个数据输入端

6、分别接逻辑电平开关输出K0K7,8个数据输出端分别接数据总线D0D7。 4. 用逻辑电平开关预置某个字母的ASC码,编程输入这个ASC码,并将其对应字母在屏幕上显示出来。5. 选作的74LS273输出实验,对应端口为2A8H,在此端口使用IO写语句即可输出相应数据。三、硬件接线图与软件程序流程图 A、硬件连接图B、软件流程图四、源程序及注释 DATA SEGMENTDATA ENDSSTACK SEGMENT STACK STACK DB 50 DUP(?)STACK ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACKSTART: MOV AX,D

7、ATA MOV DS,AXAGAIN: MOV AH,01H ;等待用户输入 INT 21H CMP AL,1BH ;如果是ESC键,则退出程序 JE EXIT MOV DL,AL MOV AH,02H ;不是ESC键的情况 INT 21H ;在屏幕显示输入的ASC码 MOV DX,2A8H OUT DX,AL ;输出ASCII到74LS273端口EXIT: MOV AH,4CH ;返回DOS INT 21HCODE ENDS END START五、实验结果当输入从键盘输入一个ASCII码时,屏幕显示出来,并且LED显示正确,比如输入小写字母c(63H),8个LED灯的亮灭情况是0110001

8、1(0代表灭,1代表亮),符合设计思路。六、实验总结 问题出现及解决: 试验中出现的问题是dos窗口能正常显示输入的ASCII码,但是LED灯没有反应,检查程序之后发现是74LS273的地址写成2A0H了,改成2A8H之后实验结果便正确了。 心得体会:这是微原硬件实验的第一次,与前面刚刚完成了微原软件实验相比,微原硬件实验有一定的差别,主要体现在硬件需要去读取硬件状态,然后采取相应的控制方案,另外要向接口输出数据和控制信息,驱动硬件正常工作。软硬相互结合。能够更好地理解书本上的知识,运用的实际中。第二次:可编程并行接口 8255 实验实验三 可编程并行接口8255一、实验目的通过实验,掌握82

9、55工作于方式0以及设置A口为输出口,C口为输入口的方法。 二、 实验原理和内容A. 8255的工作方式 一片8255内部有3个端口,A口可以工作在方式0、方式1或方式2,B口可以工作在方式0、方式1,C口可以工作在方式0。 方式0是基本型输入/输出。这种方式和外设交换数据时,8255端口与外设之间不使用联络线。 方式1为选通型输入/输出。用这种方式和外界交换数据时,端口和外设之间要有联络信号。 方式2是双向数据传送,仅A口有这项功能。当A口工作在方式2时,B口仍可以工作在方式0或方式1,但此时B口方式1只能用查询方式与CPU交换信息。 B. 工作方式选择字 8255工作方式选择字共8位(如图

10、),存放在8255控制寄存器中。最高位D7为标志位,D7=1表示控制寄存器中存放的是工作方式选择字,D7=0表示控制寄存器中存放的是C口置位/复位控制字。 C. C口置/复位控制字 8255的C口可进行位操作,即:可对8255C口的每一位进行置位或清零操作,该操作是通过设置C口置/复位字实现的(图8-10)。C口置/复位字共8位,各位含义如下: D. 8255A的控制信号与传输动作的对应关系 A1A0/RD/WR/CS工作状态00010A口数据数据总线01010B口数据数据总线10010C口数据数据总线00100数据总线A口数据01100数据总线B口数据10100数据总线C口数据11100数据

11、总线控制寄存器XXXX1数据总线三态11010非法状态XX110数据总线三态命令字与初始化编程:8255有两个命令字,即方式选择控制字和C口置0/置1控制字,初始化编程的步骤是: 向8255控制寄存器写入“方式选择控制字”,从而预置端口的工作方式。当端口预置为方式1或方式2时,再向控制寄存器写入“C口置0/置1控制字”。这一操作的主要目的是使相应端口的中断允许触发器置0,从而禁止中断,或者使相应端口的中断允许触发器置1,从而允许端口提出中断请求。 向8255数据寄存器写入“数据”或从8255数据寄存器读出“数据”。E. 实验步骤:1、实验电路如图4-3-1,8255C口接逻辑电平开关K0K7,

12、A口接LED显示电路L0L7,C口接逻辑电平开关K0K7。 2、编程从8255C口输入数据,再从A口输出。 三、 硬件接线图与软件程序流程图 A、硬件连接图B、软件流程图四、源程序及注释DATA SEGMENTPORTA EQU 280HPORTB EQU 281HPORTC EQU 282HPORTCON EQU 283HDATA ENDSSTACK SEGMENT STACK STACK DB 100 DUP(?)STACK ENDSCODESEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART:MOV AX,DATA MOV DS,AX MOV DX, P

13、ORTCON ;8255初始化MOV AL,90HOUT DX,ALLOOP1:MOV DX, PORTA ;PORTA输入,PORTB输出IN AL,DXMOV DX, PORTBOUT DX,ALJMPLOOP1 MOV AH,0BH ;当键盘有输入时,退出程序 MOV AL,00H ;默认无键盘输入 INT21H AND AL,AL ;有键盘输入,Al != 0,退出程序 JNZ EXIT JMP LOOP1EXIT: MOV AH,4CH INT 21HCODEENDSEND START五、 实验结果拨动逻辑电平开关Kx,对应的LED灯Lx有亮灭显示,说明输入从A口读入,并且从B口输出

14、,结果正确。程序运行过程中如果有键按下,就退出程序。六、 实验总结 这个实验主体并没有遇到什么问题,只要理解了从A、B、C任意输入输出时初始化应做相应变化,不论怎么修改接线,都能实现上述功能。但是按键退出程序的设计遇到了困难,查询资料后,发现0BH dos功能调用号可以实现检测按键功能,按照程序中编写的样子,便实现了按键退出功能。实验四 七段数码管(必做)一、 实验目的 1、掌握数码管显示数字的原理二、 实验原理及内容 1、 静态显示:按实验图连接好电路,将8255的A口PA0PA7分别与七段数码管的段码驱动输入端adp相连,位码驱动输入端S0、S1 、S2、S3接PC0、PC1、PC2、PC

15、3,编程在数码管显示自己的学号的后四位。(或编程在数码管上循环显示“00-99”, 位码驱动输入端S0、S1 接PC0、PC1;S2、S3接地。)实现的功能是PA口驱动数码管,控制数码管里面的LED关亮灭;PC口驱动位码,控制数码管亮灭2、 数码管码型对应表实验台上的七段数码管为共阴型,段码采用同相驱动,输入端加高电平,选中的数码管亮,位码加反相驱动器,位码输入端高电平选中。显示字形gefdcba段码001111113fh1000011006h210110115bh310011114fh4110011066h511011016dh611111017dh7000011107h811111117f

16、h911011116fhPA口低7位连接到数码管a到g位。(还可用最高位控制小数点dp)三、 硬件接线图与软件程序流程图 A、硬件连接图B、软件流程图四、 源程序及注释 实验四DATA SEGMENT CODESHAPE DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH ;段码值端口地址YO为280H287H,更改连线可以在此更改位码、段码的端口。 PORTA EQU 280H PORTB EQU 281H PORTC EQU 282H PORTCON EQU 283HDATA ENDSSTACK SEGMENT STACK DB 100 DUP(?)STA

17、CK ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACKSTART: MOV AX,DATA MOV DS,AX LEA BX,CODESHAPE ;设置BX为码型数据开头偏移量INITIALIZTION: MOV AL,10000000B ;初始化控制字,A口输入,C口输出,方式0 MOV DX,PORTCON OUT DX,ALMAINBODY: ;每次PC口选址一位为1,PA为数码管位码,表示一个数码管亮一个数字 ;显示学号后四位,1442 MOV AL,08H MOV DX,PORTC;c口 OUT DX,AL MOV AL,BX+1 MO

18、V DX,PORTA;A口 OUT DX,AL CALL DELAY ;显示1 MOV DX,PORTA MOV AL,00H OUT DX,AL MOV AL,04H MOV DX,PORTC OUT DX,AL MOV AL,BX+4 MOV DX,PORTA OUT DX,AL CALL DELAY ;显示4 MOV DX,PORTA MOV AL,00H OUT DX,AL MOV AL,02H MOV DX,PORTC OUT DX,AL MOV AL,BX+4 MOV DX,PORTA OUT DX,AL CALL DELAY ;显示4 MOV DX,PORTA MOV AL,00

19、H OUT DX,AL MOV AL,01H MOV DX,PORTC OUT DX,AL MOV AL,BX+2 MOV DX,PORTA OUT DX,AL CALL DELAY ;显示2 MOV DX,PORTA MOV AL,00H OUT DX,AL MOV AH,0BH ;用户按键盘及退出 MOV AL,00H ;默认无键盘输入 INT 21H AND AL,AL JNZ EXIT JMP MAINBODYEXIT: MOV AH,4CH INT 21H;延迟子程序DELAY PROC NEAR PUSH CX MOV CX,0200HOUTLOOP: NOP LOOP OUTLO

20、OP POP CX RETDELAY ENDPCODE ENDSEND START五、 实验结果LED数码管上面四位依次显示1442,表示学号的最后四位,结果正确。 六、 实验总结问题出现及解决:实验中一位数码管能够显示数值,但是四位一起显示就开始出现混乱,基本显示都是8,问题是因为数码管换位显示的时候,延迟过小,导致一位的显示其实是多位叠加的结果,就是8了。解决办法是调一个适当的延迟,这样既不会重叠,也不会延迟过长而导致四位不是同时亮。 心得与体会: 本次实验中,我们使用8255A并行接口芯片和数码管实现了一个数码管显示字符的程序。为了实现同时显示不同字符,就要通过扫描(依次点亮数码管)的方

21、式来实现,这就要给CAT信号依次赋值,并且在扫描的过程中要用到延时。第三次:可编程定时器/计数器(8253)实验实验八 可编程定时器计数器(8253/8254)一、 实验目的 1、学习掌握8253用作定时器的编程原理;二、 实验原理及内容 实验内容(包括基本和扩展部分)1 完成一个音乐发生器,通过喇叭或蜂鸣器放出音乐,并在数码管上显示乐谱。2音符1(do)2(re)3(mi)4(fa)5(so)6(la)7(si)i(do)频率(Hz)256288320341384426 .64805122扩展部分:利用小键盘实现弹琴功能,并显示弹奏的乐谱。 3 注意:8253输入频率应小于2MHz。4 利用

22、小键盘实现弹琴功能,并显示弹奏的乐谱。8254原理18254初始化 使用8254前,要进行初始化编程。初始化编程的步骤是: 向控制寄存器端口写入控制字对使用的计数器规定其使用方式等。 向使用的计数器端口写入计数初值。 28254控制字 D7 D6 D5 D4 D3 D2 D1 D0计数器选择读写方式选择工作方式选择数制选择 D7D600:使用0号计数器,D7D601:使用1号计数器D7D610:使用2号计数器,D7D611:无效D5D400:锁存当前计数值D5D401:只写低8位(高8位为0),读出时只读低8位D5D410:只写高8位(低8位为0),读出时只读高8位D5D411:先读/写低8位

23、,后读/写高8位计数值D3D2D1000:选择方式0,D3D2D1001:选择方式1D3D2D1X10:选择方式2,D3D2D1X11:选择方式3D3D2D1100:选择方式4,D3D2D1101:选择方式5D00:计数初值为二进制,D01:计数初值为BCD码数三、硬件接线图与软件程序流程图 A、硬件连接图B、软件流程图1)播放乐曲2) 扩展部分:弹奏乐曲四、源程序及注释 自动循环播放音乐DATA SEGMENTNOTE DW 0001H,3906,3472,3125,2932,2604,2344,2083,1953;频率TABLE DB 3FH,06H,5BH,4FH,66H,6DH,7DH

24、,07H,7FH,6FH;数码管MUSIC DB 3,3,2,3,5,6,5,8,6,5,5,3,3,5,5,5,6,0,8,8,2,2,3,3,2,1,6,1,5,5,0,5,DB 5,3,3,5,5,6,8,8,2,2,3,3,1,1,6,6,5,5,5,0,5,5,2,2,3,5,3,2,1,6,6,1,1;存放的乐符DATA ENDSSTACK SEGMENT STACK STACK DB 100 DUP(?)STACK ENDSCODESEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK;延时子程序DELAY PROC NEAR PUSH CX MOV CX

25、,0FFFFH WAIT1: LOOP WAIT1 POP CX RETDELAY ENDP;主程序START: MOV AX,DATA对使用的计数器规定其使用方式在这里使用计数器2 MOV DS,AX;8254初始化 MOV DX,283H MOV AL,B6H OUT DX,AL;8255初始化 MOVDX,28BH MOV AL,80H OUT DX,AL MOV DX,28AH MOVAL,01H OUT DX,AL MOV CX,01H;播放音乐SPEAK: PUSH CX;保护现场;读取乐符 MOV BX,OFFSET MUSIC ADD BX,CX MOV AL,BX MOV C

26、L,AL MOV CH,0H ;数码管显示 MOV BX,OFFSET TABLE ADD BX,CX MOV AL,BX MOV DX,288H OUT DX,AL ;播放该乐符 MOV BX,OFFSET NOTE MOV AX,CX ADD AX,AX ADD BX,AX MOV AX,BX MOV DX,282H OUT DX,AL MOV AL,AH OUT DX,AL POP CX ;延时,持续播放 MOV AX,90H LOOP1: CALL DELAY DEC AX JNZ LOOP1 ;判读继续播放还是重新播放 INC CX CMP CX,41H JNZ JUM MOV CX

27、,01H JUM: JMP SPEAK扩展部分-弹奏音乐:SHOW PROC NEAR PUSH CX;保护现场 PUSH AX MOV CX,5AH;一次扫描各个数码管,使四个数码管同时显示LOOP1: MOV DX,289H ;第一个数码管显示 MOV AL,01H OUT DX,AL MOV BX,OFFSET TABLE ADD BX,NUM1 MOV AL,BX MOV DX,288H OUT DX,AL;第二个数码管显示 MOV DX,289H MOV AL,02H OUT DX,AL MOV BX,OFFSET TABLE ADD BX,NUM2 MOV AL,BX MOV DX

28、,288H OUT DX,AL; 第三个数码管显示 MOV DX,289H MOV AL,04H OUT DX,AL MOV BX,OFFSET TABLE ADD BX,NUM3 MOV AL,BX MOV DX,288H OUT DX,AL;第四个数码管显示 MOV DX,289H MOV AL,08H OUT DX,AL MOV BX,OFFSET TABLE ADD BX,NUM3 MOV AL,BX MOV DX,288H OUT DX,AL;调整循环参数 DEC CX JNZ LOOP1 POP AX POP CX RET SHOW ENDP主程序调整: 在语句POP CX 之前增

29、加 MOV AX,NUM3 MOV NUM4,AX MOV AX,NUM2 MOV NUM3,AX MOV AX,NUM1 MOV NUM2,AX MOV NUM1,CX CALL SHOW替换到原先的延时部分。五、实验结果可以实现循环播放所存储音乐选段,数码管显示相应播放的音符六、 思考题写出8253计数初值、输入频率和输出频率的关系。答:输出频率 = 输入频率 / 8253计数初值七、实验总结 遇到问题及解决: 在上机实验的时候发现,系统提供的时钟是1MHz,这样,要得到计数器初值,就得用32位的除法,8086CPU本身不支持这样的计算,所以只能自己写代码实现,得到的初值能用16bit表示

30、,可以设置为8253的初值。但是这样会比较麻烦,因为有限个音符,可以先计算好写入数组。收获与心得体会:过这次实验,我们学习了8253计数器的使用方法。我们最先了解到的是8253的初始化,包括对于计数器的选择,计数初值的输入方式,计数初值的格式,基础器工作方式等等一些内容的设置。之后通过加深对各种工作方式的理解,确定下来可以使用方式2或方式3来进行计数器的输出。因为在这两个方式下8253 可以充当分频器。而在本实验中我选用了方式3,原因是方式2并非输出方波波形。根据讲义上给出的各个音符的频率,以及8253计数器的输入频率,并通过公式:(输出频率 = 输入频率 / 8253计数初值) ,我计算得到

31、各个音阶对应的计数初值。有了以上的准备,就可以进行实际的编程了。对于乐曲的播放,选用的是逐个发出相应乐音并显示相应乐符的方法。第四次:串行通讯接口 8251 实验实验十六 串行通讯8251一、实验目的 1、了解串行通讯的基本原理。 2、掌握串行接口芯片8251的工作原理和编程方法。 二、实验原理和内容 1、按图4-16-1连接好电路,(8251插通用插座)其中8254计数器用于产生8251的发送和接收时钟,TXD和RXD连在一起。 2、编程: 从键盘输入一个字符,将其ASCII码加 1 后发送出去,再接收回来在屏幕上显示,(或将内存制定区域内存放的一批数据通过8251A的TXD发送出去,然后从

32、RXD接收回来,并在屏幕上或数码管上显示出来。)实现自发自收。 三、硬件接线图与软件程序流程图图1:8251A的实验电路图图2:程序流程图四、 源程序 DATA SEGMENT VAR DB ? DATA ENDSSTACK SEGMENT STACK STACK DB 100 DUP(0)STACK ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK DISP MACRO ;显示一个字符 PUSH AX PUSH DX MOV DL,AL ADD DL,1 MOV AH,02H ;DOS调用,显示单个字符 INT 21H MOV DL,0DH M

33、OV AH,02H ;DOS调用,显示单个字符 INT 21H MOV DL,0AH MOV AH,02H ;DOS调用,显示单个字符 INT 21H POP DX POP AXENDMDELAY MACRO TIME ;延时 LOCAL LOP1 PUSH CX MOV BX,TIMELOP1: MOV CX,00H LOOP $ DEC BX JNZ LOP1 POP CX ENDM MAIN PROC FAR MOV AX,DATA MOV DS,AX MOV ES,AX ;初始化8251A MOV DX,2B9H ;控制口 MOV AL,40H ;内部复位 OUT DX,AL DELA

34、Y 000FH ;等待8251响应 MOV AL,5EH ;01011110B异步方式,一个停止位,低8位数据 ;奇校验,有检验位,波特率因子为16 OUT DX,AL DELAY 000FH MOV AL,37H ;命令控制字00110111 OUT DX,AL DELAY 000FH ;初始化8253 MOV DX,283H ;控制口 MOV AL,16H ;用计数器0 OUT DX,AL DELAY 000FH MOV AL,07H ;获取字符 MOV DX,280H ;计数器0 OUT DX,AL DELAY 000FH ;发送信息AGN: DELAY 000FH MOV DX,2B9

35、H ;状态端口 2B9 IN AL,DX TEST AL,38H ;检查是否出错 JNZ ERROR ;出错 TEST AL,02H ;检查是否收到新数据 JNZ RECE ;转接收 TEST AL,01H ;检查是否可以发送字符 JZ AGN MOV AH,01H INT 21H MOV VAR,AL CMP VAR,27 ;判断是否为ESC JE ERROR ;若是,则退出 MOV DX,2B8H ;数据端口 OUT DX,AL ;发送字符 JMP AGNRECE:MOV DX,2B8H IN AL,DX DELAY 000FH DISP JMP AGNERROR:MOV AH,4CH I

36、NT 21H MAIN ENDP CODE ENDSEND MAIN五、 实验结果在键盘上输入字符送至8251,8251实现自发自收,对收到的信号的ASCII码加一,并将计算的结果显示到屏幕上。六、 实验总结实验中主要遇到了下面两个问题:1、部分传输正确,部分传输不正确。主要原因是课本的程序是错误的,读状态字应该从控制端口读取,而不是从数据端口读取。错误主要是由于地址写的不正确。2、双向通信时,数据总是传不过去,或者出错。主要原因是两个8251A之间的连接线太长,由于硬件电路所限连接线不能超过实验中的两根线。如果超过了,电路无法检测到高电平。3、有时一开始运行,会出错。原因是时钟太快,可以编写

37、延时程序,在8251A初始化时插入延时,解决这个问题。七、 实验收获与心得体会实验中主要是在发现课本错误中花费了大量时间,做实验应该有质疑精神,用与挑战权威,以实验的具体情况为准则判断正确。应该从合理行分析这样设计是否可行。实验连接电路很重要,实验前一定要先检查电路是否完好。否则,即使你程序编写正确也无法运行,而且很难找到错误。事先可以使用演示实验测试一下电路是否正确,在测试自己的程序是否正确,这样可以节省时间提高效率。8251A作为串行通信接口,时序是非常重要的,输入输出之间的时间差必须控制得合适,否则就不能正常收发,这可以通过软件编程实现,当时序不符合时,可插入等待时间,即软件延时。通过这

38、次实验对于8251的工作原理有了比较清楚的认识。同时也加深了对于串并转换的实现和其作用的理解。八、思考题在实验中,你如何确定 RXC、TXC 的值,写出计算公式。答:RXC = TXC = 8253输入时钟频率 = 8251的波特率 8251的波特因子心得体会 在做微机原理硬件实验之前,已经接触过单片机,对CPU控制硬件已经有了一些了解,所以做实验之前还是挺有信心的。不过8086芯片内部仅仅是单纯的CPU,不像上面单片机集成了很多模块,如定时器,PWM发生器,中断控制器等等。因此,8086需要在外部连接很多芯片,利用IO端口输出相应控制字,命令字和数据来控制这些芯片模块的工作,这对我来说是比较崭新的内容吧。正是因为这样,用纯粹的CPU指令来控制模块的工作,恰恰能让我感受到微机原理的精髓。没有使用已经封装好的寄存器名称和库函数,只是通过对Memory和IO的读写来实现各种硬件控制,这需要我去好好了解每一个模块工作的原理,然后来对其进行设置,这算是硬件实验对我最大的帮助吧! 另外,在调试程序中,遇到问题时候,我总是会把代码拷出来,只把觉得有问题的部分保留在程序中,仅仅调试这一段程序,看看哪里出问题了,把所有的代码段调试完成之后在整合到一起,这样很快就能出结果了。 总的来说,这次硬件实验让我对微机原理有了更加深入的认识,从知道怎么做到为什么这样做,感觉自己获得了长足的进步!第33页

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!