|
//雖然能一秒顯示一個(gè)數(shù),但是2位7段數(shù)碼管還是不會(huì)用 。本來是想實(shí)現(xiàn)24秒,晚上18點(diǎn)到第二天6點(diǎn)路燈打開,用24秒代替24時(shí)顯示出來。還有單片機(jī)內(nèi)部的AD轉(zhuǎn)換,,能夠用LCD顯示出光照強(qiáng)度。(本來應(yīng)該是用LCD全部一起顯示出來的 )感覺實(shí)在不會(huì)
- #include<reg52.h>
- #define uchar unsigned char
- #define uint unsigned int
- sbit duan=P2^6;
- sbit wei=P2^7;
- uchar code table[]={0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xfe,0xe6};
- //顯示0,1,2,3,4,5,6,7,8,9 共陰取反
- uchar num;
- void delay(uint);
- void delay(uint xms)
- {
- uint i,j;
- for(i=xms;i>0;i--)
- for(j=110;j>0;j--);
- }
- void main()
- {
- while(1)
- {
- for(num=0;num<24;num++)
- {
- int a,b;
- a=num%10;
- b=num/10;
- duan=1;
- P0=~table[b];
- delay(500);
- duan=0;
- P0=~0xff;
- wei=1;
- P0=~table[a];
- delay(500);
- wei=0;
- if(num>6&&num<18)
- {P1=0xff;}
- else
- {P1=0x00;}
- }
-
- }
-
- }
復(fù)制代碼
|
|