5(100%开源)蓝牙心率防水运动手环_电池电量检测.docx

上传人:lao****ou 文档编号:363776 上传时间:2023-09-29 格式:DOCX 页数:8 大小:66.54KB
下载 相关 举报
5(100%开源)蓝牙心率防水运动手环_电池电量检测.docx_第1页
第1页 / 共8页
5(100%开源)蓝牙心率防水运动手环_电池电量检测.docx_第2页
第2页 / 共8页
5(100%开源)蓝牙心率防水运动手环_电池电量检测.docx_第3页
第3页 / 共8页
5(100%开源)蓝牙心率防水运动手环_电池电量检测.docx_第4页
第4页 / 共8页
5(100%开源)蓝牙心率防水运动手环_电池电量检测.docx_第5页
第5页 / 共8页
亲,该文档总共8页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《5(100%开源)蓝牙心率防水运动手环_电池电量检测.docx》由会员分享,可在线阅读,更多相关《5(100%开源)蓝牙心率防水运动手环_电池电量检测.docx(8页珍藏版)》请在第一文库网上搜索。

1、牙心率防水运动手环电池电量检测疯壳智能穿戴开发系列配套资料:https:/www.fengke.c1ub/GeekMart/su_fkZyGYgrp.jsp配套视频:https:/www.fengke.c1ub/GeekMart/su_fTSgU13y3.jsp电量检测1 ADC简介ADC(Ana1Og-to-Digita1Converter),模/数转换器或者模数转换器,是指将连续变化的模拟信号转换为离散的数字信号的器件。我们DA14580集成一个高速超低功耗的10位通用模数转换器。可以工作于单端模式也可以工作于差分模式。ADC模块有一个1.2V的电压校准器,作为满量程的参考电压。该ADC模

2、块是10位动态模数转换,转换时间为65ns;最大的采样率为3.3MHz;超低功耗(在100KHZ的采样速率下典型供电电流为5uA);有单端与差分两个输入比例;有4个单端或者2个差分输入通道;电池检测功能;斩波器功能;偏移和零刻度调整;公共端模式输入电平调整。由于电池电压与其放电时长成负相关关系,我们就可以通过DA14580的ADC测量电池电压,直接判断我们所使用的电池剩余电量大小。2 硬件设计本次DA14580采用PO1脚直接测量电源电压。IC0N2图13 软件设计/设置16MHz时钟关闭看门狗/使能管脚打开debugger打开外围电源软件开始,第一步要进行的是系统初始化。SetWOrd16(

3、C1K_AMBA_REG,0x00);SetWord16(SET_FREEZE_REGzFRZ_WDOG);SetBits16(SYS_CTR1_REG,PAD_1ATCH_EN,1);SetBits16(SYS_CTR1_REGzDEBUGGER_ENAB1E,1);SetBits16(PMU_CTR1_REG,PER1PH_S1EEP,0);由于我们要使用串口打印,就要配置我们要使用的串口。首先,要点调用GP1C1COnfigUrePin(UART2_GPI0_P0RT,UART2_TX_PIN,OUTPUT,PID_UART2_TXZfa1se)GP1C).ConfigurePin(UA

4、RT2_GPI0_P0RT,UART2_RX_PINZINPUT,P1D_UART2_RXZfa1se)配置我们使用的串口管脚,然后使用SetBitS16(C1K_PER_REG,UART2_ENAB1E,1)来使能我们要使用的串口2,最后调用uart2Jnit(UART2_BAUDRATEzUART2_DATA1ENGTH)初始化串口。完成以上的3个流程,就可以通过串口打印信息了。关于ADC采集电压,主要是调用下边的函数uint32_tadc_get_vbat_samp1e(boo1samp1e_vbat1v)(uint32_tadjsamp1e,adc_samp1e2;adcinit(GP

5、ADCSE,GPADCSIGN,GPADCATTN3X);adc_usDe1ay(20);if(samp1e_vbat1v)adc_enab1e_channe1(ADC_CHANNE1_VBAT1V);e1seadc_enab1e_channe1(ADC_CHANNE1_VBAT3V);adc_samp1e=adc_get_samp1e();adc_usDe1ay(1);adc_init(GP_ADC_SE,O,GP_ADC_ATTN3X);if(samp1e_vbat1v)adc_enab1e_channe1(ADC_CHANNE1_VBAT1V);e1seadc_enab1e_channe

6、1(ADC_CHANNE1_VBAT3V);adc_samp1e2=adc_get_samp1e();/Wehavetodividethefo11owingresu1tby2if/the10bitaccuracyisenoughadc_samp1e=(adc_samp1e2+adc_samp1e);adc_disab1e();returnadc_samp1e;)在这个函数中,首先是采用adc_init(uint16_tmode,uint16_tsign,uint16_tattn),对ADC进行初始化。第一个参数mode是ADC模式选择,0表示差分模式,GP_ADC_SE(0x800)表示单端模

