微原硬件实验报告Word下载.docx

上传人:b****5 文档编号:19392331 上传时间:2023-01-05 格式:DOCX 页数:33 大小:672.29KB
下载 相关 举报
微原硬件实验报告Word下载.docx_第1页
第1页 / 共33页
微原硬件实验报告Word下载.docx_第2页
第2页 / 共33页
微原硬件实验报告Word下载.docx_第3页
第3页 / 共33页
微原硬件实验报告Word下载.docx_第4页
第4页 / 共33页
微原硬件实验报告Word下载.docx_第5页
第5页 / 共33页
点击查看更多>>
下载资源
资源描述

微原硬件实验报告Word下载.docx

《微原硬件实验报告Word下载.docx》由会员分享,可在线阅读,更多相关《微原硬件实验报告Word下载.docx(33页珍藏版)》请在冰豆网上搜索。

微原硬件实验报告Word下载.docx

WAIT1:

PUSHCX;

双重循环防止时延过短

MOVCX,000FH

WAIT2:

LOOPWAIT2

POPCX

LOOPWAIT1

RET

DELAYENDP

START:

MOVAX,DATA;

数据段初始化

MOVDS,AX

MOVBL,0FEH;

设置

LOOP1:

MOVCH,0FCH

MOVDX,0EEE0H;

接收控制数据

INAL,DX

ANDCH,AL

RORCH,1

MOVCL,AL

ANDAL,02H

JNZOUT1;

判断是否开启

ANDCL,01H;

判断是否左移

JZL

RORBL,1;

数据右移

JMPN

L:

ROLBL,1

N:

MOVAL,BL;

数据输出,灯亮

OUTDX,AL

MOVAH,0BH

INT21H

D:

CALLDELAY

DECCH;

控制时延时间

JNZD

JMPLOOP1

OUT1:

MOVAX,4C00H

CODEENDS

ENDSTART

五、思考题

通过实验说明用debug中的a命令录入实验中给出的小程序中,有些语句可以不写出“h”字符的原因。

答:

对于立即数默认是16位进制,所以可以不写出”h”

六、实验总结

本次实验,我初步接触了微机原理硬件实验的实验环境,学会了在DOS环境下使用Debug编写和调试程序,以及通过Debug的I、O命令来读写IO端口。

同时,开始学习用硬件的思想编写程序,在编程时体会到了芯片工作的基本原理,通过实验直观地认识到了程序对硬件的控制。

跑马灯程序是第一次软件对硬件的控制实验,我在控制设计方面考虑了速度、方向、暂停、按键控制退出等功能,并加以实现,验收通过。

跑马灯的程序控制的关键在于读取拨码开关的状态,然后对相应的控制位进行判断,然后更加判断结果对速度、方向等进行置位,并在检测到有暂停时反复循环读取状态进行判断,直到暂停键取消,同时,任何时候判断到关闭程序的按键,则立即退出程序。

整个程序实际上是在一种检测、执行、再检测、再执行的循环中反复。

实验二8255A并行接口应用

一、实验目的

1.掌握8255A的功能及方式0、1的实现

2.熟悉8255A与CPU的接口,以及传输数据的工作原理及编程方法。

3.了解七段数码管显示数字的原理。

4.掌握同时显示多位数字的技术。

二、实验内容

(一)在方式0(输入/输出)下,以A口为输出口,B口为输出口,A口接六个共阴极数码管的八位段码,高电平点亮数码管的某一段,B口接数码管的位选(即要使哪个数码管亮),高电平选中某一位数码管点亮。

8255A中A端口地址EE00H

B端口地址EE01H

C端口地址EE02H

控制地址EE03H

八段数码管的显示规律及数码管的位选规律自己查找,可用实验一中,学过的I、O命令来做。

(二)6位数码管静态显示

在数码管电路上静态地显示6位学号,当主机键盘按下任意键时,停止显示,返回DOS。

(三)6位数码管动态显示

要求在数码管电路1-6位数码管上按图3.2所示的规律,动态显示字符串HELLO,当主机键盘按下任意键时结束。

图3.2字符串动态显示示意图

三、实验过程

1、八段数码管位选规律

在方式0(输入/输出)下,以A口为输出口,B口为输出口,A口接六个共阴极数码管的八位段码,高电平点亮数码管的某一段,B口接数码管的位选(即要使哪个数码管亮),高电平选中某一位数码管点亮。

测试结果如下图所示。

由此,容易得出数字0~9以及字母A~H的编码,如下表所示。

字形

1

2

3

4

5

6

7

编码

0EDH

21H

