① 51單片機的c語言與傳統的c語言有什麼區別
區別還是有的,51單片機的C語言面向的是單片機,所以硬體方面的函數和定義更多,很多相同名稱的函數其實意思是不完全一樣的。比如printf函數,傳統的C語言是格式化輸出到顯示器顯示,而單片機則是通過串口將數據格式化傳送出去。
② 給51單片機編程序,用basic語言好還是c語言好
兄台你搞錯了,basic是操作系統上用的編程。即Visual Basic是一種可視化的面向對象的編程語言,以其編程簡單、快捷等特點,深受廣大WINDOWS程序員的青睞。而51系列單片機只有用c語言匯編語言。另外單片機的c語言又跟標准c語語言有點差別。主要是IO口、中斷及寄存器,不太一樣。
單片機c語言增加了一些基本的指令 變數的賦值是16進制,當然單片機c語言只牽涉到普通c語言的基礎部分。
但是在單片機上的C語言多了一些特定的指令,如SFR定義寄存器指令,在標准C上是沒有的; 在標准C上的有些庫,在單片機上是不支持的, 可以這么說,單片機C是標准C的子集,在這基礎上,加上了一些單片機特定的指令構成。
③ 51單片機c語言編程
對埠輸出操作,直接適用賦值語句即可。 比如 P1 = 0x03;
對埠讀取操作,直接賦值給局部變數即可。
對數碼管操作,需要先定義 對應的 碼表, Tab[16] = {, }分別對應 0~F 的埠輸出值、點亮相應的LED位; 然後直接 操作埠輸出對應字元即可,比如P1=Tab[3] 數碼管輸出顯示3
④ 51單片機和STM32有什麼區別編程語言也可以用匯編語言嗎
1.數據匯流排寬度不一樣,數據匯流排寬度越寬,處理速度越快。2.匯編指令集不同,51是mcs51指令集,stm32是arm指令集。指令集內容相似,但是形式上還是有較大差距。3.51更便宜,性價比更高,懂得人也更多。4.模擬環境不一樣,模擬器也不一樣。5.51沒有知識產權問題,專利已經過期了。6.發展節奏不一樣,51現在是跟跑,STM32是領跑。相似點:都可以用匯編和C語言。建議從單片基本功能開始學起,首先從點亮一顆LED開始,然後是流水燈、中斷等單片各種外設。先把基本功練好,後面才能爬得更高,張飛實戰電子的單
⑤ 51單片機語言
void Delay_ms(unsigned int t) //一個延時ms的程序,t是延時的數量,即是tms
{
unsigned int i,j;
for(i=0;i<t;i++)
for(j=0;j<120;j++)
;
}
void Delay(uint x) //延時時間
{
while(--x);
}
//---------------1602--------------------------------------
void delayms(uint z) //延時N ms
{
uint x,y;
for(x=z;x>0;x--)
for(y=120;y>0;y--);
}
void write_com(uchar com) //1602液晶寫指令
{
rs=0;
lcden=0;
LCDDATA=com; //命令送埠
delayms(1); //延時1Ms
lcden=1;
delayms(2); //延時2Ms
lcden=0;
}
void write_date(uchar date) //1602液晶寫數據
{
rs=1;
lcden=0;
LCDDATA=date; //數據送埠
delayms(1);
lcden=1;
delayms(2);
lcden=0;
}
void init_lcd(void) //初始化液晶,及畫面初始化
{
uchar num;
wela=0;
lcden=0;
write_com(0x38); //16*2顯示,5*7點陣,8位數據
write_com(0x0c); //顯示開,關游標
write_com(0x06); //移動游標
write_com(0x01); //清除LCD的顯示內容
write_com(0x80); //第一行的第一個字元位置。
for(num=0;num<13;num++) // " temper: ";
{
write_date(table[num]); //把table數組中定義的字元串顯示出來。。。" temper: ";
Delay(10);
}
⑥ 51單片機C語言
先定義一個unsigned int 型的變數temp,
然後angle[0]乘以10000,結果給temp,
然後將temp分離,逐個給table的元素。
具體實現代碼如下:
unsigned int temp;
temp = (unsigned int)(angle[0]*10000);
table[0] = temp/10000;
table[1] = '.';
table[2] = temp%10000/1000;
table[3] = temp%1000/100;
table[4] = temp%100/10;
table[5] = temp/10;
如果你是用來在1602顯示的話,還有轉換成ASCII碼,在每個數組元素後面+'0'即可。
⑦ 51單片機c語言是什麼意思
C 語言,是計算機編程語言。
適合於入門者學習、使用。
51 單片機,是一種微型計算機。
用 C 語言,對其編程,就是「51單片機c語言」。
⑧ 51單片機用的是什麼編程語言
C語言和匯編都可以,但是C語言學起來比較容易,而且剛開始學C比較能看的懂,匯編就不行了
⑨ 51系列單片機主要用哪種語言編寫
你如果想知道他是怎麼一步一步實現功能的,用匯編語言,如果只關心結果不在乎過程,用C語言。對於復雜的功能,一般用C語言容易實現一些。
⑩ 給51單片機編程用的C51與C語言有什麼區別
其實區別不是太多。C語言中的所有運算符,在C51中都可以用。但是C51也有特有運算符,如sbit,還有特殊的寄存器名等可以直接寫。C語言中沒有相關的內容。