STM32作业实现(四)光敏传感器

目录

STM32作业设计
STM32作业实现(一)串口通信
STM32作业实现(二)串口控制led
STM32作业实现(三)串口控制有源蜂鸣器
STM32作业实现(四)光敏传感器
STM32作业实现(五)温湿度传感器dht11
STM32作业实现(六)闪存保存数据
STM32作业实现(七)OLED显示数据
STM32作业实现(八)触摸按键TPAD
STM32作业实现(九)驱动舵机
源码位置

开启光敏引脚(DMA模式)



选择ADC3配置

需要修改频率

更新main.c文件

c 复制代码
/* USER CODE BEGIN PV */
uint8_t uart_data = 0; // 处理不定长参数
char uart_buf[MAXSIZE] = ""; // 保存不定长命令
uint16_t uart_flag = 0; // 高位 字节用做标志位 低位 字节记录数组使用空间
uint16_t light_adc_dma_buf[2] = {0}; // 接收光敏数据
char msg[MAXSIZE] = ""; // 测试用
/* USER CODE END PV */

/* USER CODE BEGIN 2 */
HAL_UART_Receive_IT(&huart1, &uart_data, 1); // 处理不定长数据
HAL_ADCEx_Calibration_Start(&hadc3);
int len = 0;
/* USER CODE END 2 */

/* USER CODE BEGIN WHILE */
while (1)
{
    HAL_ADC_Start_DMA(&hadc3, (uint32_t*)light_adc_dma_buf, 1);
    len = sprintf(msg, "%d\n", light_adc_dma_buf[0]);
    HAL_UART_Transmit(&huart1, (uint8_t*)msg, len, 1000);
    HAL_Delay(1000);
    /* USER CODE END WHILE */
    
    /* USER CODE BEGIN 3 */
}
/* USER CODE END 3 */

使用 UartAssist 工具发送与接收串口调试信息

相关推荐
somi715 小时前
ARM-06-时钟系统配置
arm开发·单片机·嵌入式硬件·时钟配置
爱喝纯牛奶的柠檬15 小时前
基于STM32和HAL库的大夏龙雀BT311-10C02S蓝牙模块驱动
stm32·单片机·嵌入式硬件
小谦325115 小时前
NTC热敏电阻分压测量电路的数学特性与应用选择研究
stm32·嵌入式硬件
Xueqian E16 小时前
驱动策略和效率的整理
stm32·单片机·嵌入式硬件
电子工程师成长日记-C5117 小时前
51单片机气压检测仪
单片机·嵌入式硬件·51单片机
嵌入式老菜鸟qq12524277318 小时前
nRF54H20 + Zephyr 开发环境(二):烧录与踩坑实录
stm32·单片机·嵌入式硬件
-Try hard-18 小时前
ARM | 点亮LED灯!
arm开发·单片机·嵌入式硬件
llilian_1618 小时前
卫星时钟 时钟同步解决方案——基于高精度卫星时钟同步授时装置 卫星同步时钟 授时同步装置
功能测试·单片机·测试工具
日更嵌入式的打工仔18 小时前
电机三环控制
单片机·嵌入式硬件
weixin_6695452018 小时前
JT8166A/B电容式六按键触摸控制芯片,JT8166B具备IIC通信接口
人工智能·单片机·嵌入式硬件·硬件工程