[东软电量计开发]:ES32L0910异常温度读取调试总结(二)

[东软电量计开发]:ES32L0910异常温度读取调试总结(二) 简介根据新国标智能管理的要求移动电源需要记录异常温度时的数据需要间隔一小时至少存储一条异常温度数据主控需要把存储的数据上报出来可以显示到电脑、手机上能够展示出来。这里采用的是东软的电量计ES32L0910无论设备是工作、待机或休眠状态都能够存储异常温度数据。今天我们就一起来看看如何读取此电量计的异常温度数据读取时会有哪些问题Follow me!!!一、先搞清楚流程首先读异常温度记录之前得先有温度异常。第一步把设备放恒温箱中恒温箱温度设置70℃设备放置8小时8小时对应8条异常温度记录数据。第二步把设备从恒温箱中拿出来用上位机读取电量计中记录的异常温度数据寄存器是0xF302。上位机读取方式如下图红色框框这里正常会显示8条异常温度数据如果温度都对得上那说明电量计温度记录是没问题的那下一步我们就可以通过软件去读异常温度记录了。这里看到只有一条数据是我之前做的一次测试。细心的朋友可以看到这里显示的时间是1973年01月01日的这是电量计本地初始化的时间所以我们如果想要异常记录的时间对上物理时间还需要进行RTC校准专栏会单独出一期RTC校准的帖子可以关注下。异常数据记录电量计都有了那下一步就可以用软件开始读了这一步相对麻烦些需要保持耐心遇到问题冷静分析。二、如何读异常信息软件设计就是把所有过温异常记录数据读上来我们可以先看看规格书理解下读的逻辑是怎样的。获取过温异常信息流程如下图根据这个读取方式的流程我们先了解一下大概的逻辑数据是如何上来的看起来还挺麻烦的不过别担心原厂早就替我们想好了有现成的例程可以参考哇偶心里的石头一下子落了下来瞬间就感觉压力小了很多呢。下一步我们就看下例程如何去读取异常信息吧。三、软件设计根据异常提供的代码示例一般是有这4四个文件如下图读取异常信息主要的文件是gauge_read_example.c所有电量计的API基本都在这个文件里面我们打开文件进去看看。代码152行我们看到这个函数int get_temp_exception_info(execpt_temp_t *temp_info)这个就是获取温度异常信息的接口我们只需要调用这个函数最后会获取到所有的温度信息。函数接口如下图这里要说明下函数接口的形参这里要按照例程的定义类型这个数据类型是一个结构体指针指向的就是函数输出的异常温度信息的数据。结构体指针定义如下图四、总结东软电量计的异常温度信息读取猛一看感觉蛮复杂其实只要思路捋顺之后一步步实现起来问题不大最重要的是逻辑要清晰总结起来拢共分三步-模拟温度异常首先要把温度异常的环境模拟出来让电量计处于异常之中才能存储异常-上位机读取异常模拟之后上位机读取一下异常信息是否存在-软件读取异常信息设计软件去获取电量计的异常信息OVER。