導航:首頁 > 操作系統 > 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單片機函數庫相關的資料

熱點內容
gcc怎麼編譯qt程序 瀏覽:925
華為文件夾命名大全 瀏覽:383
php無限分類循環 瀏覽:41
北漂程序員營養餐 瀏覽:105
掃描件pdf轉換成圖片 瀏覽:58
忍者必須死伺服器升級到什麼時候 瀏覽:339
鹼基最多配對演算法 瀏覽:829
命令和決定表彰上的區別 瀏覽:152
全國醫保服務平台app叫什麼 瀏覽:319
php輸出表單 瀏覽:237
西門子r變數編程入門 瀏覽:374
壓縮機器人怎麼做 瀏覽:285
魔獸懷舊服什麼時候來新伺服器 瀏覽:796
如何電腦網路加密 瀏覽:475
終端世界在編譯 瀏覽:771
白色洗碗棉手工解壓 瀏覽:748
JDM什麼app 瀏覽:512
編譯原理終止狀態判斷 瀏覽:751
怎樣設置桌面文件夾的樣子 瀏覽:871
怎麼進入hypixel伺服器國服 瀏覽:84