7、式,我们采用的是GP_ADC_SE,单端模式。第二个参数SignzO表示默认模式,这里用GP_ADC_SIGN(0x0400),选择通过相反的ADC符号获取两个采样值来取消内部的偏置电压。最后的参数attn设置输入最大电压值,。对应12v,这里选GP_ADC_ATTN3X(0x0002)对应3.6v。完成ADC初始化后,就要使能相关的ADC通道。adc_enab1e_channe1(uint16_tinput_se1ection),本次使用的是通道ADC_CHANNE1_VBAT3VO完成ADC的初始化和通道使能后,就可以调用adc_get_samp1e(void)获取数字电压。intadc_

8、get_samp1e(void)(intcnt=ADC_TIMEOUT;SetBits16(GP_ADC_CTR1_REG,GP_ADC_START,1);开始AD转换whi1e(ent-&(GetWord16(GP_ADC_CTR1_REG)&GP_ADC_START)!=0x0000);等待转换结束SetWord16(GP_ADC_C1EARJNT_REGz00000);/清除转换中断标志位returnGetWord16(GP_ADC_RESU1T_REG);获取转换结果最后就是通过下面函数将数字电压转换为剩余电量百分比。uint8_tbatt_ca1_cr2032(uint16_tadc

9、_samp1e)(uint8_tbattjv1;if(adc-samp1e1705)battjv1=100;e1seif(adc_samp1e1584)battjv1=28+(uint8_t)(adc-samp1e-1584)16)/(1705-1584)*72)16);e1seif(adc_samp1e1360)battjv1=4+(uint8_t)(adc-samp1e-1360)16)/(1584-1360)*24)16);e1seif(adc_samp1e1136)battjv1=(uint8_t)(adc-samp1e-1136)16)/(1360-1136)*4)16);e1seb

10、att_1v1=0;returnbatt_1v1;)这是函数采用的分段的形式,这是由于我们的电池电压与电池剩余电量的关系是一条曲线,通过分段计算,可以提高精度。当然,大家也可以根据自己的实际情况改动上述函数。4 实验现象首先,插好川nk和USB转串口,然后打开打开串口调试助手。选择串口号,我们图中是COM1,这个根据实际情况选择。配置串口参数,波特率为115200,数据位8,停止位1,没有校验位和控制流,与下图一致。点击打开串口。SSCOM3.2(作者:聂,嗜(J),S5http,Emai1:mcu521.|口X打开文件I反福115200SDTRRTS84时发送IIWUms次发送文件I保存窗口

11、I清除窗口I厂HEX显示特据止验率位位位1厂HEX发送厂发送新行.None字符串输入框:IWWW.MCUS1CoM一扩展1PCB打样那家强?当然就是嘉立创!【官网】嘉方创PCB打样-SMT贴片一元器件商城一条龙服争打祥话加助睥粱雁婷的QQ:800。58315怀懂技术:品座椎茬:WiFi/GPrS/GPS安信可射频榄组】【点次里升级为SSeOM5.13版】可在W1nIo运行!I亦控制None旦ww.mcu1.corS:4RK)-IeOM111520Ob同CTS=ODSR=OR1图2配置完串口之后,打开我们提供的代码。(1)点击仿真按键。(2)点击运行代码。dUsersAdEicistr&,Dck

12、t金星郴号3,电康松加通码超AdCPrQjeCtSSrguUpjsXpcr;PhUQ1eXdrnPIeWdcbottFi1eEditViewProjectF1ashDebugPeriphera1sToo1sSVCSWindowHe1p口-*f5Ii33Bf1RaK&回Disassemb1ystar-Core0x20000E924770BXsysterc_imt();KOtsp器RO 1 2 3 4 5 S rR3R!5;R617,R8R9RlR 1RlR 1R 1R!XF0x20000K950x200010河0x20000E94F7FFFFDEB1.W0x2000OFEI0z200010OxO

13、OOOOi0x20001000OxffffffffOxffffffffOxffffffffOxffffffffOxffffffffOxffffffff0x200098ODOx200FC90x2000OEMQxMQQ36:0x20000E9837:七periph_init();F000F828B1.Wbatttesr();system_init(0x20000E54)periph_init(0x20000EEC)S3-jrASSIGNBreakDisab1eBreakEnab1eBreakKi11JUNK/J完成之后,就能看到串口调试助手接收框信息如下。IRSSCOM3.2(作者:聂小廷(JJ),主页.Emai1:me.*MYADCTEST*ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%ADC:0%A

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 应用文档 > 汇报材料

copyright@ 2008-2022 001doc.com网站版权所有   

经营许可证编号:宁ICP备2022001085号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有,必要时第一文库网拥有上传用户文档的转载和下载权。第一文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第一文库网,我们立即给予删除!



客服