- //用LED數碼顯示器循環顯示數字0~9
- #include<reg52.h> // 包含51單片機寄存器定義的頭文件
- /**************************************************
- 函數功能:延時函數,延時一段時間
- ***************************************************/
- void delay(void)
- {
- unsigned char i,j;
- for(i=0;i<255;i++)
- for(j=0;j<255;j++)
- ;
- }
- /**************************************************
- 函數功能:主函數
- ***************************************************/
- void main(void)
- {
- unsigned char i;
- unsigned char code Tab[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
- //數碼管顯示0~9的段碼表,程序a運行中當數組值不發生變化時,
- //前面加關鍵字code ,可以大大節約單片機的存儲空間
- P2=0x7f; //P2.7引腳輸出低電平,數碼顯示器第7位接通電源工作
- while(1) //無限循環
- {
- for(i=0;i<10;i++)
- {
- P0=Tab[ i]; //讓P0口輸出數字的段碼92H
- delay(); //調用延時函數
- }
- }
- }
復制代碼
|