微控制器程式設計使用C庫函式

2021-08-16 06:50:04 字數 1697 閱讀 5050

1.printf函式

這個非常簡單。只要重定向printf函式即可。

這個是stm8l微控制器**,注意:如果是iar編譯器需要開啟library-full

親測在msp430,stm32,stm8l上均可使用,將1,2替換成對應微控制器的函式即可

int fputc(int ch, file *f)//printf

//2

return ch;

}

2.memset()函式

memset(void *, int, size_t);//iar環境
*memset  (void *s, char val, int n);//keil環境
這裡只講在微控制器中程式設計中的使用,以上是兩種編譯環境的memset函式,實現的功能是一樣的

第二個引數:任意數值(0~255)value

從起始位址起連續n個位元組,全部置為value

我們一般用來進行陣列清0,非常方便,比如:

memset(revbuffer,0,sizeof(revbuffer));//清0陣列
revbuffer:字元型陣列
3.memcpy函式

void *memcpy(void*dest, const void *src, size_t n);

從源src所指的記憶體位址的起始位置開始,拷貝n個位元組的資料到目標dest所指的記憶體位址的起始位置中。

char buf="123456";

char buf2[5];

memcpy(buf2,buf,3);

printf("%s\r\n",buf2);

輸出:123

4.strcpy函式

strcpy是一種c語言的標準庫函式,strcpy把從src位址開始且含有'\0'結束符的字串複製到以dest開始的位址空間,返回值的型別為char*。

原型宣告:char *strcpy(char* dest, const char *src);

標頭檔案:#include 和 #include

功能:把從src位址開始且含有null結束符的字串複製到以dest開始的位址空間

說明:src和dest所指記憶體區域不可以重疊且dest必須有足夠的空間來容納src的字串。

返回指向dest的指標。

char buf="123";

char buf1[5];

strcpy(buf1,buf);

printf("%s\r\n",buf1);

5.atoi函式(注意引用#include

(表示 ascii to integer)是把字串轉換成整型數的乙個函式。

int atoi(const char *nptr);

*nptr:把引數nptr所指向的字串轉換為乙個整數(型別為 int 型)。

函式 微控制器glint GL 庫函式

1.gl 庫函式顏色編輯 glshademodel 選擇平面明暗模式或光滑明暗模式 void glshademodel glenum mode 引數 mode 指定表示明暗模式的符號值,可選 gl flat 和gl smooth 預設值為 gl smooth glcolor 設定當前顏色 這是乙個家...

微控制器程式設計

1 data idata pdata和xdata的區別 2 微控制器中的位 bit 位元組 byte 字 word stc89c52 共有 512 位元組的 ram 是用來儲存資料的,比如我們定義的變數都是直接存在 ram 裡邊的。但是微控制器的這 512 位元組的 ram在地位上並不都是平等的,而...

微控制器C語言程式設計

一 首先我們先了解一下51微控制器的標頭檔案 include 為了能看懂reg51.h標頭檔案,下面需了解keil c51編譯器擴充套件的關鍵字 關鍵字用途 說明bit 位標量宣告 宣告乙個位標量或位型別 sbit 位變數宣告 宣告乙個可位定址變數 sfr特殊功能暫存器宣告 宣告乙個特殊功能暫存器 ...