當前位置:編程學習大全網 - 編程軟體 - 51單片機C語言與匯編的混編中斷問題

51單片機C語言與匯編的混編中斷問題

C語言:

#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文件,並且要放在項目文件的最後面。

  • 上一篇:請問哪位精通易經的大師幫我看壹下我的相術如何出生年月日:91年農歷8月11日。。。
  • 下一篇:C語言編程,套用許多公式計算的
  • copyright 2024編程學習大全網