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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

微机 信号发生器汇编.docx

1、微机 信号发生器汇编程序清单和程序注释;*根据CHECK配置信息修改下列符号值* IOY0 EQU 0E400H ;片选IOY0对应的端口始地址 IOY1 EQU 0E440H ;片选IOY0对应的端口始地址;* MY8255_A EQU IOY0+00H*4 ;8255的A口地址 MY8255_B EQU IOY0+01H*4 ;8255的B口地址 MY8255_C EQU IOY0+02H*4 ;8255的C口地址 MY8255_MODE EQU IOY0+03H*4 ;8255的控制寄存器地址 DA0832 EQU IOY1+00H*4 ;DA0832的端口地址 STACK1 SEGME

2、NT STACK DW 256 DUP(?) STACK1 ENDS DATA SEGMENT DTABLE DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H SINTAB DB 19H,1EH,22H,27H,2BH,2EH,31H,32H ;正弦函数表 DB 33H,32H,31H,2EH,2BH,27H,22H,1EH DB 19H,14H,0FH,0BH,07H,04H,02H,01H DB 00H,01H,02H,04H,07H,0BH,0FH,14H STR1 DB press 1 to outpu

3、t wave,0AH,0DH DB press 2 to quit ,0AH,0DH, 0AH,0DH,0AH,0DH,$ SQRTAB DB 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H DB 13H,13H,13H,13H,13H,13H,13H,13H DB 13H,13H,13H,13H,13H,13H,13H,13H STR2 DB press 1 to sin wave ,0AH,0DH DB press 2 to recangle ,0AH,0DH DB press 3 to square ,

4、0AH,0DH DB press 4 to triangle ,0AH,0DH DB press 5 to return0 ,0AH,0DH ,0AH,0DH,0AH,0DH, $ STR3 DB press 1 to reduce fecency ,0AH,0DH DB press 2 to increase fecency ,0AH,0DH DB press 3 to reduce amplitude ,0AH,0DH DB press 4 to increase amplitude,0AH,0DH DB press 5 to return0 ,0AH,0DH ,0AH,0DH,0AH,0

5、DH, $ SQU DB output squre wave now .,0AH,0DH, 0AH,0DH, $ TRI DB output triangle wave now .,0AH,0DH, 0AH,0DH, $ REC DB output recangle wave now .,0AH,0DH, 0AH,0DH, $ SIN DB output sin wave now .,0AH,0DH, 0AH,0DH, $ AMPL DB 3 FENC DB 3 TIAOFU DB ? TIAOPIN DB ? SQUARE DB ? KEYASS DB ? DATA ENDS ;键值表,0F

6、对应的7段数码管的段位值 CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV SI,3000H ;建立缓冲区,存放要显示的键值 MOV AL,00H ;先初始化键值为0 MOV SI,AL MOV SI+1,AL MOV SI+2,AL MOV SI+3,AL MOV DI,3003H MOV DX,MY8255_MODE ;初始化8255工作方式 MOV AL,81H ;方式0,A口、B口输出,C口低4位输入 OUT DX,AL PREBEGIN: MOV AH,09H ; 显示第一个菜单 MOV DX,O

7、FFSET STR1 INT 21H MOV SI,3000H ; 把数码管清0 MOV AL,00H ; 先初始化键值为0 MOV SI,AL MOV SI+1,AL MOV SI+2,AL MOV SI+3,AL MOV DI,3003H BEGIN: CALL DIS ;显示刷新 CALL GETKEY1 ;在第一菜单下,等待按键的按下 MOV SI,OFFSET KEYASS MOV AL,SI CMP AL,1 ;按下第二个键就退出 JZ QUIT CMP AL,0 ;按下第一个键进入第二个菜单 JZ LBEGIN JMP BEGIN ;不是按下第一或二键就继续等待输入 LBEGIN

