
器件选择 硬件平台选择STM32F103C8T6最小系统开发板。 STM32代码配置工具使用STM32CubeMX的HAL库进行开发。 光敏模块选择4线光敏电阻传感器模块,(光敏电阻型号5516)。 注1:数据下载使用ST-LINK下载。 注2:串口数据接收使用USB转TTL传输,USB转TTL的TXD接STM32的PA10引脚RXD,RXD接STM32的PA9引脚TXD。 4线光敏传感器介绍 光敏模块原理图 ![]() 光敏模块实物 ![]() 光敏传感器是利用光敏元件将光信号转换为电信号的传感器。在光敏电阻模块中载入了一个光敏电阻。光敏电阻是用硫化镉或硒化镉等半导体材料制成的特殊电阻器。光敏电阻对环境光线十分敏感。光照越强阻值就越低,随着光照强度的升高,电阻值迅速降低。 光敏模块引脚说明 VCC:电源引脚,接单片机+5V或者3.3V。 GND:地线,接单片机GND。 DO:开关量输出(0或1),模块在无光条件下或光强达不到设定阈值时,DO口输出高电平;当外界环境光强超过设定阈值时,DO输出低电平。 AO:模拟量输出(电压),与单片机AD模块相连,通过AD转换,获得准确数值。(后续中使用PA1引脚作为ADC转换,因此此处接单片机的PA1引脚) CubeMX配置 1、首先新建一个工程,芯片选择STM32F103C8T6,双击后进入开发。 ![]() 2、进入后,首先进行一些基础配置。配置调试引脚,配置时钟。在SYS下的Debug中选择Serial Wire。 ![]() 时钟配置选择外部时钟 ![]() 进入时钟配置: ![]() 3、ADC相关配置,使用PA1脚作为ADC: ![]() 使能配置: ![]() ![]() 为了方便看出光敏模块输出模拟量的变化,通过PC端的串口工具返回电压值。因此也要进行串口的配置: ![]() 同时也对其中断使能配置,勾选Enabled: ![]() 后续配置: ![]() 代码主体部分 1、引入头文件,为后续使用sprintf做准备。
2、变量预先定义。
3、数据存放与发送。
4、数据的获取。
5、在main函数的while循环中加入写入的代码
结果展示 ![]() ———————————————— 版权声明:xiang--ying 如有侵权请联系删除 |
STM32 GUI LTDC 最大像素时钟评估方法
【2025·STM32峰会】GUI解决方案实训分享1-对LVGL咖啡机例程的牛刀小试以及问题排查
OpenBLT移植到STM32F405开发板
为什么要先开启STM32外设时钟?
【STM32MP157】从ST官方例程中分析RPMsg-TTY/SDB核间通信的使用方法
【经验分享】STM32实例-RTC实时时钟实验④-获取RTC时间函数与中断服务函数
STM32 以太网 MAC Loopback 的实现
STM32功能安全设计包,助力产品功能安全认证
基于STM32启动过程startup_xxxx.s文件经验分享
HRTIM 指南