#include<reg52.h>
sbit P10 = P1^0;
unsigned char data timer0_counter = 0;
void Timer0_Ini(void)
{
TMOD = 0x01;
TL0 = (65536 - 50000) % 256;//50ms
TH0 = (65536 - 50000) / 256;
EA = 1;
ET0 = 1;
TR0 = 1;
}
void main(void)
{
Timer0_Ini();
P10 = 0;
while(1)
{}
}
void Isr_Timer0(void) interrupt 1 using 1
{
TR0 = 0;
TL0 = (65536 - 50000) % 256;
TH0 = (65536 - 50000) / 256;
timer0_counter++;
if(timer0_counter == 20)
{
timer0_counter = 0;
P10 = ~P10;
}
TR0 = 1;
}
匯編語言怎麽寫可以看自己編譯軟件的反匯編窗口或者看生成的SRC文件。C內嵌匯編用#pragma asm和#end asm,在KEIL中鼠標右鍵單擊C源文件,選第壹個C參數選項,在新開的C參數選項卡中把“產生SRC文件”和“編譯文件中的匯編語句”兩個選項的鉤打上即可。最後在項目工程中添加C51S.LIB文件,並且要放在項目文件的最後面。