8、: MOV AH,09H ;显示第二个标题 MOV DX,OFFSET STR2 INT 21H LBEGIN4: CALL GETKEY1 ;第二个菜单等待输入 MOV SI,OFFSET KEYASS MOV AL,SI CMP AL,4 ;第5个键退出 JZ LBEGIN1 CMP AL,0 ;第一个键到sin(正弦)函数 JZ LBEGIN6 CMP AL,1 ;第二个键到rec(锯齿)函数 JZ LBEGIN7 CMP AL,2 ;第三个键到squ(方波)函数 JZ LBEGIN2 CMP AL,3 ;第四个键到tri(三角波)函数 JZ LBEGIN5 JMP LBEGIN3 ;

9、其他键则跳到继续等待输入 LBEGIN2: CALL SQUREW JMP PREBEGIN LBEGIN5: CALL TRIANW JMP PREBEGIN LBEGIN6: CALL SINW JMP PREBEGIN LBEGIN7: CALL RECW JMP PREBEGIN ;执行完输出波形之后 回到第一个菜单 LBEGIN3: JMP LBEGIN4 LBEGIN1: MOV AH,1 ;判断PC键盘是否有按键按下 INT 16H JZ PREBEGIN QUIT: MOV AX,4C00H ;返回到DOS INT 21H ;上面是主程序 TRIANW PROC NEAR ;三

10、角波的子程序 MOV AH,09H MOV DX,OFFSET TRI INT 21H MOV AH,09H MOV DX,OFFSET STR3 INT 21H ;. MOV AL,FENC ;初始化显示管的值为3 MOV SI,3000H MOV SI,AL MOV AL,AMPL MOV SI,3001H MOV SI,AL TRIAN1: CALL AMPLFENC MOV SI,OFFSET KEYASS MOV AL,4 CMP SI,AL JZ TRIAN4 CALL DIS TRILOOP11: ;输出三角波 MOV SI,3000H ;幅值 MOV BL,SI MOV SI,

11、OFFSET TIAOFU MOV SI,BL MOV SI,3001H MOV BL,SI MOV SI,OFFSET TIAOPIN MOV SI,BL TRILOOP: MOV AL,00H ;D/A转换起始值 TRIUP: PUSH AX MOV BL,TIAOFU MUL BL MOV DX,DA0832 ;启动D/A转换 OUT DX,AL POP AX MOV CL,TIAOPIN MOV CH,00H DALLYTRI1: CALL DALLY CALL DIS CALL CCSCAN JNZ TRIAN1 LOOP DALLYTRI1 INC AL CMP AL,33H JN

12、E TRIUP TRIDOWN: PUSH AX MOV BL,TIAOFU MUL BL MOV DX,DA0832 OUT DX,AL POP AX MOV CL,TIAOPIN MOV CH,00H DALLYTRI2: CALL DALLY CALL DIS CALL CCSCAN JNZ TRIAN1 LOOP DALLYTRI2 DEC AL CMP AL,00H JNE TRIDOWN JZ TRILOOP ;无按键则跳回继续循环,有则退出 TRIAN4: RET TRIANW ENDP RECW PROC NEAR ;锯齿波的子程序 MOV AH,09H MOV DX,OFFS

13、ET REC INT 21H MOV AH,09H MOV DX,OFFSET STR3 INT 21H MOV DI,OFFSET FENC ;初始化显示管的值为5 MOV AL,DI MOV SI,3000H MOV SI,AL MOV DI,OFFSET AMPL MOV AL,DI MOV SI,3001H MOV SI,AL REC1: CALL AMPLFENC MOV SI,OFFSET KEYASS MOV AL,4 CMP SI,AL JZ REC4 CALL DIS MOV SI,3000H ;幅值 MOV BL,SI MOV SI,OFFSET TIAOFU MOV SI,BL MOV SI,3001H MOV BL,SI MOV SI,OFFSET TIAOPIN MOV SI,BL RECLOOP11: MOV AL,00H ;D/A转换起始值 RECUP: PUSH AX MOV BL,TIAOFU MUL BL MOV DX,DA0832 ;启动D/A转换 OUT DX,AL POP AX MOV SI,OFFSET TIAOPIN MOV CL,SI MOV CH,00H DALLYREC1: CALL DALLY CALL DIS CALL CCSCAN JNZ

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

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