急 我这有一个单片机的程序 用C语言编的 哪位大哥能够帮我 改成汇编语言写的 谢谢了 正确的给分

2024-12-02 11:55:05
推荐回答(3个)
回答1:

RSD BIT P1.4; //热释电人接近汽车检测输入
GHG BIT P1.5;干簧管车门开启检测输入
ZDJC BIT P1.6;振动检测输入
DPLJC BIT P1.7;多普勒检测人接近驾驶座输入
BJFS BIT P2.1;报警发射输出端
FDJC BIT P2.2;防盗解除遥控接收输入端
FDBF BIT P2.3;防盗布防遥控接收输入端
VT BIT P2.4;遥控接收有效输入端
YXBJ BIT P2.5;音响报警信号输出端
DHKZ BIT P2.6;发动机点火控制输出端
CMBF BIT P2.7;车门开启检测布防控制信号输出端

BFBZ DATA 30H //定义防盗布防标志
JCBZ DATA 31H; //定义防盗解除标志

ORG 00H
LJMP MAIN
ORG 30H
MAIN:
MOV BFBZ,#0; //定义防盗布防标志
MOV JCBZ,#1; //定义防盗解除标志
SETB EA ;开总中断
SETB IT0 ; 外部中断1设置为下降沿触发
SETB EX0; 开外部中断1

LOOP:
JNB VT,ZT1
JNB FDBF,XZ2 ;接收到布防遥控指令
XZ1:
MOV R7,#100
MOV R6,#0
ACALL DELAY; 按键消抖
MOV BFBZ,1;置布防状态标志
MOV JCBZ,0;清解除状态标志
XZ2:
JNB FDJC,ZT1;接收到布防解除指令
MOV R7,#100
MOV R6,#0
ACALL DELAY; 按键消抖
MOV BFBZ,0;清布防状态标志
MOV JCBZ,1;置解除状态标志
ZT1:
MOV A,BFBZ
CJNE A,#1, ZT2;布防状态
SETB DHKZ;发动机点火闭锁
SETB CMBF;开启车门开启检测
ZT2:
MOV A,JCBZ
CJNE A,#1, ZT2;解除状态
CLR DHKZ;发动机点火允许
CLR CMBF; 关闭车门开启检测

LJMP LOOP

DELAY:延时,给R6、R7赋值,R7表示X的低8位,R6为表示X的高8位
CLR A
MOV R5,A
MOV R4,A
D0:
CLR C
MOV A,R5
SUBB A,R7
MOV A,R4
SUBB A,R6
JNC D4
CLR A
MOV R3,A
MOV R2,A
D1:
INC R3
CJNE R3,#0,D2
INC R2
D2:
MOV A,R3
XRL A,#64H;100
ORL A,R2
JNZ D1
INC R5
CJNE R5,#0,D3
INC R4
D3:
SJMP D0
D4:
RET
END
(未完)

回答2:

用keil编译之后然后查看反汇编窗口就全都是汇编啦

回答3:

是不是知道