


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、LTC2943-具温度、电压和电流测量功能的多节电池电量测量芯片特点可测量累积的电池充电和放电电量至20V工作范围可适合多种电池应用14位ADC负责测量电池电压、电流和温度1%电压、电流和充电准确度=t50mV检测电压范围高压侧检测适合任何电池化学组成和容量的通用测量I2C/SMBus接口可配置警报输出/充电完成输入静态电流小于120卩A小外形8引脚3mmx3mmDFN圭寸装典型应用3.3VCHARGERDD卩P2kLTC2943SENSE+ALCCSDASENSE-SCLGNDTMULTICElI三LI-ION1ALOADTotalChargeErrorvsDifferentialSense
2、VoltageOJ110100sense(mV)294aTAOIt描述LTC?2943?可测量便携式产品应用中的电池充电状态、电池电压、电池电流及其自身温度。其具有宽输入电压范围,因而可与高达?20V?的多节电池配合使用。一个精准的库仑计量器负责对流经位于电池正端子和负载或充电器之间的一个检测电阻器电流进行积分运算。电池电压、电流和温度利用一个内部?14位无延迟增量累加?(NoLatency男)ADC?来测量。测量结果被存储于可通过内置?I2C/SMBus?接口进行存取的内部寄存器中。LTC2943?具有针对所有?4?种测量物理量的可编程高门限和低门限。如果超过了某个编程门限,则该器件将采用?
3、SMBus?警报协议或通过在内部状态寄存器中设定一个标记来传送警报信号。LTC2943?仅需采用单个低阻值检测电阻器以设定测量电流范围。应用电动工具电动自行车便携式医疗设备视频摄像机程序:#inelude<>#inelude<>#include""#include""#include""#include""#include""#include<>00;CheckI2CAddress."Sharedbetweenloop()andrestore_ale
4、rt_settings().nPleaseensureI2ClinesofLinduinoareconnectedtotheLTCdevice");(ack_error);(F("*");print_prompt();*n");(F("*Setthebaudrateto115200andselectthenewlineterminator.*n");(F("*n");n");int8_tmenu_1_automatic_mode(int8_tmAh_or_Coulombs,int8_tcelcius_or
5、_kelvin,uint16_tprescalar_mode,uint16_tprescalarValue,uint16_talcc_mode)0=acknowledge,1=8_tLTC2943_mode;int8_tack=0;LTC2943_mode=LTC2943_AUTOMATIC_MODE|prescalar_mode|alcc_mode;();ack|=LTC2943_write(LTC2943_I2C_ADDRESS,LTC2943_CONTROL_REG,LTC2943_mode);("Coulombs:");(charg
6、e,4);(F("Cn");elsecharge=LTC2943_code_to_mAh(charge_code,resistor,prescalarValue);("mAh:");(charge,4);(F("mAhn");current=LTC2943_code_to_current(current_code,resistor);IfanAlerthasbeenset,printoutappropriatemessageintheSerialPrompt.(F("m-MainMenunn");();delay(
7、AUTOMATIC_MODE_DISPLAY_DELAY);read_int();0=acknowledge,1=noacknowledgeint8_tLTC2943_mode;int8_tack=0;LTC2943_mode=LTC2943_SCAN_MODE|prescalar_mode|alcc_mode;();ack|=LTC2943_write(LTC2943_I2C_ADDRESS,LTC2943_CONTROL_REG,LTC2943_mode);("Coulombs:");(charge,4);(F("Cn");elsecharge=LT
8、C2943_code_to_mAh(charge_code,resistor,prescalarValue);("mAh:");(charge,4);(F("mAhn");current=LTC2943_code_to_current(current_code,resistor);(F("Temperature");(temperature,4);(F("Kn");elsetemperature=LTC2943_code_to_celcius_temperature(temperature_code);(F(&qu
9、ot;Temperature");(temperature,4);(F("Cn");checkAlerts(status_code);IfanAlerthasbeenset,printoutappropriatemessageintheSerialPrompt(F("m-MainMenunn");();delay(SCAN_MODE_DISPLAY_DELAY);while()=false|(ack);read_int();0=acknowledge,1=noacknowledgeint8_tLTC2943_mode;int8_tack=0;L
10、TC2943_mode=LTC2943_MANUAL_MODE|prescalar_mode|alcc_mode;();ack|=LTC2943_write(LTC2943_I2C_ADDRESS,LTC2943_CONTROL_REG,LTC2943_mode);Whensetto1itindicatesthatstaledataisbeingreadfromthevoltage,currentandtemperatureregisters.do(F(F(H*nn");uint8_tstatus_code;uint16_tcharge_code,current_code,volta
11、ge_code,temperature_code;("Coulombs:");ack|=LTC2943_read_16_bits(LTC2943_I2C_ADDRESS,LTC2943_ACCUM_CHARGE_MSB_REG,&charge_code);(charge,4);(F("Cn");elsecharge=LTC2943_code_to_mAh(charge_code,resistor,prescalarValue);("mAh:");(charge,4);(F("mAhn");current=L
12、TC2943_code_to_current(current_code,resistor);else("");(F("Voltage");(voltage,4);(F("V");if(staleData)(F("*StaleData*n");else("");if(celcius_or_kelvin)temperature=LTC2943_code_to_kelvin_temperature(temperature_code);(F("Temperature");(tempe
13、rature,4);(F("K");elsetemperature=LTC2943_code_to_celcius_temperature(temperature_code);(F("Temperature");(temperature,4);(F("C");if(staleData)(F("*StaleData*n");else("");checkAlerts(status_code);IfanAlerthasbeenset,printoutappropriatemessageintheSer
14、ialPrompt(F("m-MainMenunn");staleData=1;();delay(AUTOMATIC_MODE_DISPLAY_DELAY);while()=false|(ack);read_int();0=acknowledge,1=noacknowledgeint8_tLTC2943_mode;int8_tack=0;LTC2943_mode=LTC2943_SLEEP_MODE|prescalar_mode|alcc_mode;();ack|=LTC2943_write(LTC2943_I2C_ADDRESS,LTC2943_CONTROL_REG,L
15、TC2943_mode);("Coulombs:");(charge,4);(F("Cn");elsecharge=LTC2943_code_to_mAh(charge_code,resistor,prescalarValue);("mAh:");(charge,4);(F("mAhn");(F("Current");(F("ADCSleep.n");(F("Voltage");(F("ADCSleep.n");(F("Tem
16、perature");(F("ADCSleep.n");(F("m-MainMenunn");checkAlerts(status_code);();delay(AUTOMATIC_MODE_DISPLAY_DELAY);while()=false|(ack);read_int();0=acknowledge,1=noacknowledgeint8_tack=0;ack|=LTC2943_write(LTC2943_I2C_ADDRESS,LTC2943_CONTROL_REG,LTC2943_SHUTDOWN_MODE);0=acknowle
17、dge,1=noacknowledgeint8_tack=0;int8_tuser_command;do(F(F(H*nn");(F("1-SetAlertThresholdsn");(F("2-SetPrescalarValuen");(F("3-SetAL#/CC#PinStaten");(F("4-SetUnitsn");(F("m-MainMenunn");(F("Enteracommand:");user_command=read_int();if(use
18、r_command='m')("m");else(user_command);();switch(user_command)case1:ack|=menu_6_settings_menu_1_set_alert_thresholds();0=acknowledge,1=noacknowledgeint8_tack=0;int8_tuser_command;do(F(F(H*nn");(F("1-SetChargeThresholdsn");(F("2-SetVoltageThresholdsn");(F(&q
19、uot;3-SetCurrentThresholdsn");(F("4-SetTemperatureThresholdsn");(F("m-MainMenunn");(F("Enteracommand:");user_command=read_int();if(user_command='m')("m");else(user_command);();switch(user_command)case1:ack|=menu_6_alert_menu_1_set_charge_threshold
20、s();TheACRchargelsbsizechangeswithrespecttotheprescalarandsenseresistorvalue.Duetothisvariability,forthepurposeofthisdemoentervaluesinhexadecimal.break;case2:ack|=menu_6_alert_menu_2_set_voltage_thresholds();EnterValuesinVoltsbreak;case3:ack|=menu_6_alert_menu_3_set_current_thresholds();EnterValuesi
21、nAmperes.break;case4:ack|=menu_6_alert_menu_4_set_temperature_thresholds();EnterValuesinCelcius.break;default:if(user_command!='m')("IncorrectOption");break;while(!(user_command='m')|(ack);return(ack);0=acknowledge,1=noacknowledgeint8_tack=0;(F("EnterRAWMaxChargeThresh
22、old:");uint16_tmax_charge_threshold;max_charge_threshold=read_int();0=acknowledge,1=noacknowledgeint8_tack=0;(F("EnterMaxVoltageThreshold:");floatmax_voltage_threshold;max_voltage_threshold=read_float();ack|=LTC2943_write_16_bits(LTC2943_I2C_ADDRESS,LTC2943_VOLTAGE_THRESH_HIGH_MSB_REG
23、,max_voltage_threshold_code);ack|=LTC2943_write_16_bits(LTC2943_I2C_ADDRESS,LTC2943_VOLTAGE_THRESH_LOW_MSB_REG,min_voltage_threshold_code);0=acknowledge,1=noacknowledgeint8_tack=0;(F("EnterMaxCurrentThreshold:");floatmax_current_threshold;max_current_threshold=read_float();ack|=LTC2943_wri
24、te_16_bits(LTC2943_I2C_ADDRESS,LTC2943_CURRENT_THRESH_HIGH_MSB_REG,max_current_threshold_code);ack|=LTC2943_write_16_bits(LTC2943_I2C_ADDRESS,LTC2943_CURRENT_THRESH_LOW_MSB_REG,min_current_threshold_code);0=acknowledge,1=noacknowledgeint8_tack=0;(F("EnterMaxTemperatureThresholdinCelcius:")
25、;floatmax_temperature_threshold;max_temperature_threshold=read_float();ack|=LTC2943_write_16_bits(LTC2943_I2C_ADDRESS,LTC2943_TEMPERATURE_THRESH_HIGH_REG,max_temperature_threshold_code);ack|=LTC2943_write_16_bits(LTC2943_I2C_ADDRESS,LTC2943_TEMPERATURE_THRESH_LOW_REG,min_temperature_threshold_code);
26、0=acknowledge,1=noacknowledgeint8_tack=0;int8_tuser_command;do(F(F(H*nn");(F("1-SetPrescalarM=1n");(F("2-SetPrescalarM=4n");(F("3-SetPrescalarM=16n");(F("4-SetPrescalarM=64n");(F("5-SetPrescalarM=256n");(F("6-SetPrescalarM=1024n");(F(&
27、quot;7-SetPrescalarM=4096n");(F("m-MainMenunn");(F("Enteracommand:");user_command=read_int();if(user_command='m')("m");else(user_command);();switch(user_command)case1:*prescalar_mode=LTC2943_PRESCALAR_M_1;0=acknowledge,1=noacknowledgeint8_tack=0;int8_tuser_
28、command;do(F(H*nn");(F("1-EnableAlertModen");(F("2-EnableChargeCompleteModen");(F("3-DisableAL#/CC#Pinn");(F("m-MainMenunn");(F("Enteracommand:");user_command=read_int();if(user_command='m')("m");else(user_command);();switch(us
29、er_command)case1:(F("nAL#/CC#*alcc_mode=LTC2943_ALERT_MODE;PinDisabledn");break;default:if(user_command!='m')("IncorrectOption");break;while(!(user_command='m')|(ack);return(ack);0=acknowledge,1=noacknowledgeint8_tack=0;int8_tuser_command;do(F(F(H*nn");(F(&qu
30、ot;1-SetChargeUnitstomAhn");(F("1-SetChargeUnitstomAhn");(F("2-SetChargeUnitstoCoulombsn");(F("3-SetTemperatureUnitstoCelciusn");(F("4-SetTemperatureUnitstoKelvinn");(F("m-MainMenunn");(F("Enteracommand:");user_command=read_int();if(us
31、er_command='m')("m");else(user_command);();switch(user_command)case1:*mAh_or_Coulombs=0;(F("nChargeUnitsSettomAhn");break;case2:*mAh_or_Coulombs=1;(F("nChargeUnitsSettoCoulombsn");break;case3:*celcius_or_kelvin=0;(F("nTemperatureUnitsSettoCelciusn");break;case4:*celcius_or_kelvin=1;(F("nTemperatureUnitsSettoKelvinn");break;default:if(user_command!='m')("IncorrectOption");break;while(!(user_command='m')|(ack);return(ack);booli
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年企业人力资源管理师(人力资源薪酬福利管理师级)技能操作试卷
- 南京师范大学中北学院《油画(二)写生》2024-2025学年第一学期期末试卷
- 荆州理工职业学院《非参数统计》2024-2025学年第一学期期末试卷
- 西南政法大学《中学政治课教材分析》2024-2025学年第一学期期末试卷
- 湖南师范大学树达学院《专修足球(2)》2024-2025学年第一学期期末试卷
- 2025年护士执业资格考试护师考试模拟题及解析
- 2025年燃气储运行业趋势分析与初级考试预测题解析
- 江西农业大学南昌商学院《实验动物解剖学》2024-2025学年第一学期期末试卷
- 山西工程科技职业大学《生物工程专业大》2024-2025学年第一学期期末试卷
- 2025年殡葬行业职业认证与考试信息解读
- 光伏居间的合同8篇
- GB/T 45418-2025配电网通用技术导则
- 医疗风险防控培训课件
- 机械设计部绩效考核制度
- 诊疗规范培训课件
- 《KANO模型培训》课件
- 复苏室患者的交接流程
- 【人教版化学】选择性必修1 知识点默写小纸条(答案背诵版)
- DB21-T 2523-2015矿山地质环境恢复治理规程
- 新能源集控中心建设方案
- 《中国老年糖尿病诊疗指南(2024版)》解读课件
评论
0/150
提交评论