⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ad7705.c

📁 温度仪表软件
💻 C
字号:
#include "reg52.h"
#include "intrins.h"


#include "my_type.h"

#include "function.h"
#include"global_var.h"	   
#include"interface.h"

/*ad7705初始化*/
void ad7705_init()
{
	AD7705_RESET = 0;
	delay(5);//有效复位AD7705
	AD7705_RESET = 1;
	_nop_();
	
	ad7705_write(0x10);//写设置寄存器
	ad7705_write(0x44);//自校准,增益为1,单极性,无缓冲模式

	ad7705_write(0x20);//写时钟寄存器
	ad7705_write(0x40);//                                                                                                                                                                                                                                                                                                                                             

}	
	
/*ad7705写状态寄存器*/
void ad7705_write(uchar ad_word)
{
	uchar i;
	for(i=0x80;i>=0x01;i>>=1)
	{		
		AD7705_SCLK = 0;
		if(0==(ad_word&i))
			AD7705_DIO = 0;
		else
			AD7705_DIO = 1;
		AD7705_SCLK = 1;//写脉冲
	}
	AD7705_DIO = 1;//拉高防干扰
}

/*ad7705读数据寄存器*/
uint ad7705_read()
{
	uchar i;
	uint ad_data = 0;	
	ad7705_write(0x38);
	for(i=0;i<16;i++)
	{	
		AD7705_SCLK = 0; 
			ad_data<<=1;
		if(1 == AD7705_DIO)
			ad_data++;
		AD7705_SCLK = 1;//读脉冲			
	}							  
	AD7705_DIO = 1;//拉高防干扰
	return ad_data;
}
/*uint filter()
{
	uint a[8];
	uint i,ad_zhi;
	for(i=0;i<8;i++)
	{
		a[i]=ad7705_read();
		_nop_(); 
		 ad_zhi+=a[i];
	}

	  ad_zhi=ad_zhi/8;
	  return ad_zhi;
}  */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -