|
1.今天用單片機(jī)定時器寫了定時器左移的程序,雖然是寫出來,感覺代碼還是有點(diǎn)復(fù)雜,請求各位看看哪里優(yōu)化?
2.為什么這段程序TMOD =0X01; TH0 =0XB8; TL0 =0X00; TR0 =1;定要放在main函數(shù)大括號里面就不會報錯,放在unsigned char cnt =0;
unsigned char i =0; unsigned char m =0; 下面就會報錯?
#include "reg51.h"
#define LED P0
unsigned char cnt =0;
unsigned char i =0;
unsigned char m =0;
void main()
{
TMOD =0X01;
TH0 =0XB8;
TL0 =0X00;
TR0 =1;
while(1)
{
if(1 ==TF0)
{
TF0 =0;
TH0 =0XB8;
TL0 =0X00;
cnt++;
if(cnt >=50)
{
cnt =0;
for(i=0; i<1; i++)
{
LED =(0X01 <<i+m);
}
m++;
if(m >=8)
{
m =0;
}
}
}
}
}
|
|