|
智能秒表的設(shè)計(jì)與制作 一、電路原理及仿真效果圖 二、STC90C516RD+單片機(jī)引腳排列圖
三、四位共陰極數(shù)碼管引腳排列圖 四、元器件清單 五、C語(yǔ)言程序
單片機(jī)源程序如下:- *******************************/
- /* 智能秒表(完美版) */
- /*******************************/
- #include
- #define uint unsigned int
- #define uchar unsigned char
- sbit key1=P2^0; //定義"啟動(dòng)/暫停"按鈕
- sbit key2=P2^1; //定義"復(fù)位"按鈕
- sbit key3=P2^2; //定義"模式"按鈕
- sbit key4=P2^3; //定義"查看"按鈕
- sbit wei1=P2^4; //定義位選
- sbit wei2=P2^5;
- sbit wei3=P2^6;
- sbit wei4=P2^7;
- bit flag_start,flag_mode,flag_5sec;
- uchar temp,temp1,aa,aa1,shi,ge,shifen,baifen,num,i,j;
- uchar time_data1[11],time_data2[11];
- uchar code table[]={
- 0x3f,0x06,0x5b,0x4f,
- 0x66,0x6d,0x7d,0x07,
- 0x7f,0x6f,0x77,0x7c,
- 0x39,0x5e,0x79,0x71}; //不帶小數(shù)點(diǎn)共陰極數(shù)碼管編碼
- uchar code tabledp[]={
- 0xbf,0x86,0xdb,0xcf,
- 0xe6,0xed,0xfd,0x87,
- 0xff,0xef,0xf7,0xfc,
- 0xb9,0xde,0xf9,0xf1}; //帶小數(shù)點(diǎn)共陰極數(shù)碼管編碼
- void display(uchar shi,uchar ge,uchar shifen,uchar baifen); //聲明顯示子函數(shù)
- void delay(uint z); //聲明延時(shí)子函數(shù)
- void init(); //聲明初始化函數(shù)
- void key(); //聲明鍵掃描函數(shù)
- void display_process(); //聲明顯示處理函數(shù)
-
- void main()
- {
- init(); //調(diào)用初始化子程序
- while(1)
- {
- key();
- display_process();
- display(shi,ge,shifen,baifen); //調(diào)用顯示子函數(shù)
- }
- }
-
- void delay(uint z) //延時(shí)子函數(shù)
- {
- uint x,y;
- for(x=z;x>0;x--)
- for(y=110;y>0;y--);
- }
-
- void display(uchar shi,uchar ge,uchar shifen,uchar baifen) //顯示子程序
- {
- P0=table[shi]; //使用動(dòng)態(tài)掃描的方法實(shí)現(xiàn)數(shù)碼管顯示
- wei1=0;
- delay(1);
- wei1=1;
-
- P0=tabledp[ge];
- wei2=0;
- delay(1);
- wei2=1;
-
- ……………………
- …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼
所有資料51hei提供下載:
http://www.zg4o1577.cn/bbs/dpj-41282-1.html
|
|