資源簡介
AD7705模數轉換模塊,51單片機使用c程序

代碼片段和文件信息
#include
sbit?ADC_DOUT=P3^0;
sbit?ADC_CLK=P3^1;
sbit?ADC_DIN=P3^2;
sbit?ADC_CS=P3^3;
sbit?ADC_DRDY=P3^4;
/****************1毫秒延時函數***********************/
void?Delay_1ms(unsigned?int?x)
{
unsigned?char?yz;
for(;x>0;x--)
{
for(z=199;z>0;z--)
{
for(y=1;y>0;y--);
}
}
}
/****************ADC7705控制命令寫入函數**********************/
void?Write_ToReg_ADC7705(unsigned?int?byteword)
{
???unsigned?int??ADC16bitToken;
???unsigned?char?i;
???ADC_CLK?=?1;?ADC_CS?=?0;
???Token?=?0x08;?ADC16bit?=?byteword;
???for(i=0;i<8;i++)?//數據位寫入
???{
?????if(ADC16bit?&?Token)
????ADC_DIN?=?1;
else
ADC_DIN?=?0;
??ADC_CLK?=?1;?ADC_CLK?=?0;?ADC_CLK?=?1;
??Token?=?Token?>>?1;
???}
???ADC_CLK?=?1;?ADC_DIN?=?1;
???
}
/*****************ADC7705初始化************************/
void?Init_AD7705(vid)
{
??unsigned?char?i;
??ADC_CLK=1;ADC_DIN=1;
??for(i=0;i<40;i++)//防止接口迷失,通信寄存器回到等待寫的狀態
??{
????ADC_CLK=0;ADC_CLK=1;
??}
??Write_ToReg_ADC7705(0x20);??///選擇通道1進行下一次寫時鐘寄存器
??Write_ToReg_ADC7705(0x06); ////寫時鐘寄存器,并設定更新速率
??Write_ToReg_ADC7705(0x10); //選擇通道1,進行下一次寫設置寄存器 ?
??Write_ToReg_ADC7705(0x5c);//寫設置寄存器,設置AD7705的極性、緩沖、增益、濾波、校準
??Delay_1ms(50);
}
/*****讀數據寄存器函數*********/
unsigned?int?ADC7705_Read_16bit_Value(unsigned?char?channel)
{
??unsigned?int?ADC16bit;
??unsigned?char?i;
??Write_ToReg_ADC7705(0x38|channel);
??while(ADC_DRDY?==?1);
??ADC_CLK?=?1;?ADC_CS?=?0;
??ADC16bit?=?0x00;
??for(i=0;i<16;i++)
??{
????ADC16bit?=?ADC16bit?<1;
ADC_CLK?=?0;
if(ADC_DOUT?==?1)
ADC16bit?=?ADC16bit|0x01;
ADC_CLK?=?1;
??}
???
??ADC_CLK?=?1;?ADC_CLK?=?1;
??return(ADC16bit);
}
void?main()
{
??while(1);
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2017-07-27?13:11??AD7705使用程序\
?????文件?????????655??2017-07-27?12:21??AD7705使用程序\AD7705.hex
?????文件??????????61??2017-07-27?12:21??AD7705使用程序\AD7705.lnp
?????文件????????7837??2017-07-27?12:21??AD7705使用程序\AD7705.M51
?????文件????????9639??2017-07-27?12:55??AD7705使用程序\AD7705.plg
?????文件???????55658??2017-07-27?13:11??AD7705使用程序\AD7705.uvopt
?????文件???????13406??2017-07-27?13:11??AD7705使用程序\AD7705.uvproj
?????文件???????????0??2017-07-27?09:17??AD7705使用程序\AD7705_uvproj.bak
?????文件????????1811??2017-07-27?12:55??AD7705使用程序\ADC7705.c
?????文件????????4079??2017-07-27?12:55??AD7705使用程序\ADC7705.LST
?????文件????????4239??2017-07-27?12:55??AD7705使用程序\ADC7705.OBJ
?????文件????????6376??2009-05-07?14:37??AD7705使用程序\STARTUP.A51
?????文件???????14067??2017-07-27?12:21??AD7705使用程序\STARTUP.LST
?????文件?????????749??2017-07-27?12:21??AD7705使用程序\STARTUP.OBJ
- 上一篇:GSD嘉年華_使用LabVIEW實現網頁數據提取與交互
- 下一篇:att48數據集
評論
共有 條評論