第一范文网 - 专业文章范例文档资料分享平台

基于单片机的函数信号发生器课程设计(毕业设计)完整版

来源:用户分享 时间:2025/6/1 6:11:21 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

源程序: ORG 0000H AJM MAIN ORG 000BH LJMP TC0 ORG 0030H

MAIN:MOV DPTR,#9FFFH 指向DAC0832(1) MOV A,70H

MOVX @DPTR,A MOV DPTR,#7F00H MOV A,#06H MOVX @DPTR,A MOV DPTR,#7F01H MOVX A,@DPTR JNB ACC.4,K10H JNB ACC.5,K100H JNB ACC.6,K500H JNB ACC.7,K1K AJMP MAIN

LED1: MOV R3,#06H MOV R2,#01H MOV R1,#30H GN1:MOV DPTR,#7F03H MOV A,R2 MOVX @DPTR,A RL A MOV R2,A MOV A, @R1 MOV DPTR,#TAB MOVC A,@A+DPTR 13

DAC0832(1)输出 指向8155命令字端口地址

设置A口为输入,B口、C口为输出 送命令字 指向A口地址 读入A口的开关数据

判断是否“4”号键,若是则转输出10Hz信号 判断是否“5”号键,若是则转输出100Hz信号判断是否“6”号键,若是则转输出500Hz信号判断是否“7”号键,若是则转输出1KHz信号 设置6个LED显示 选通第一位LED数据 送显示缓冲区首址 指向C口地址 位选通数据送A 位选通数据送C口 选通下一位

位选通数据送R2中保存取键值

送LED显示软件译码表首址 查表求出键值显示的段码

MOV DPTR,#7F02H 指向B口地址 MOV @DPTR,A 段码送显示 LCALL LOOP1 调延时子程序

INC R1 指向下一位显示缓冲区地址 DJNZ R3,GN1 循环显示6个LED RET

LOOP1:MOV R4,#08H LOOP:MOV R5,#0A0H DJNZ R5,$ DJNZ R4,LOOP RET

K10H:MOV 30H,#00H MOV 31H,#00H MOV 32H,#00H MOV 33H,#00H MOV 34H,#01H MOV 35H,#00H

LCALL LED1 MOV TMOD,#00H MOV TL0,#15H MOV TH0,#9EH AJMP PD

K100H:MOV 30H,#00H MOV 31H,#00H MOV 32H,#00H MOV 33H,#01H MOV 34H,#00HMOV 35H,#00H

LCALL LED1 MOV TMOD,#00H

延时子程序 显示10Hz 调显示子程序 显示100Hz 调显示子程序 14

MOV TL0,#08H MOV TH0,#0F6H AJMP PD

K500H:MOV 30H,#00H 显示500Hz MOV 31H,#00H MOV 32H,#00H MOV 33H,#05H MOV 34H,#00H MOV 35H,#00H

LCALL LED1 MOV TMOD,#00H MOV TL0,#01H MOV TH0,#0FEH AJMP PD

K1K:MOV 30H,#00H MOV 31H,#00HMOV 32H,#01H MOV 33H,#00H MOV 34H,#00H MOV 35H,#00H

LCALL LED1 MOV TMOD,#00H MOV TL0,#01H MOV TH0,#0FFH

PD:JNB ACC.0,KE0 JNB ACC.1,KE1 JNB ACC.2,KE2 JNB ACC.3,KE3 LJMP PD

KE0:MOV R7,#00H

调显示子程序 显示1KHz 调显示子程序 判断是否“0”号键按下,若是则转方波输出 判断是否“1”号键按下,若是则转正弦方波输出判断是否“2”号键按下,若是则转三角波输出 判断是否“3”号键按下,若是则转锯齿波输出 15

LCALL LED1 调显示子程序 MOV R6,#00H AJMP GN

KE1:MOV R7,#02H

LCALL LED1 调显示子程序 MOV R6,#00H AJMP GN

KE2:MOV R7,#02H

LCALL LED1 MOV R6,#00H

AJMP GN KE3:MOV R7,#02H

LCALL LED1 MOV R6,#00H GN: SETB TR0 SETB ET0 SETB EA

LOP1:JNB ACC.4,K10H JNB ACC.5,K100H JNB ACC.6,K500H JNB ACC.7,K1K AJMP LOP1

TC0:CJNE R7,#00H,TC1 MOV DPTR,#TAB1 MOV A,R6 MOVC A,@A+DPTR

MOV DPTR,#0AFFFH MOVX @DPTR,A MOV A,R6 INC A

调显示子程序 调显示子程序 判断是否“4”号键,若是则转输出10Hz信号 判断是否“5”号键,若是则转输出100Hz信号判断是否“6”号键,若是则转输出500Hz信号判断是否“7”号键,若是则转输出1KHz信号 发送方波程序 送方波数据表首址 发送数据寄存器 指向DAC0832(2) DAC0832(2)输出 16

基于单片机的函数信号发生器课程设计(毕业设计)完整版.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c9huh00z7hi9kcek7h0vw_4.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top