资源简介
STM32驱动AD7175源码.rar
调用方法不明白可以看我帖子
http://bbs.elecfans.com/jishu_1719716_1_1.html
里面也有我QQ
调用方法不明白可以看我帖子
http://bbs.elecfans.com/jishu_1719716_1_1.html
里面也有我QQ
代码片段和文件信息
#include “ad7172.h“
#include “delay.h“
//uint8_t DataRead[4];
void AD_Delay(void)
{
uint8_t i = 1j;
for(j=0; j}
long ReadAD7172()
{
long d = 0;
uint8_t i = 0;
for(i = 0; i < 24; i++)
{
d <<= 1;
SCLK_L;
AD_Delay();
if(DOUT_HorL)
d |= 0x00000001;
else
d &= 0xFFFFFFFE;
SCLK_H;
AD_Delay();
}
// if(a == BIPOLAR)
// {
if(d < 0x800000)
d = -(0x800000 - d); // 是负数变成补码
else
d &= 0x007FFFFF;
// }
// result = d;
return d;
}
uint8_t ReadAD7172_8B()
{
uint8_t d = 0;
uint8_t i = 0;
// while(DOUT_HorL);
// CS_L;
for(i = 0; i < 8; i++)
{
d <<= 1;
SCLK_L;
AD_Delay();
if(DOUT_HorL)
d |= 0x01;
else
d &= 0xFE;
SCLK_H;
AD_Delay();
}
return d;
}
/******************************************************************
*函数描述:写AD7714
*局部变量:
*返回变量:
******************************************************************/
void WriteAD7172_8Bit(uint8_t d)
{
uint8_t i = 0;
for(i = 0; i < 8; i++)
{
SCLK_L;
AD_Delay();
if(d & 0x80)
DIN_H;
else
DIN_L;
SCLK_H;
AD_Delay();
d <<= 1;
}
DIN_H;
}
void AD7172_Reset(void)
{
unsigned char i=0;
SCLK_H;
CS_L;
DIN_H;
for(i=0; i < 12; i++)
{
WriteAD7172_8Bit(0xFF);
}
CS_H;
}
/******************************************************************
*函数描述:初始化AD7714电压测量AIN2通道
*局部变量:
*返回变量:
******************************************************************/
void InitAD7172_V(u8 sample)
{
uint32_t i;
AD7172_Reset();
delay_us(200);
//7175 可用
CS_L;
WriteAD7172_8Bit(0x01);
WriteAD7172_8Bit(0x00);
WriteAD7172_8Bit(0x0C);
CS_H;
CS_L;
WriteAD7172_8Bit(0x02);
WriteAD7172_8Bit(0x08);
WriteAD7172_8Bit(0x00);
CS_H;
CS_L;
WriteAD7172_8Bit(0x10); //选择通道0的 AN0 AN1
WriteAD7172_8Bit(0x80);
WriteAD7172_8Bit(0x01);
CS_H;
CS_L;
WriteAD7172_8Bit(0x20);
WriteAD7172_8Bit(0x1C);
WriteAD7172_8Bit(0x00);
CS_H;
CS_L;
WriteAD7172_8Bit(0x28); //选择滤波频率
WriteAD7172_8Bit(0x00);
WriteAD7172_8Bit(sample); //?为05的时候可以50k 00的时候反而不行 原因未知
CS_H;
//连续采集
CS_L;
WriteAD7172_8Bit(0x02);
WriteAD7172_8Bit(0x00);
WriteAD7172_8Bit(0x80);
CS_H;
DIN_H;
}
void InitAD7172_V_Nomal(u8 sample)
{
uint32_t i;
AD7172_Reset();
delay_us(200);
//7175 可用
CS_L;
WriteAD7172_8Bit(0x01);
WriteAD7172_8Bit(0x00);
WriteAD7172_8Bit(0x0C);
CS_H;
CS_L;
WriteAD7172_8Bit(0x02);
WriteAD7172_8Bit(0x00);
WriteAD7172_8Bit(0x00);
CS_H;
CS_L;
WriteAD7172_8Bit(0x10); //选择通道0的 AN0 AN1
WriteAD7172_8Bit(0x80);
WriteAD7172_8Bit(0x01);
CS_H;
CS_L;
WriteAD7172_8Bit(0x20);
WriteAD7172_8Bit(0x1F);
WriteAD7172_8Bit(0x00);
CS_H;
CS_L;
WriteAD7172_8Bit(0x28); //选择滤波频率
WriteAD7172_8Bit(0x00);
WriteAD7172_8Bit(sample);
CS_H;
// //连续采集
// CS_L;
// WriteAD7172_8Bit(0x02);
// WriteAD7172_8Bit(0x00);
// WriteAD7172_8Bit(0x80);
// CS_H;
DIN_H;
}属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3082 2019-04-26 09:26 AD7172.c
文件 11598 2019-04-26 09:43 ad7172.h
----------- --------- ---------- ----- ----
14680 2
- 上一篇:一个仿QQ的纯js+html5的聊天界面 完整
- 下一篇:三点定位算法
相关资源
- ra6963 stm32 fsmc lcd driver demo code
- STM32+ENC28J60+LWIP通过AJAX来实现的智能家
- STM32F767+lwip+freertos 通过网页API获取天
- dma+串口接收.zip
- OV7670 无fifo精英板STM32F103--精品资源
- 016_STM32程序移植之_舵机
- 024_STM32程序移植之_ESP8266_TCP
- 014_STM32程序移植之_L298N电机驱动模块
- STM32F103+SIM800C 移植MQTT 连接阿里云服务
- 021_STM32程序移植之_ESP8266连接onenet
- 018_STM32程序移植之_串口接收中文数据
- stm32f107 web server
- 013_STM32程序移植之_DS18B20
- 006_STM32程序移植之_SYN6288语音模块
- 005_STM32程序移植之_RC522读卡模块
- 004_STM32程序移植之_SHTXX
- 002_STM32程序移植之_DHT11
- 001_STM32程序移植之_DS1302
- 023_STM32PID算法程序
- 019-020STM32程序移植之_W5500连接noenet
- 5分钟用STM32的内置Flash做一个超小U盘
- STM32串口USART1的查询和中断方式程序
- STM32F103ZET6原子战舰控制步进电机驱动
- 智能车源码(STM32)
- STM32F103+SIM800C 移植MQTT 连接阿里云服务
川公网安备 51152502000135号
评论
共有 条评论