- #include <reg52.h>
- #include <intrins.h>
- #define uchar unsigned char // 以后unsigned char就可以用uchar代替
- #define uint unsigned int //以后unsigned int 就可以用uint 代替
- sbit LED = P1^0; // 模式指示燈,亮是自動模式,滅是手動模式
- sbit Lamp = P1^4; // 臺燈控制引腳
- sbit Key1 = P1^1; // 按鍵1,模式切換按鍵
- sbit Key2 = P1^2; // 按鍵2,亮度減少按鍵
- sbit Key3 = P1^3; // 按鍵3,亮度增加按鍵
- sbit ADC_CS = P2^3; //ADC0832的CS引腳
- sbit ADC_CLK = P2^0; // ADC0832的CLK引腳
- sbit ADC_DAT = P2^1; // ADC0832的DI/DO引腳
- sbit Module = P2^2; // 人體紅外檢測模塊
- uchar gCount=0; // 全局計數變量
- uchar gIndex; // 亮度變量,0是最暗,9是最亮,一共10檔
- uint gTime=0; //計時變量,用于計時多久沒檢測到有人
- /*********************************************************/
- // 毫秒級的延時函數,time是要延時的毫秒數
- /*********************************************************/
- void DelayMs(uint time)
- {
- uinti,j;
- for(i=0;i<time;i++)
- for(j=0;j<112;j++);
- }
- /*********************************************************/
- // ADC0832的時鐘脈沖
- /*********************************************************/
- void WavePlus()
- {
- _nop_();
- ADC_CLK= 1;
- _nop_();
- ADC_CLK= 0;
- }
復制代碼
|