MCS51单片机初学者,关于汇编语言中断程序设计
答案:6 悬赏:20 手机版
解决时间 2021-12-21 11:35
- 提问者网友:沦陷
- 2021-12-21 01:04
在SST51开发板上,用跳线将SST89E58RDA单片机的P3.2(INT0)引脚与按键K1脚连接,用汇编语言实现:按一次K1外部中断INT0响应一次,LED显示值加1(十进制),谢谢,最好有适当的文字说明,万分感谢
最佳答案
- 五星知识达人网友:青尢
- 2021-12-21 01:20
不知道你要显示几位,我写了个1位显示的。前提是共阴数码LED且一端已接地,由P1口控制。
ORG 0000H
LJMP START
ORG 0003H
LJMP INTT0
ORG 0600H
START: SETB EA
SETB EX0 ; 打开外部中断0
CLR IT0 ; 令中断0为电平触发
MOV @R0,#00H
DISPLAY: MOV DPTR,#TAB;给字形表的初地址
MOV A,R0; 将要显示的数给A
MOVC A,@A+DPTR ;在字形表中取数放到A
MOV P1,A; 假设是P1口输出要显示的数据把A放到P1中
SJMP DISPLAY ;循环显示等待中断
INTT0:INC @R0; ;中断中有按键着加1
RETI
TAB:DB 3FH,06H,5BH,4FH,66H ;字形表
DB 6DH,7DH,07H,7FH,6FH
DB 77H,7CH,39H,5EH,79H
END
ORG 0000H
LJMP START
ORG 0003H
LJMP INTT0
ORG 0600H
START: SETB EA
SETB EX0 ; 打开外部中断0
CLR IT0 ; 令中断0为电平触发
MOV @R0,#00H
DISPLAY: MOV DPTR,#TAB;给字形表的初地址
MOV A,R0; 将要显示的数给A
MOVC A,@A+DPTR ;在字形表中取数放到A
MOV P1,A; 假设是P1口输出要显示的数据把A放到P1中
SJMP DISPLAY ;循环显示等待中断
INTT0:INC @R0; ;中断中有按键着加1
RETI
TAB:DB 3FH,06H,5BH,4FH,66H ;字形表
DB 6DH,7DH,07H,7FH,6FH
DB 77H,7CH,39H,5EH,79H
END
全部回答
- 1楼网友:白昼之月
- 2021-12-21 05:53
用C吧
- 2楼网友:纵马山川剑自提
- 2021-12-21 04:30
c 低功耗
s 可在线编程
isp在线可编程
对于单片机来讲可以通过spi或其它的串行接口接收上位机传来的数据并写入存储器中。所以即使我们将芯片焊接在电路板上,只要留出和上位机接口的这个串口,就可以实现芯片内部存储器的改写,而无须再取下芯片。
- 3楼网友:由着我着迷
- 2021-12-21 04:11
在电子人单片机开发板 网站上可以看到中断程序设计的 例子,你自己看看吧。
- 4楼网友:西岸风
- 2021-12-21 03:40
关键在于键盘的防抖吧... 一个部件一个部件地学 先流水灯 然后数码管 键盘 LED 之后就都懂了
不用纠结
- 5楼网友:时间的尘埃
- 2021-12-21 02:12
这个我也学得不是很好,希望能帮到你
Main: MOV TCON ,#0H;外部中断0采用电平触发方式
MOV IE,#81H;打开外部中断0;
MOV IP,#1H; 设置中断优先级为最高
L:
MOV R0,P3.2;
JZ R0 ,L1;
L1: INC R1;
MOV P0,R1;
LOOP L;
LED灯是二进制吧 十进制怎么实现? 要么是数码管
我理解大概就是这样的 这个东西学了好久了 忘记很多 可能有很多错误
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