欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
STM32F103C8T6驅動ADS1115讀取獲得數據 源程序
[打印本頁]
作者:
1017720528
時間:
2021-2-21 12:39
標題:
STM32F103C8T6驅動ADS1115讀取獲得數據 源程序
ADS1115.C
#include "ads1115.h"
#include "usart.h"
#include "myiic.h"
#include "delay.h"
unsigned int Config;
unsigned char Writebuff[4],Readbuff[3];
unsigned int Result[2];
unsigned long ADC_DAT;
void ads_write(void)
{
IIC_Start();
/*寫地址ads1115*/
IIC_Send_Byte(Writebuff[0]);
IIC_Wait_Ack();
delay_ms(20);
/*寫ADS1115數據,用pointer寄存器來配置config寄存器*/
IIC_Send_Byte(Writebuff[1]);
IIC_Wait_Ack();
delay_ms(20);
/*寫ADS1115數據,寫config寄存器高位*/
IIC_Send_Byte(Writebuff[2]);
IIC_Wait_Ack();
delay_ms(20);
/*寫ADS1115數據,寫config寄存器低位*/
IIC_Send_Byte(Writebuff[3]);
IIC_Wait_Ack();
delay_ms(20);
IIC_Stop();
}
void ads_read(void)
{
IIC_Start();
/*寫地址ads1115*/
IIC_Send_Byte(Readbuff[0]);
IIC_Wait_Ack();
delay_ms(20);
IIC_Send_Byte(Readbuff[1]);
IIC_Wait_Ack();
delay_ms(20);
IIC_Stop();
IIC_Start();
IIC_Send_Byte(Readbuff[2]);
IIC_Wait_Ack();
delay_ms(20);
Result[0] = IIC_Read_Byte(1);
delay_ms(20);
Result[1] = IIC_Read_Byte(1);
delay_ms(20);
IIC_Stop();
}
//**********************************************
//unsigned char Write_N_Byte(unsigned char *writebuffer,unsigned char n)
//{
// uint i;
//
// for(i=0;i<n;i++)
// {
// Write_1_Byte(*writebuffer);
// if(Check())
// {
// writebuffer ++;
// }
// else
// {
// Stop();
// return FALSE;
// }
// }
//
// Stop();
// return TRUE;
//}
//**********************************************
//void Read_N_Byte(unsigned int*readbuff, unsigned char n)
//{ uchar i;
// for(i=0;i<n;i++)
// {
// readbuff[i]=Read_1_Byte();
// if(i==n-1)
// NACK(); //不連續讀字節
// else
// ACK(); //連續讀字節
// }
// Stop();
//}
//**********************************************
void InitADS1115(uchar S_MUX_0, uchar S_MUX_1)
{
if (S_MUX_0 == 0 && S_MUX_1 == 0) //AIN0
Config = OS+MUX_A0+PGA+DR+COMP_QUE+MODE;
if (S_MUX_0 == 0 && S_MUX_1 == 1) //AIN1
Config = OS+MUX_A1+PGA+DR+COMP_QUE+MODE;
if (S_MUX_0 == 1 && S_MUX_1 == 0) //AIN2
Config = OS+MUX_A2+PGA+DR+COMP_QUE+MODE;
if (S_MUX_0 == 1 && S_MUX_1 == 1) //AIN3
Config = OS+MUX_A3+PGA+DR+COMP_QUE+MODE;
Writebuff[0]=ADDRESS_W;
Writebuff[1]=Pointer_1;
Writebuff[2]=Config/256;
Writebuff[3]=Config%256;
Readbuff[0]=ADDRESS_W;
Readbuff[1]=Pointer_0;
Readbuff[2]=ADDRESS_R;
}
//**********************************************
//void WriteWord(void)
//{
//uint t;
//Start(); //寫入4個字節
// do
// {
// t=Write_N_Byte(Writebuff,4);
// printf("1\r\n");
// }while(t==0);
//}
//**********************************************
//void ReadWord(void)
//{
//int t;
// Start(); //寫入2個字節
// do
// {
// t=Write_N_Byte(Readbuff,2);
// }while(t==0);
// Start();
////寫入2個字節
// do
// {
// t=Write_N_Byte(&Readbuff[2],1);
// }while(t==0);
// Read_N_Byte(Result,2); //讀出2個字節
// }
//**********************************************
void ADS1115(uchar S_MUX_0, uchar S_MUX_1)
{
InitADS1115(S_MUX_0, S_MUX_1);
ads_write();
ads_read();
//WriteWord();
//ReadWord();
}
復制代碼
STM32_ADS1115 測試成功.7z
2021-2-21 15:16 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
190.83 KB, 下載次數: 253, 下載積分: 黑幣 -5
IIC通訊成功
作者:
gkw222
時間:
2021-11-20 13:51
謝謝樓主分享的代碼,下載測試驗證無問題,樓主辛苦!
作者:
gkw222
時間:
2021-11-20 13:53
感謝樓主分享的代碼,下載測試驗證一切正常,樓主辛苦了!
作者:
寂靜
時間:
2023-7-28 14:36
為啥寄存器轉換結果的值一直是65535?
使用的是ST6M32F103ZET6
作者:
xxjs120
時間:
2024-6-23 14:49
根本不能用,串口數據一直的65535
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1