1. 51單片機c語言程序
答:樓主先搞清C51中定義數據的類型。
char型 8位(-127到128);int型16位-32727到+32728(兩個位元組)
unsigned char是8位但從0到255,unsignde int 16位從0到65535;
樓主程序中的TH0/TL0是8位uchar型;tmp是16位uint型。
tmp=TL0|(TH0<<8);
這句在執行時先進行類型轉換,把TL0/TH0暫時轉換成16位uint型數據,(高位補0),再給TH0左移8位,和TL0相「或」,得到的是16位uint數據,賦給tmp.
2. 51單片機C語言程序注釋標注(寫全)
#include<reg51.h>//調用頭文件reg51.h
voidmain()//主函數
{
unsignedchar//無符號字元型
tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};//定義一個數組LED數碼管解碼用的碼表
while(1)//主循環
{
P2=P2|0x07;//P2口與版0x07按位進權行或運算
while(P2&0x07==0x07);//如果P2扣低三位為111則原地等待
switch(P2&0x07)//獲取P2低三位值並且據此執行響應的操作
{
0x06:P0=tab[0x0D];break;//P2低三位為06H,數碼管顯示「d」
0x05:P0=tab[0x0E];break;//P2低三位為05H,數碼管顯示「E」
0x03:P0=tab[0x0F];break;//P2低三位為03H,數碼管顯示「F」
}
}
}
3. 51單片機顯示八位數碼管的C語言程序
1、最開始,我們先打開keil。