找回密码
 注册会员
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版

求助,汇编程序问题?????????

[复制链接]
admin 发表于 2012-9-3 02:46:10 | 显示全部楼层 |阅读模式

本文包含原理图、PCB、源代码、封装库、中英文PDF等资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×
大家好啊,请帮我解决这个问题,因为这程序没有达到我想到的目的,此程序功能为按一下键,产生外部中断0,使P1.7输出声音,但程序没有达到,请帮忙解决,还有能改成响四次后能中断返回吗?请帮帮忙!!!!!!!!ORG 0000H ;此程序功能为按一下键,产生外部中断0,使P1.7输出声音
AJMP MIAN
ORG 0003H ;外部中断0入口地址
LJMP 0030H ;按键程序
ORG 000BH ;定时中断0入口地址
LJMP TIME0
ORG 0030H
MIAN:MOV SP,70H
SETB EA ;CPU中断
SETB EX0 ;外部中断0
CLR IT0 ;外部中断0电平触发
MOV R4,#08H ;P0口灯亮次数
MOV A,#11111110B ;初始化数据
DL1:MOV P0,A ;送P0
ACALL DELAY ;延时
RL A ;左移
DJNZ R4,DL1 ;未完继续
AJMP MIAN ;返回主程序
DELAY:MOV R5,#3 ;延时子程序
DL6:MOV R6,#250
DE7:MOV R7,#200
DE5:DJNZ R7,DE5
DJNZ R6,DE7
DJNZ R5,DL6
RET

ORG 0300H ;外部0中断程序
ANJIAN1:PUSH PSW
PUSH ACC
SETB RS1 ;选择2组寄存器
CLR RS0
;这下面的为音乐的发生程序 直到TAB段
MIAN1:MOV TMOD,#01H
MOV IE,#82H
MOV DPTR,#TAB
LOOP:CLR A
MOVC A,@A+DPTR
MOV R1,A
INC DPTR
CLR A
MOVC A,@A+DPTR
MOV R0,A
ORL A,R1
JZ NEXT0
MOV A,R0
ANL A,R1
CJNE A,#0FFH,NEXT
SJMP MIAN1
NEXT:MOV TH0,R1
MOV TL0,R0
SETB TR0
SJMP NEXT1
NEXT0:CLR TR0
NEXT1:CLR A
INC DPTR
MOVC A,@A+DPTR
MOV R2,A
LOOP1:ACALL D200
DJNZ R2,LOOP1
INC DPTR
AJMP LOOP
D200:MOV R3,#81H
D200B:MOV A,#0FFH
D200A:DEC A
JNZ D200A
DEC R3
CJNE R3,#00H,D200B
RET
TAB:DB 0FEH,25H,02H,0FEH,25H,02H
DB 0FEH,25H,04H,0FDH,80H,04H
DB 0FEH,84H,02H,0FEH,84H,02H
DB 0FEH,84H,04H,0FEH,25H,04H
DB 0FEH,25H,02H,0FEH,84H,02H
DB 0FEH,0C0H,04H,0FEH,0C0H,04H
DB 0FEH,98H,02H,0FEH,84H,02H
DB 0FEH,57H,08H,00H,00H,04H
DB 0FFH,0FFH
RET
TIME0:PUSH ACC ;定时器0中断程序
PUSH PSW ;保护现场
MOV TH0,R1 ;重装初值
MOV TL0,R0
CPL P1.7 ;P1.7输出
POP ACC ;恢复现场
POP PSW
RETI

END
ding_yuxin 发表于 2014-3-6 23:43:34 | 显示全部楼层
ORG 0003H ;外部中断0入口地址
LJMP 0030H ;按键程序
还有
ORG 0300H ;外部0中断程序

外部中断到底应该跳到哪儿?

CLR IT0 ;外部中断0电平触发
使用电平触发,在进入中断处理程序时,必须立即关中断!!,不然中断会不断产生,无法进行后面的操作
ding_yuxin 发表于 2014-3-6 23:44:43 | 显示全部楼层
逻辑有些混乱,好像你还没搞清楚中断响应的本质!
*滑块验证:
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

QQ|手机版|MCU资讯论坛 ( 京ICP备18035221号-2 )|网站地图

GMT+8, 2024-12-23 14:20 , Processed in 0.101140 second(s), 10 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表