單片機C語言程序設計:數(shù)碼管顯示撥碼開關(guān)編碼
/* 名稱:數(shù)碼管顯示撥碼開關(guān)編碼
說明:系統(tǒng)顯示撥碼開關(guān)所設置的編碼 000~255
*/
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int //各數(shù)字的數(shù)碼管段碼(共陰) uchar code DSY_CODE[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //顯示緩沖 uchar DSY_Buffer[3]={0,0,0}; //延時 void DelayMS(uint ms) { uchar t; while(ms--)for(t=0;t<120;t++); } //主程序 void main() { uchar i,m,Num; P0=0xff; P2=0xff; while(1) { m=0xfe; Num=P1;//讀取撥碼開關(guān)的值 DSY_Buffer[0]=Num/100; DSY_Buffer[1]=Num/10%10; DSY_Buffer[2]=Num%10; for(i=0;i<3;i++) //刷新顯示在數(shù)碼管上 { m=_crol_(m,1); P2=m; P0=DSY_CODE[DSY_Buffer[i]]; DelayMS(10); } } }
擴展閱讀:繼電器控制照明設備程序