導航:首頁 > 操作系統 > 51單片機函數庫

51單片機函數庫

發布時間:2024-10-29 08:40:54

❶ 51單片機C語言的頭文件,及其頭文件的功能

reg51.h
常見的是這個頭文件。
這是單片機C語言編譯器自帶的庫函數,相當於單片硬體的底層驅動程序。
比如說,畝者慎在有頭文件的情況下,可以直接使用P0作為變數進行讀寫操作,這是因為嫌乎頭文件里對P0做了描述,在軟體和硬體之間建立了溝通橋梁。
還有其他數據處理類頭文件,比如說math.h,這是數學函數庫頭文迅敬件。有了它,就可以直接調用一些復雜的數學處理函數,而不必用戶自己設計,例如反正弦函數。

❷ 51鍗曠墖鏈洪噷闈㈢殑鍑犱釜鍑芥暟 璋佽兘甯鎴戣В鍐充竴涓 姣忎竴琛岃兘甯鎴戣︾粏璁茶В涓涓嬩箞

void Timer0Init(void) //1寰縐扏11.0592MHz
{
TMOD &= 0xF0; //瀹氭椂鍣1淇濇寔鍘熺姸鎬佷笉鍙
TMOD |= 0x02; //瀹氭椂鍣0璁劇疆涓烘ā寮2
TH0=0xF7; //鍒濆間負256-9
TL0=0xF7; //閲嶈呭
EA=1; //寮鎬諱腑鏂
ET0=1; //寮t1涓鏂

// TR0=1; // 寮濮嬭℃椂

void tm0_isr() interrupt 1 using 1//瀹氭椂鍣0涓鏂鏈嶅姟鍑芥暟錛屼嬌鐢ㄥ伐浣滃瘎瀛樺櫒鍖1
{

}

///////////////////////////////////////////////////////////////

//External interrupt0 service routine
void exint0() interrupt 0 //(location at 0003H) //澶栭儴涓鏂0鏈嶅姟鍑芥暟
{
Alarm_Off = 1; //鎶ヨ︽帶鍒朵俊鍙風疆1

}

////////////////////////////////////////////////////////////////

void delay200ms(void) //寤舵椂200姣縐
{
unsigned char a,b,c;
for(c=55;c>0;c--)
for(b=100;b>0;b--)
for(a=3;a>0;a--);
}

void delay500ms(void) //寤舵椂500姣縐
{
unsigned char a,b,c;
for(c=67;c>0;c--)
for(b=141;b>0;b--)
for(a=18;a>0;a--);
_nop_();
}

void delay1s(void) //寤舵椂1縐
{
unsigned char a,b,c;
for(c=95;c>0;c--)
for(b=26;b>0;b--)
for(a=185;a>0;a--);
}

//----------- INIT UART ----------------------------------------

void UartInit()//涓插彛鍒濆嬪寲鍑芥暟
{
SCON = 0x50; //8-bit variable UART
TMOD = 0x20; //Set Timer1 as 8-bit auto reload mode
TH1 = TL1 = -(FOSC/12/32/BAUD); //Set auto-reload vaule
TR1 = 1; //Timer1 start run
EA = 1; //Open master interrupt switch
}

//------- Send a byte data to UART ----------------------------
void SendData(unsigned char dat)//鍙戦佷竴涓瀛楄妭
{
SBUF = dat; //Send data to UART buffer
while(!TI);
TI=0;
}

//------- Send a string to UART -------------------------------
void SendString(char *s)//鍙戦佸瓧絎︿覆
{
while (*s) //Check the end of the string
{
SendData(*s++); //Send current char and increment string ptr
}
} 鏀惰搗 sunqi8838306 5

❸ 51單片機c語言里 _nop_ 函數怎麼用

在單片機c語言中直接調用庫函數即可,具體如下:

#include<intrins.h> // 聲明了void_nop_(void);

_nop_(); // 產生一條NOP指令。

該函數的作用:對於延時很短的,要求在us級的,採用「_nop_」函數,這個函數相當信亂游匯編NOP指令,延時幾微秒。NOP指令為單周期指令,可由晶振頻率算出延時時間,對於12M晶振,延時1uS。

❹ 51單片機,c語言寫程序,什麼數學運算都可以嗎加減乘除,對數,指數,三角函數,平方,根號,立方,

KEIL C51 有個數學函數庫(和C語言的 數學函數庫類似)

指數,三角函數,平方,開方,立方都有的。具體可以看 相關的資料。
數學函數庫 需要看頭文件MATH.H
例如:
1.指數函數 float exp(float x)
2.對數函數 float log(float x) ,float log10(float x)
3.平方根:float sqrt(float x)
3.三角函數 :
float cos(float x),float sin(float x),float tan(float x)
float acos(float x),float asin(float x),float atan(float x),float atan2(float y, float x)
float cosh(float x),float sinh(float x),float tanh(float x)
等很多了,具體去看相關的資料吧
希望我的回答對你有所幫助,很高興和你一起討論單片機編程技術。

❺ 51單片機中,指針函數 在C語言程序 如何使用

你好,比較方便的實現方式是在函數的外部申請數組;在調用函數的時候傳入數組的地址進行操作。如果一定要在子函數內部申請空間並返回地址,那麼需要在子函數內部動態申請內存空間。具體的方法一般是使用標准庫中的malloc函數。對於c51函數庫,參考這個鏈接:http://www.keil.com/support/man/docs/c51/c51_malloc.htm

閱讀全文

與51單片機函數庫相關的資料

熱點內容
恆智天成軟體識別不到加密狗 瀏覽:358
天和日歷速演算法 瀏覽:213
機械手動作梯形圖編程 瀏覽:12
編程p1c 瀏覽:611
黑龍江日報伺服器ip地址 瀏覽:543
安卓光遇圖標長什麼樣 瀏覽:457
安卓手機如何打開oa文件 瀏覽:972
新能源電動壓縮機過熱保護 瀏覽:578
程序員下海區塊鏈 瀏覽:334
g68編程入門教程 瀏覽:286
程序設計與案例教程pdf 瀏覽:892
小碼王少兒編程價格 瀏覽:634
次元網盤怎麼解壓 瀏覽:181
安卓手機怎麼鎖屏下亮屏 瀏覽:92
單片機定時器模塊 瀏覽:266
py編譯安卓 瀏覽:941
iPhone怎麼關掉app跟蹤 瀏覽:359
linux中的ping命令 瀏覽:229
c語言游戲編程教程 瀏覽:1000
數控銑床編程圖紙 瀏覽:823