准备学51单片机的汇编语言,求大神帮我分析下这段程序各个指令是什么

ORG 0000H
AJMP MAIN
ORG 0030H
MAIN:
MOV SP, #5FH //设置栈
MOV P0, #0FFH
MOV P1, #0FFH //上电初始化
//*********************************//**等待按键处理
LOOP:
JNB P3.0, LOOP1 //等待有按键1按下
ACALL DELAY2MS //消抖
JNB P3.0, LOOP1 //再确定按键
// AJMP LOOP
LOOP1:
JNB P3.1, LOOP2 //等待有按键2按下
ACALL DELAY2MS //消抖
JNB P3.1, LOOP2 //再确定按键
AJMP LOOP
//***********************************//**电磁铁工作与等待按键放开

LOOP2: MOV A,P3
CJNE A,#0FCH,LOOP
CLR P1.7 //电磁铁接通
ACALL DELAY3MS //延时3MS
SETB P1.7 //关闭电磁铁
LOOP3:
JB P3.0,LOOP4 //等待1按键放开
ACALL DELAY2MS //消抖
JB P3.0,LOOP4 //再确认1按键有没有放开
LOOP4:
JB P3.1,LOOP5 //等待2按键放开
ACALL DELAY2MS //消抖
JB P3.1,LOOP5 //在确认2按键有没有放开
AJMP LOOP3
LOOP5: MOV A,P3
CJNE A,#0FFH ,LOOP3
LCALL MAIN

程序注释已经很详细了,这里说说功能吧。程序功能很简单,就是当两个键同时按下时,接通电磁铁3毫秒,然后等待键释放,如此循环。
温馨提示:答案为网友推荐,仅供参考
相似回答