|
接上篇帖子: NUCLEO_L552ZE_Q+6、IIC-OLED显示字符 来通ADC采集内部温度传感器通道电压,然后通过公式换算得出MCU内部的大致温度,并在OLED屏上显示出来(不是很精确,只作参考)。 {5 ]; K5 D0 r8 ?0 A h+ t% m$ ~, K ) y% ?. G& b! J) K2 J5 n 在L552ZE的用户资料手册中没有找到ADC电压转换为温度的公式,在网上找了一个:( J3 K6 b8 g! q) `+ E5 T8 O
# ?% H8 [/ k" p1 }4 K 手册上给出了此公式要用的几个参数值: $ I/ F, o7 J& e% G/ ~ 3 L3 z' z( p h2 X5 V+ @
打开上篇的CubeMX工程,原来的设置不变,再增加ADC的通道设置,并另存工程为ADC-Temp:' Q4 B/ J9 u8 G, C: k( `8 z & `) n& ^1 d# D1 ]+ g$ `9 R
生成工程文件,并打开文件,添加OLED驱动文件,修改main.c文件,添加相关代码如下 : v, E0 y* r1 T5 H; `
设置ST-Link为烧录后自动复位(懒得按复位键):0 s4 z5 {& B! N' y, F- H
编译并下载,运行效果如图:
注:此温度转换不是很精确,只作参考;另外如果转换公式运用有不当的,请大家指出,共同进步。谢谢!9 Q7 ~4 R' I8 ]/ n1 C8 l M h& u) x) s8 M! `* f' u |
| wonderful........ |
微信公众号
手机版