当前位置:编程学习 > 汇编语言 >>

单片机汇编语言程序,我想写一个循环点亮的LED,然后用外部中断0接到一个按键上,怎么写我需要详细的程序

单片机汇编语言程序,我想写一个循环点亮的LED,然后用外部中断0接到一个按键上,当按下按键的时候停在任意led上,然后再按下的时候继续执行,我需要一个详细的程序且带说明!!急啊 我写的这个不对帮我改一下:ORG 0000H LJMP MAIN ORG 0003H ORG EINT0 CLR P1.0 LCALL DELAY CLR P1.1 LCALL DELAY SETB P1.2 LCALL DELAY CLR P1.3 LCALL DELAY CLR P1.4 LCALL DELAY CLR P1.5 LCALL DELAY CLR P1.6 LCALL DELAY CLR P1.7 LCALL DELAY MOV SP ,#60H CLR IT0 SETB EX0 SETB EA MOV DPTR,#1000H EINT0: PUSH PSW PUSH ACC MOV A,P1 MOVX @DPTR,A INC DPTR POP ACC POP PSW RETI DELAY: MOV R7,#200DL1: MOV R6,#250 DL2: NOP NOP NOP DJNZ R6,DL2 DJNZ R7,DL1 RET END 请各位老师同学帮忙改一下 中断时候是不是要将保存到寄存器里呢?怎么送到寄存器里保存起来到时候再继续呢 帮忙解答一下很急啊
答案:你的程序太乱了,根本看不下去,给你说一下思路,你将中断设置为电平触发方式,当有中断的时候将当前A里边的IO口显示放到中断程序里边输出到LED显示上,当按键松开时候就继续走流水灯了,你这个应用不太符合我们常规的中断应用,我们中断是处理一件事情,你的中断需要多次响应中断。
其他:我们用C语言的 这个只要给P1口送入FE或者01看你外部电路的LED接法
然后只要用左移或者右移命令就可以循环
中断的时候把那个数据送个寄存器R
重新开始的时候只要调用寄存器的值就ok
具体实现自己去做吧 

上一个:帮忙用汇编语言写个程序,控制两个LED交替闪烁。
下一个:汇编语言资料?

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,