資源簡介
通過zigbee 進行網絡連接 檢測環境大氣質量 工程有源碼可直接使用

代碼片段和文件信息
#include?“reg51.h“
#include?“intrins.h“
#include?“ADC.h“
/*Declare?SFR?associated?with?the?ADC?*/
sfr?ADC_CONTR???=???0xBC;???????????//ADC?control?register
sfr?ADC_RES?????=???0xBD;???????????//ADC?high?8-bit?result?register
sfr?ADC_LOW2????=???0xBE;???????????//ADC?low?2-bit?result?register
sfr?P1ASF???????=???0x9D;???????????//P1?secondary?function?control?register
/*Define?ADC?operation?const?for?ADC_CONTR*/
#define?ADC_POWER???0x80????????????//ADC?power?control?bit
#define?ADC_FLAG????0x10????????????//ADC?complete?flag
#define?ADC_START???0x08????????????//ADC?start?control?bit
#define?ADC_SPEEDLL?0x00????????????//420?clocks
#define?ADC_SPEEDL??0x20????????????//280?clocks
#define?ADC_SPEEDH??0x40????????????//140?clocks
#define?ADC_SPEEDHH?0x60????????????//70?clocks
//void?InitADC();
//BYTE?GetADCResult(BYTE?ch);
//void?Delay(WORD?n);
/*----------------------------
Software?delay?function
----------------------------*/
void?Delay(WORD?n)
{
????WORD?x;
????while?(n--)
????{
????????x?=?5000;
????????while?(x--);
????}
}
/*----------------------------
Initial?ADC?sfr
----------------------------*/
void?InitADC()
{
????P1ASF?=?0x12;???????????????????//Open?0001?0010?channels?ADC?function?
????ADC_RES?=?0;????????????????????//Clear?previous?result
????ADC_CONTR?=?ADC_POWER?|?ADC_SPEEDLL;
????Delay(2);???????????????????????//ADC?power-on?and?delay
}
/*----------------------------
Get?ADC?result
----------------------------*/
uint?Get_ADC_Result(uchar?ch)
{
????ADC_CONTR?=?ADC_POWER?|?ADC_SPEEDLL?|?ADC_START?|?ch?;//開始轉換
????_nop_();??????????????????????????//延時一個機器周期
????_nop_();????????//延時一個機器周期
????_nop_();????????//延時一個機器周期
????_nop_();????????//延時一個機器周期
????while?(!(ADC_CONTR?&?ADC_FLAG));??//等待轉換結束(ADC_FLAG=0時一直等待,直到變為1跳出)
????ADC_CONTR?&=?~ADC_FLAG;???????????//關閉AD轉換
????return?(ADC_RES*4+ADC_LOW2);????????????//返回數據(10位AD值,ADC_RES高8位+ADC_RESL低2位)
}
//自定義計算AD采樣值函數?數字量最大值500
int?Count(uchar?ch)
{
int?xdata?temp_arr1[10]={0}change;
int?temp=0;//自定義?ADC采樣取均值,確保精度
uchar?ij;
for(i=0;i<10;i++)
{
?temp_arr1[i]=(long?int)Get_ADC_Result(ch)*500/1024;?//4.85為參考電壓,1024個“門”,10位AD
}
for(i=0;i<10;i++)
{
for(j=0;j<10-i-1;j++)
{
if(temp_arr1[j]>temp_arr1[j+1])
{
change=temp_arr1[j];
temp_arr1[j]=temp_arr1[j+1];
temp_arr1[j+1]=change;
}
}
}
for(i=3;i<7;i++)
temp+=temp_arr1[i];
temp/=4;
return?temp;//三位?0.00
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????2614??2017-09-29?10:36??ZIgbee_PM2.5\CODE_R主機協調器\BSP\ADC.c
?????文件????????229??2017-09-29?10:14??ZIgbee_PM2.5\CODE_R主機協調器\BSP\ADC.h
?????文件????????477??2017-09-29?14:49??ZIgbee_PM2.5\CODE_R主機協調器\BSP\delay.c
?????文件????????128??2017-09-29?14:27??ZIgbee_PM2.5\CODE_R主機協調器\BSP\delay.h
?????文件???????5953??2017-09-29?17:31??ZIgbee_PM2.5\CODE_R主機協調器\BSP\lcd1602.c
?????文件???????3433??2017-09-29?17:31??ZIgbee_PM2.5\CODE_R主機協調器\BSP\lcd1602.h
?????文件???????1321??2017-09-29?15:04??ZIgbee_PM2.5\CODE_R主機協調器\BSP\UART.c
?????文件????????491??2017-09-29?10:50??ZIgbee_PM2.5\CODE_R主機協調器\BSP\UART.h
?????文件???????4513??2017-09-29?11:29??ZIgbee_PM2.5\CODE_R主機協調器\BSP\ZigBee.c
?????文件????????816??2017-09-29?11:25??ZIgbee_PM2.5\CODE_R主機協調器\BSP\ZigBee.h
?????文件???????4935??2017-09-29?10:36??ZIgbee_PM2.5\CODE_R主機協調器\Listings\ADC.lst
?????文件???????1872??2017-09-29?14:49??ZIgbee_PM2.5\CODE_R主機協調器\Listings\delay.lst
?????文件??????10671??2017-09-29?17:31??ZIgbee_PM2.5\CODE_R主機協調器\Listings\lcd1602.lst
?????文件???????1849??2017-09-29?19:55??ZIgbee_PM2.5\CODE_R主機協調器\Listings\main.lst
?????文件??????32117??2017-09-29?19:55??ZIgbee_PM2.5\CODE_R主機協調器\Listings\PH.m51
?????文件???????3086??2017-09-29?17:31??ZIgbee_PM2.5\CODE_R主機協調器\Listings\UART.lst
?????文件???????7747??2017-09-29?17:31??ZIgbee_PM2.5\CODE_R主機協調器\Listings\ZigBee.lst
?????文件???????5681??2017-09-29?10:36??ZIgbee_PM2.5\CODE_R主機協調器\ob
?????文件????????138??2017-09-29?10:36??ZIgbee_PM2.5\CODE_R主機協調器\ob
?????文件???????2464??2017-09-29?14:49??ZIgbee_PM2.5\CODE_R主機協調器\ob
?????文件????????144??2017-09-29?14:49??ZIgbee_PM2.5\CODE_R主機協調器\ob
?????文件???????9691??2017-09-29?17:31??ZIgbee_PM2.5\CODE_R主機協調器\ob
?????文件????????150??2017-09-29?17:31??ZIgbee_PM2.5\CODE_R主機協調器\ob
?????文件???????7913??2017-09-29?19:55??ZIgbee_PM2.5\CODE_R主機協調器\ob
?????文件??????42636??2017-09-29?19:55??ZIgbee_PM2.5\CODE_R主機協調器\ob
?????文件???????1466??2017-09-29?20:10??ZIgbee_PM2.5\CODE_R主機協調器\ob
?????文件???????8489??2017-09-29?19:55??ZIgbee_PM2.5\CODE_R主機協調器\ob
?????文件????????205??2017-09-29?19:55??ZIgbee_PM2.5\CODE_R主機協調器\ob
?????文件???????9191??2017-09-29?17:31??ZIgbee_PM2.5\CODE_R主機協調器\ob
?????文件??????11664??2017-09-29?17:31??ZIgbee_PM2.5\CODE_R主機協調器\ob
............此處省略84個文件信息
評論
共有 條評論