102-SLM130(NB-IOT)C-SDK(OpenCPU)学习开发-AD电压,电池电压,CPU温度采集
<p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/LearnEC616_SLM130" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>
模组上的AD
模组上有两路ADC引脚
测试(ADC采集的AIO2引脚)
static volatile uint32_t adc_aio_value = 0; static volatile uint32_t adc_vcc_value = 0; static volatile uint32_t adc_temp_value = 0; //ADC引脚采集完成中断 void adc_aio_callback(uint32_t result) { adc_aio_value = result; } //模组供电电压采集完成中断 void adc_vcc_callback(uint32_t result) { adc_vcc_value = result; } //模组温度采集完成中断 void adc_temp_callback(uint32_t result) { adc_temp_value = result; } //初始化配置 void adc_init(void) { adc_config_t adcConfig; ADC_GetDefaultConfig(&adcConfig); adcConfig.channelConfig.aioResDiv = ADC_AioResDivRatio1;//设置分压比例 ADC_ChannelInit(ADC_ChannelAio2, ADC_UserAPP, &adcConfig, adc_aio_callback); adcConfig.channelConfig.vbatResDiv = ADC_VbatResDivRatio3Over16;//设置分压比例 ADC_ChannelInit(ADC_ChannelVbat, ADC_UserAPP, &adcConfig, adc_vcc_callback); adcConfig.channelConfig.thermalInput = ADC_ThermalInputVbat; ADC_ChannelInit(ADC_ChannelThermal, ADC_UserAPP, &adcConfig, adc_temp_callback); } //启动采集并打印 void adc_collect_printf(void) { ADC_StartConversion(ADC_ChannelAio2, ADC_UserAPP);//启动采集,启动一次采集一次 ADC_StartConversion(ADC_ChannelVbat, ADC_UserAPP);//启动采集,启动一次采集一次 ADC_StartConversion(ADC_ChannelThermal, ADC_UserAPP);//启动采集,启动一次采集一次 printf("adc_aio_value:%d, Voltage:%dmv\r\n", (int)adc_aio_value, (int)HAL_ADC_CalibrateRawCode(adc_aio_value)); printf("adc_temp_value:%d, Temperature:%d\r\n", (int)adc_temp_value, (int)HAL_ADC_ConvertThermalRawCodeToTemperature(adc_temp_value)); printf("adc_vcc_value:%d, Voltage:%dmv\r\n", (int)adc_vcc_value, (int)HAL_ADC_CalibrateRawCode(adc_vcc_value) * 16 / 3); }
把AIO2和BAT引脚连接
ADC采集说明
ADC采集是一个12位的AD, ADC引脚耐压值 0-3.4V
ADC默认是0-1V采集, 对应着 0-4095
上面的AIO2引脚电压超过1V了, 所以打印 4095
如果想采集0-3.3V电压可以设置软件分压
程序可以配置内部分压电阻
把引脚电压设置为5/16分压
把AIO2和BAT引脚连接
程序执行说明
如果想采集AIO1引脚,可以参考AIO2的新增一些程序,或者直接修改
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
2020-05-30 W5500 学习开发: TCP客户端
2020-05-30 W5500 学习开发: 硬件使用说明
2020-05-30 W5500 学习开发: ARP(获取连接主机的MAC地址)
2019-05-30 7-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案安全篇(GPRS模块SSL连接MQTT)
2019-05-30 6-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案安全篇(Wi-Fi模块SSL连接MQTT)
2019-05-30 5-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案安全篇(配置MQTT的SSL证书,验证安全通信)
2019-05-30 2-网页,网站,微信公众号基础入门(学习网页_1)