|
基于51單片機的煙霧報警器
0.png (67.92 KB, 下載次數: 95)
下載附件
2016-6-23 23:04 上傳
- #include <reg52.h>
- #include <intrins.h>
- sfr P1ASF = 0x9D;
- sfr ADC_CONTR = 0XBC;
- sfr ADC_RES = 0xBD;
- sfr ADC_RESL = 0xBE;
- void adc_init()
- {
- P1ASF=0x03;//選擇adc通道為p1.0
- ADC_RES=0;
- ADC_RESL=0;
- //ADC_POWER=1; CHS2,1,0為0,用p1.0作為輸入。SPEED1,0為0,540個時鐘,
- ADC_CONTR=0x80;
- }
- unsigned int read_adc1()
- {
- unsigned int ywdata;
- ADC_RES=0;
- ADC_RESL=0;
- ADC_CONTR=0x88;//開啟adc測量
- _nop_();
- _nop_();
- _nop_();
- _nop_();
- while(!(ADC_CONTR & 0X10));//查詢數據標志位
- ADC_CONTR &= ~0X10; //軟件清0
- ywdata |= ADC_RES;
- ywdata <<= 2;
- ywdata |= ADC_RESL;
- ADC_CONTR&=0x7f; //關閉電源
- return ywdata;
- }
- unsigned int read_adc2()
- {
- unsigned int ywdata;
- ADC_RES=0;
- ADC_RESL=0;
- ADC_CONTR=0x89;//開啟adc測量
- _nop_();
- _nop_();
- _nop_();
- _nop_();
- while(!(ADC_CONTR & 0X10));//查詢數據標志位
- ADC_CONTR &= ~0X10; //軟件清0
- ywdata |= ADC_RES;
- ywdata <<= 2;
- ywdata |= ADC_RESL;
- ADC_CONTR&=0x7f; //關閉電源
- return ywdata;
- }
復制代碼
完整的資料下載:
http://www.zg4o1577.cn/bbs/dpj-52471-1.html
|
-
-
源程序.rar
2016-6-22 17:01 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
50.68 KB, 下載次數: 37, 下載積分: 黑幣 -5
|