資源簡介
STM32用IIC總線讀取BQ76930芯片電壓電流溫度值,支持20串級聯采集
1、6節鋰電池電壓,電流,溫度,SOC測量
2、實現過壓,欠壓,過流,短路保護,高溫保護,低溫保護;
3、BQ76930支持芯片內部被動均衡。
1、6節鋰電池電壓,電流,溫度,SOC測量
2、實現過壓,欠壓,過流,短路保護,高溫保護,低溫保護;
3、BQ76930支持芯片內部被動均衡。

代碼片段和文件信息
#include?“BQ76930.h“
#include?“SYSTICK.h“?
#include?“i2c.h“
#include?“i2c1.h“
#include?“i2c2.h“
#include?“usart.h“
#include?“math.h“
#include?“string.h“
#include?“IO_CTRL.h“
#include?“usart2.h“
/*****************************
file:BQData.c
decription:
???1.采集BQ76930的14位ADC的增益和偏置電壓:void?get_offset(void)
???2.采集單體電壓:void?Get_Batteryx(void)其中x取值1-10;
???3.BQ76930初始化?void?BQ_config(void)
???4.讀取BQ76930寄存器值:?void?readbqstate(void)
???5.
******************************/
/***********************
fuction:void?get_offset(void)
************************/
int?ADC_offsetGAIN;
float?ADC_GAIN?=?0;
void?Get_offset(void)
{
?unsigned?char?gain[2];
?
?gain[0]=IIC1_read_one_byte(ADCGAIN1);//ADC_GAIN1
?gain[1]=IIC1_read_one_byte(ADCGAIN2);//ADC_GAIN2
?ADC_GAIN?=?((gain[0]&0x0c)<<1)+((gain[1]&0xe0)>>5);//12uV
?ADC_offset=IIC1_read_one_byte(ADCOFFSET);//45mV
?GAIN?=?365+ADC_GAIN;//GAIN=377uV
}
/****************************************
fuction:?void?Get_Battery1(void)
description:獲取第1號單體電池電壓
Parameters:batterylval[0]battery1val[1];
******************************************/
void?BQ76930_config(void)
{
??WAKE_ALL_DEVICE();?
????BQ_1_2_config();
??Get_offset();
????OV_UV_1_2_PROTECT();
????OCD_SCD_PROTECT();??
??Open_DSG_CHG();??
?
??IIC1_write_one_byte_CRC(SYS_STAT0xFF);??
}
void?BQ_1_2_config(void)
{
????BQ_1_config();//
}
void?OV_UV_1_2_PROTECT(void)
{
????OV_UV_1_PROTECT();
??//OV_UV_2_PROTECT();
}
void?WAKE_ALL_DEVICE(void)
{
????MCU_D_POWER_ONOFF(1);
??MCU_KZ_QB_POWER_ONOFF(1);
??MCU_WAKE_BQ_ONOFF(1);
??delay_ms(100);
??MCU_WAKE_BQ_ONOFF(0); ?
}
void?SHIP_ALL_DEVICE(void)
{
IIC1_write_one_byte_CRC(SYS_STAT0xFF);
IIC2_write_one_byte_CRC(SYS_STAT0xFF);
??SHIP_1_BQ769();?
??SHIP_2_BQ769();
??MCU_KZ_QB_POWER_ONOFF(0);
??//MCU_D_POWER_ONOFF(0);
}
?int?Batteryval[50]={0};
unsigned?char?shang[50]={0xAA0x01};
unsigned?char?shang1[50]={0xAA0x02};
?void?Get_Battery1(void)
{
??unsigned?int?readbattbuf[2];
??unsigned?int?battery1val[2];
??short?batteryval1;
??readbattbuf[1]?=?IIC1_read_one_byte(0x0c);
??readbattbuf[0]?=?IIC1_read_one_byte(0x0d);
?
??batteryval1=?readbattbuf[1];
??batteryval1=?(batteryval1?<8)?|readbattbuf[0];
??batteryval1=((batteryval1*GAIN)/1000)+ADC_offset;//單體電壓計算公式,第1串
??Batteryval[0]=batteryval1;
??battery1val[1]=(char)(batteryval1?>>?8);
??battery1val[0]=(char)(batteryval1?&?0x00FF);
shang[2]=battery1val[1];
shang[3]=battery1val[0];
//printf(“%d\n“batteryval1);
}
/****************************************
fuction:?void?Get_Battery2(void)
description:獲取第2號單體電池電壓
Parameters:battery2val[0]battery2val[1];
******************************************/
void?Get_Battery2(void)
{
?
??char?readbattbuf[2];
??int?batteryval2;
??short?battery2val[2];
??readbattbuf[1]=IIC1_read_one_byte(0x0e);
??readbattbuf[0]=IIC1_read_one_byte(0x0f);
?
??batteryval2=?readbattbuf[1];
??batteryval2=?(batteryval2?<
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????36542??2019-12-09?22:46??BMS\BMS——測試程序\BMS_s930\BSP\BQ76930.c
?????文件???????4532??2020-01-03?21:35??BMS\BMS——測試程序\BMS_s930\BSP\BQ76930.h
?????文件???????7678??2019-04-02?15:38??BMS\BMS——測試程序\BMS_s930\BSP\i2c.c
?????文件???????2076??2019-03-28?11:44??BMS\BMS——測試程序\BMS_s930\BSP\i2c.h
?????文件???????7704??2019-04-08?12:55??BMS\BMS——測試程序\BMS_s930\BSP\i2c1.c
?????文件???????2004??2020-01-07?20:03??BMS\BMS——測試程序\BMS_s930\BSP\i2c1.h
?????文件???????7334??2019-04-07?13:14??BMS\BMS——測試程序\BMS_s930\BSP\i2c2.c
?????文件???????1965??2019-04-07?13:14??BMS\BMS——測試程序\BMS_s930\BSP\i2c2.h
?????文件???????4371??2019-11-21?23:15??BMS\BMS——測試程序\BMS_s930\BSP\IO_CTRL.c
?????文件???????2530??2019-11-18?20:57??BMS\BMS——測試程序\BMS_s930\BSP\IO_CTRL.h
?????文件???????2488??2019-04-17?14:35??BMS\BMS——測試程序\BMS_s930\BSP\led.c
?????文件???????1142??2019-04-17?09:17??BMS\BMS——測試程序\BMS_s930\BSP\led.h
?????文件???????3374??2019-04-25?11:58??BMS\BMS——測試程序\BMS_s930\BSP\spi.c
?????文件????????746??2019-04-25?10:10??BMS\BMS——測試程序\BMS_s930\BSP\spi.h
?????文件???????1088??2019-04-17?13:14??BMS\BMS——測試程序\BMS_s930\BSP\systick.c
?????文件????????167??2019-04-16?15:58??BMS\BMS——測試程序\BMS_s930\BSP\systick.h
?????文件???????6952??2019-04-19?11:40??BMS\BMS——測試程序\BMS_s930\BSP\timer.c
?????文件????????237??2019-04-17?17:37??BMS\BMS——測試程序\BMS_s930\BSP\timer.h
?????文件???????9380??2019-07-06?11:55??BMS\BMS——測試程序\BMS_s930\BSP\usart.c
?????文件????????300??2019-09-24?11:18??BMS\BMS——測試程序\BMS_s930\BSP\usart.h
?????文件??????15183??2019-09-24?22:26??BMS\BMS——測試程序\BMS_s930\BSP\usart2.c
?????文件???????2384??2018-08-14?08:42??BMS\BMS——測試程序\BMS_s930\BSP\usart2.h
?????文件???????9502??2019-04-25?11:19??BMS\BMS——測試程序\BMS_s930\BSP\w25qxx.c
?????文件???????2579??2019-04-25?10:14??BMS\BMS——測試程序\BMS_s930\BSP\w25qxx.h
?????文件???????1120??2012-09-13?21:57??BMS\BMS——測試程序\BMS_s930\BSP\wdg.c
?????文件????????601??2019-04-19?11:33??BMS\BMS——測試程序\BMS_s930\BSP\wdg.h
?????文件???????1354??2011-04-04?19:03??BMS\BMS——測試程序\BMS_s930\config\stm32f10x_flash.icf
?????文件???????1422??2011-04-04?19:03??BMS\BMS——測試程序\BMS_s930\config\stm32f10x_flash_extsram.icf
?????文件???????1355??2011-04-04?19:03??BMS\BMS——測試程序\BMS_s930\config\stm32f10x_nor.icf
?????文件???????1354??2011-04-04?19:03??BMS\BMS——測試程序\BMS_s930\config\stm32f10x_ram.icf
............此處省略337個文件信息
- 上一篇:xfeatures2d.rar
- 下一篇:智能家居app
評論
共有 條評論