谁能帮忙解释一下这段程序,逐句的;最好能再帮忙翻译成汇编语言写得
#include<reg51.h> sbit P1_0=P1^0; void main(void) { TMOD=0X01; TR0=1; for(;;) { TH0=-(1000/256); TL0=-(1000%256); do{}while(!TF0); P1_0=!P1_0; TF0=0; } }
#include<reg51.h> sbit P1_0=P1^0; void main(void) { TMOD=0X01; TR0=1; for(;;) { TH0=-(1000/256); TL0=-(1000%256); do{}while(!TF0); P1_0=!P1_0; TF0=0; } }
答案:#include<reg51.h>
sbit P1_0=P1^0;
void main(void)
{
TMOD=0X01; //设置定时器0为工作方式1
TR0=1; //开始计时
for(;;)
{
TH0=-(1000/256); //设高位初值
TL0=-(1000%256); //设低位初值
do{}while(!TF0); //等待TF0=1
P1_0=!P1_0; //P1.0口取反
TF0=0; //TF0=0,循环
}
}
org 0000h
ajmp start
org 0030h
start: mov tmod,#01h
setb tr0
l1: mov th0,#-3
mov tl0,#-232
jbc tf0,$
cpl p1.0
jmp l1
上一个:想学C语言,朋友说可以从汇编语言先学,不知道怎么学,有没什么好的建议和书介绍?
下一个:求单片机高手~希望给个30秒倒计时的程序~急啊!汇编语言