ImageVerifierCode 换一换
格式:DOCX , 页数:35 ,大小:166.07KB ,
资源ID:22544609      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/22544609.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(微机原理实验1Word文件下载.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

微机原理实验1Word文件下载.docx

1、减法运算显示结果 MOV DL,0DH MOV AH,02H MOV DL,0AH MOV AX,4C00HDISPL PROC NEAR ;显示子功能DSI: MOV AH,02 MOV DL,SI+BX-1 ;显示字符串中一字符 DEC BX ;修改偏移量 JNZ DSI RETDISPL ENDPSUBA PROC NEAR MOV DX,SI MOV BP,DISU1: SUB BYTE PTRSI+BX-1,30H SUB BYTE PTRDI+BX-1,30H将ASCII 码表示的数字串 JNZ SU1 ;转化为十六进制的数字串 MOV SI,DX MOV DI,BP MOV CX

2、,05 ;包括进位,共5位 CLC ;清进单位SU2: MOV AL,SI MOV BL,DI SBB AL,BL ;带进位相减 AAS ;非组合BCD码的减法调整 MOV SI,AL ;结果送被减数区 INC SI INC DI ;指向下一位 LOOP SU2 ;循环SU3: ADD BYTE PTR SI+BX-1,30H ADD BYTE PTR DI+BX-1,30H十六进制的数字串转化ASCII码表示的数字串 JNZ SU3 RET SUBA ENDPCODE ENDS END START实验二 两个数相乘的实验一 实验要求实现十进制数的乘法,被乘数和乘数均以ASCII码形式存放在内

3、存中,算式结果在屏幕上显示出来。二 实验目的掌握乘法指令和循环指令的用法。DATA1 DB 32H,39H,30H,35H,34HDATA2 DB 34H*RESULT DB 6 DUP (00H)STACK SEGMENTSTA DB 20 DUP (? MOV SS,AX MOV SP,TOP LEA SI,DATA1 MOV BX,05H L1: MOV DL,SI+BX-1 DEC BX JNZ L1 LEA SI,DATA2 MOV DL,SI MOV SI,OFFSET DATA2 ;显示算式 MOV BL,SI ;乘数DATA2BL AND BL,00001111B ;屏蔽高4位

4、,ASCII码转化为十六进制数 MOV DI,OFFSET RESULT MOV CX,05LOOP1: AND AL,00001111B ;取被乘数DATA1,ASCII变十六进制数 INC SI ;指向被乘数1的下一字符单元 MUL BL ;相乘 AAM ;AAM调整 ADD AL,DI ;结果低位与前次计算的进位相加 AAA ;AAA调整 MOV DI,AL结果送存到下一单元 MOV DI,AH LOOP LOOP1 ;计算结果高位进位送存 MOV CX,06 MOV SI,DI DISPL: ADD DL,30H DEC SI LOOP DISPL ; MOV AX,4C00H INT

5、 21H ;结束CODE ENDS实验三 BCD码相乘的实验实现BCD码的乘法,要求被乘数和乘数以组合的BCD码形式存放,各占一个内存单元,乘积存入在另外两个内存单元中,由于没有组合的BCD码乘法指令,程序中采用将乘数1作为计算器,累加另一个乘数的方法得到计算结果。掌握用组合的BCD码表示数据,并熟悉怎样实现组合BCD码乘法运算。FIRST DB 99HSECOND DB 25HTHIRD DB 2 DUP(?STACK SEGMENT PARA STACK STACKSTAPN DB 100 DUP(?TOP EQU LENGTH STAPNSTACK MOV BL,FIRST ;被乘数送B

6、L MOV CL,SECOND ;乘数送CL MOV DX,0 ;部分积清0 MOV AL,BLAGAIN: OR AL,AL JZ DONE ;被乘数减到0则转结果显示 MOV AL,DL ADD AL,CL DAA ;乘数于部分积低位相加后调整 MOV DL,AL MOV AL,DH ADC AL,0往部分积高位送进位后调整 MOV DH,AL DEC AL DAS ;组合BCD码减法调整 MOV BL,AL JMP AGAINDONE: LEA BX,THIRD MOV BX,DX LEA SI,FIRST CALL DIS XOR AX,AX LEA DX,MES1 ;* LEA SI

7、,SECOND LEA DX,MES2 ;= LEA SI,THIRD MOV AX,4C00H ;返回DOSDIS PROC NEAR ;显示子程序 MOV CL,04H SHR AL,CL ADD AL,30H AND AL,0FH DIS ENDP END START实验一 双色灯实验一、实验要求编写程序,以8255为输出口,控制四个双色灯按要求发光。1学习单板方式下扩展简单I/O接口的方法以双色灯的使用。2进一步学习微处理器的编程技术。三、实验电路连线8255的CS片选接至适配板上138译码处的200H207H插孔。四、实验说明1、 因为本实验是模拟交通灯控制实验,所以要先了解实际交通

8、灯的变化规律。假设一个十字路口为东西南北走向。初始状态0为东西红灯,南北红灯。然后转状态1南北绿灯通车,东西红灯。过一段时间转状态2,南北绿灯闪几次转亮黄灯,延时几秒,东西仍然红灯。再转状态,东西绿灯通车,南北灯灯。过一段时间转状态4,东西绿灯闪几次转亮黄灯,延时几秒,南北仍然红灯。最后循环至状态1。2、 双色LED是由一个红色LED管芯和一个绿色LED管芯封装在一起,公用负端。当红色正端加高电平,绿色正端加低电平时,红灯亮;红色正端加低电平,绿色正端加高电平时,绿灯亮;两端都加高电平时,黄灯亮。;D1 EQU 10HD2 EQU 200HPB DB ?STACK SEGMENT STACKS

9、TA DW 50 DUP(? PUSH CS POP DS MOV DX,203H ;设置为全输出 MOV AL,80H OUT DX,AL MOV DX,200H MOV AL,0ffh OUT DX,AL ;清LED MOV DX,200H MOV AL,0F0H全红 MOV BX,7fH CALL DLYBG: MOV AL,01011010B ;南北绿,东西红 MOV BX,D2 MOV CX,03HXH1: AND AL,0F5H ;绿灭黄亮 MOV BX,D1 OR AL,0aH ;绿亮 LOOP XH1 OR AL,0a0H ;南北黄 MOV AL,10100101B ;南北红,

10、东西绿 MOV CX,03XH2: AND AL,0FaH OR AL,05H LOOP XH2 OR AL,50H JMP BGDLY PROC NEAR PUSH CXDDD: MOV CX,2ffHCCC: LOOP CCC DEC BX CMP BX,0 JNE DDD POP CX DLY ENDP CODE ENDSEND START实验二 开关状态显示实验编写程序,设定8255的PA口为开关量输入,PB口为开关量输出,要求能随时将PA口的开关状态通过PB口的发光二极管显示出来。学习使用8255各个口的不同工作方式三、实验电路连接将K1K8用连接至8255的PB0PB7,将DL1D

11、L8用连线连至8255的PC0PC7,8255CS连至译码处的200207插孔。本实验要求8255工作方式0,PB口设置为输入,PC口设置为输出,输入量为开关量,通过8255可实时显示在LED灯上。按下HALT或RST键则返回监控。CODE,SS:设置为b口输入,c口输出 MOV AL,92H OUT DX,AL BG: MOV DX,201H ;将b口状态从c口输出 IN AL,DX MOV DX,202h实验五 A/D转换实验编程用查询方式采样电位器输入电压,并将采样到的结果实时地通过8279显示在数码管上。(只须显示一位即可。用0F表示0+5V电压)。二实验目的1掌握A/D芯片AD080

12、9的转换性能及编程方法。2学习A/D芯片与其他芯片(如8279)接口的方法,初步建立系统的概念。三实验电路及连线CS79接译码处210217这个插孔。A/D的CS插译码处20820F这个插孔,0809的IN0接至电位器W1的中心抽头插孔。注意:电位器W1两边的两个插孔已经分别接好电源+5V和地,请不要再接,以防接错,出现短路。本实验中所用A/D转换芯片为逐次逼近型,精度为8位每转换一次约100微钞,所以程序若为查询式,则在启动后要加适应延时。另外,0809芯片提供转换完成信号(EOC),利用此信号可实现中断采集。有兴趣者可自行编制程序。Z8279 EQU 212HD8279 EQU 210HL

13、EDMOD EQU 00 ;左边输入,八位显示外部译码八位显示LEDFEQ EQU 38H ;扫描频率code push cs pop ds call delay MOV DX,Z8279 MOV AL,LEDMOD MOV AL,LEDFEQ MOV CX,06HXZ: MOV DX,D8279 MOV AL,00H LOOP XZ MOV DX,D8279 MOV AL,5eH MOV AL,77H以上为写(AD ) NOPbg: mov dx,208h mov al,0 out dx,al in al,dx mov cl,04h ror al,cl and al,0fh push ax

14、mov dx,z8279 mov al,81h out dx,al pop ax LEA BX,LED XLAT MOV DX,D8279 ;将AL中内容写到数码管上 jmp bgLED DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H DB 5EH,79H,71Hdelay proc near push cx mov cx,01f00h loop $ pop cx ret delay endpEND START 实验六 D/A转换实验编写程序,使D/A转换模块循环输出三角波和锯齿波。1掌握DAC0832芯片的性能、使用方法及对应硬件

15、电路。2了解D/A转换的基本原理。DAC0832的片选CS孔接译码处208-20F插孔(注:0832旁的短路帽应下插,做51实验时应上插)。D/A转换是量转化成模拟量的过程,本实验输出为模拟电压信号,本次实验生成的波形较为简单,有兴趣者可试编程序生成各种波形,如方波,正弦波等,也可与键盘显示模块结合起来,构成一个简单的波形发生器,通过键盘输入各种参数,如频率,振幅(小于+5V),方波的占空比等。code,SS: MOV DX,208H ;锯齿波 MOV CX,07ffHBB: ADD AL,01 CMP AL,00H JNZ BB LOOP BBEE: ADD AL,01H CMP AL,0F

16、FH JNE EEFF: SUB AL,01H JNE FF LOOP EE实验九 步进电机驱动实验利用8255的PC口PC-PC3轮流输出脉冲序列,小键盘控制步进电机的转速和转动方向。1、 了解控制步进电机的基本原理。2、 掌握控制步进电机转动的编程的方法。三、实验连线 用硬导线将8255选信号CS接至200-207,PC0-PC3接至SMA-SMD。将8279的片选信号CS接至208-20F。在运行过程中,可按动小键盘的“0-9”数码键,控制步进电机的转速,按“+或-”键控制步进电机的方向,按“REG”键退出。 C8279 EQU 20AH D8279 EQU 208H C8255 EQU

17、 203H P8255C EQU 202H ASSUME CS:CODE START:PUSH CS INI:MOV DX,C8255 MOV AL,90H 8255初始化 MOV DX,C8279 MOV AL,2AH8279初始化 MOV AL,0D1H关显示 WAIT1:IN AL,DX MOV AH,AL AND AL,80H JNZ WAIT1 ;FIFO正在清除期间则跳转等待 MOV AL,AH JE WAIT1 ;无键按下则跳转等待 LEA BX,STEP RUN:CALL CHKKEY CALL DISPLAY MOV CX,08H ;步进电机控制 LOOP3:MOV DX,P

18、8255C CALL DELAY LOOP LOOP3 JMP RUNCHKKEY PROC NEAR RDKEY:MOV DX,C8279 AND AL,80H CMP AL,80H JE RDKEY JE RTN MOV AL,40H 读FIFO/传感器RAM命令 CHK:CMP AL,38H JE QUIT ;RST 退出 CMP AL,30H ;键值大于30H,为方向控制键 JNC DIRE MOV DELAYTIME,AL JMP RTN DIRE:CMP AL,32H ;HERE 顺时针 JNE NEXT MOV DIRDSP,40H LEA BX,STEP NEXT:CMP AL

19、,33H ;EXEC 逆时针 JNE RTN MOV DIRDSP,46H ADD BX,08H ;逆时针控制表地址 RTN: MOV SI,BXCHKKEY ENDP QUIT: MOV AL,0D2H jmp $DELAY PROC NEAR ;判断键值,获得相应延时循环值 MOV AL,20H ;9? SUB AL,DELAYTIME MOV CX,04H MOV AL,08H ;8 JNZ L2 MOV CX,05H L2: MOV AL,00H ;7 JNZ L3 L3: MOV AL,21H ;6 MOV CX,07H JNZ L4 MOV CX,08H L4: MOV AL,09H ;5 JNZ L5 MOV CX,09H L5: MOV AL,01H ;4 JNZ L6 MO

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

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