0F4H

0F1H

39H

0D9H

0DDH

61H

8

9

A

B

C

D

E

F

0FDH

0F9H

7DH

9DH

0CCH

0B5H

0DCH

5CH

2、六位数码管静态显示

程序流程图:

N

Y

程序源代码及注释:

DATESEGMENT;

静态显示

TABLEDB0F4H,0EDH,0EDH,0F9H,0EDH,61H;

存放一组学号“2,0,0,9,0,7”

DATEENDS

;

堆栈段定义

DB1000DUP(?

CODESEGMENT

DATE,SS:

MOVAX,DATE

MOVDS,AX

MOVAL,80H;

8255A控制口置80,即采用方式0,A口、B口输出

MOVDX,0EE03H

MOVDX,0EEE0H;

接收数据并判断是否结束显示

ANDAL,01H

JZ_OUT

MOVAL,01H;

点亮第一个数码管并显示对应字

MOVDX,0EE01H

MOVAL,TABLE

MOVDX,0EE00H

MOVAL,02H;

点亮第二个数码管并显示对应字

MOVAL,TABLE+1

MOVAL,04H;

点亮第三个数码管并显示对应字

MOVAL,TABLE+2

MOVAL,08H;

点亮第四个数码管并显示对应字

MOVAL,TABLE+3

MOVAL,10H;

点亮第五个数码管并显示对应字

MOVAL,TABLE+4

MOVAL,20H;

点亮第六个数码管并显示对应字

MOVAL,TABLE+5

LOOPLOOP1

DELAYPROCNEAR;

产生1ms延时

_WAIT:

LOOP_WAIT

_OUT:

3、六位数码管动态显示

程序源代码及注释

DATESEGMENT;

动态显示

MESGDB0,0,0,0,0,0,3DH,0DCH,8CH,8CH,0EDH,0;

数据信息HELLO和空

POINTDWMESG

_POINTDWMESG

堆栈段

MOVAL,80H;

MOVDX,0EEC3H

MOVCX,7

LOOP2:

MOVBX,POINT;

传入数据地址

MOVCX,500

接收控制数据,判断是否结束

CALLSHOW1;

依次进行六个数码管显示

CALLSHOW2

CALLSHOW3

CALLSHOW4

CALLSHOW5

CALLSHOW6

CMPCX,1

JNZ_MOV

MOVCX,8

MOVBX,_POINT

MOVPOINT,BX

JMPNEXT

_MOV:

INCPOINT

NEXT:

LOOPLOOP2

DELAYPROCNEAR;

时延函数

LOOP_WAIT

SHOW1PROCNEAR;

第一个数码管显示

PUSHAX

PUSHDX

选择当前数码管

MOVDX,0EEC1H

MOVAL,[BX];

当前数显

MOVDX,0EEC0H

POPAX

POPDX

SHOW1ENDP

SHOW2PROCNEAR;

第二个数码管显示

MOVAL,02H

MOVAL,[BX]+1

SHOW2ENDP

SHOW3PROCNEAR;

第三个数码管显示

MOVAL,04H

MOVAL,[BX]+2

SHOW3ENDP

SHOW4PROCNEAR;

第四个数码管显示

MOVAL,08H

MOVAL,[BX]+3

SHOW4ENDP

SHOW5PROCNEAR;

第五个数码管显示

MOVAL,10H

MOVAL,[BX]+4

SHOW5ENDP

SHOW6PROCNEAR;

第六个数码管显示

MOVAL,20H

MOVAL,[BX]+5

SHOW6ENDP

五、实验结果讨论

实验中调整了数码管的显示顺序及延迟,经过多次尝试,得到结论是在扫描显示过程中,延时1ms是最佳选择

本次实验,是第一次通过芯片来实现实验期望,通过这次实验,我进一步掌握了DOS环境下对程序的编写和调试,熟悉了8255A与CPU的接口,以及传输数据的工作原理及8255A的控制编程方法。

刚开始仅完成并验收了静态显示功能,随后在这个基础上进一步研究,最终完成了动态显示部分。

在实现静态显示的过程中基本没有遇到什么障碍和困难,但是动态显示中就遭遇到了一些问题的挑战,开始认为动态就是在静态上加上循环控制即可,但是实际工作后发现:

随着循环次数的增加,显示字开始出现严重失真,即数码管点亮发生错误,后重新改写程序,将数码管显示打包成各个小型子程序,从而解决问题。

实验中的实验板是老师连接好了电路板和接口芯片,这样可以简化实验过程,也使得大家的硬件平台一致。

但这样存在的问题是,我们对芯片的地址和连线失去了动手实践的机会,而这个恰恰是我的一大弱点,硬件接触过少,不熟悉,而软件相对掌握熟练。

建议给学生更多的空间去自己布线,更加熟悉硬件和接口。

实验三8253计数器/定时器的应用

一、实验目的:

学习掌握8253用作定时器的编程原理

1.完成一个音乐发生器,通过蜂鸣器放出音乐,并在数码管上显示乐谱。

音符频率对照表:

音符

1(do)

2(re)

3(mi)

4(fa)

5(so)

6(la)

7(si)

i(do)

频率(Hz)

256

288

320

341

384

426.6

480

512

主程序流程图

发声子程序流程图

DATASEGMENT;

乐谱发声

TIMEQU0FFH

BUFFDB3,3,4,5,5,4,3,2,1,1,2,3,3,2,2,3,3,4,5,5,4,3,2,1,1,2,3,2,1,1,5,4,3,3,4,3,2,1,3,4,3,2,1,17,1,2,5,15,3,3,3,4,5,5,4,3,4,2,1,1,2,3;

乐谱

COUNTEQU$-BUFF

DB100DUP(?

ASSUMEDS:

STACK,CS:

CODE

MOVAX,DATA

MOVCX,COUNT;

记录乐谱长度

MOVBX,OFFSETBUFF;

传入乐谱数据

MOVAL,80H;

8255A初始化

MOVDX,0EE03H

MOVAL,16H;

8253初始化

MOVDX,0EE23H

MOVAL,01H

MOVDX,0EE01H;

8255A传入初始数据

MOVAL,00H

MUSIC:

MOVAL,[BX]

CMPAL,0;

判断音符

JZiiDELAY

CMPAL,1

JZiiDO

CMPAL,2

JZiiRE

CMPAL,3

JZiiMI

CMPAL,4

JZiiFA

CMPAL,5

JZiiSO

CMPAL,6

JZiiLA

CMPAL,7

JZiiSI

CMPAL,16

JZiiLAL

CMPAL,15

JZiiSOL

CMPAL,17

JZiiSIL

iiDELAY:

CALLFARPTRDELAY;

调用延时

JMPiiUP

iiDO:

CALLFARPTRiDO;

调用发声程序

iiRE:

CALLFARPTRiRE

iiMI:

CALLFARPTRiMI

iiFA:

CALLFARPTRiFA

iiSO:

CALLFARPTRiSO

iiLA:

CALLFARPTRiLA

iiSI:

CALLFARPTRiSI

iiLAL:

CALLFARPTRiLAL

iiSOL:

CALLFARPTRiSOL

iiSIL:

CALLFARPTRiSIL

iiUP:

INCBX

DECCX

JZRETD

JMPMUSIC

MOVAH,0BH

INT21H

ORAL,AL

JNZRETD

RETD:

MOVAL,16H;

8253送控制字,结束发声

MOVDX,0EE23H

MOVAX,4C00H

DELAYPROCFAR;

延时函数

PUSHBX

MOVCX,TIM

L1:

MOVBX,9FFFH

L2:

DECBX

JNZL2

DECAX

JNZL1

POPBX

iSOLPROCFAR;

低So音发声

MOVDX,0EE20H;

送8253分频数值

MOVAL,0A6H;

53H

MOVAL,0D9H;

送数码管显示子

MOVDX,0EE00H

CALLFARPTRDELAY

iSOLENDP

iLALPROCFAR;

低La音发声

MOVDX,0EE20H

MOVAL,96H;

4BH

MOVAL,0DDH

iLALENDP

iSILPROCFAR;

低Si音发声

MOVAL,86H;

43H

MOVAL,61H

iSILENDP

iDOPROCFAR;

Do音发声

MOVAL,7DH

MOVAL,21H

CALLFARPTRDELAY

iDOENDP

iREPROCFAR;

Re音发声

MOVAL,6FH

OUTDX,AL

MOVAL,0F4H

iREENDP

iMIPROCFAR;

Mi音发声

MOVAL,64H

MOVAL,0F1H

iMIENDP

iFAPROCFAR;

Fa音发声

MOVAL,5DH

MOVAL,39H

iFAENDP

iSOPROCFAR;

So音发声

MOVAL,53H

MOVAL,0D9H

iSOENDP

iLAPROCFAR;

La音发声

MOVAL,4BH

iLAENDP

iSIPROCFAR;

Si音发声

MOVAL,43H

iSIENDP

ENDSTART

五、实验电路连接图

六、问题及解决

实验中遇到的首要问题是乐

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1