資源簡介
模數轉換器ADS1252 的參考程序。C語言,適用于c51系列的單片機。
代碼片段和文件信息
//ADS1252?參考程序?(2007-08-09?23:57:08)
?
#include?
#include?
#include?
#define?uint?unsigned?int
#define?uchar?unsigned?char
sbit?CPU_CLK=P1^0;
sbit?SCLK=P3^5;
sbit?Dout=P3^3;
//24位的數據分別存放于ads_data3/ads_data2/ads_data1
unsigned?char?idata?ads_data3;?//define?variable?in?internal?RAM
unsigned?char?idata?ads_data2;?//define?variable?in?internal?RAM
unsigned?char?idata?ads_data1;?//define?variable?in?internal?RAM
void?Read_chip(void);
void?main(void)
{
unsigned?long?int?a=0;
uint?j=0;
while(1)
{
_nop_();
Read_chip();
?
UART_init();???????//初始化串口
??if(point==10)???????//判斷數據是否接收完成
??checkdata=CLU_checkdata;????//調用求校驗和函數
??if(checkdata==buffer[9])????????//判斷校驗和是否正確
??COM_send();
????????????????????//正確則調用發送程序
point=0;
?
a+=ads_data3;
a=(a<<8);
a+=ads_data2;
a=(a<<8);
a+=ads_data1;
_nop_();
}
}
void?Read_chip(void)
{
unsigned?char?data?i;
unsigned?char?data?temp1;
//?temp1=0x01;
temp1=0x80;
SCLK=0;
CPU_CLK=0;
//DRDY?模式
for(i=0;i<48;i++)?CPU_CLK=~CPU_CLK;?//t4
for(i=0;i<12;i++)?CPU_CLK=~CPU_CLK;?//t2
for(i=0;i<12;i++)?CPU_CLK=~CPU_CLK;?//t3
評論
共有 條評論