摘要: 利用单片机的TIM模块播放春日影 利用TIM模块演奏音乐 大致思路 利用一个定时器(TIM4)输出PWM波控制蜂鸣器音调,另一个定时器(TIM3)模块控制播放的节奏 准备部分 设计电路 准备材料 导线若干,稳压二极管,无源蜂鸣器 设计电路图 将蜂鸣器按照极性接分别接在信号源和接地端 同时在蜂鸣器侧反向并联一个稳压二极管,防止反向电流 阅读全文
posted @ 2025-11-16 18:03 奶龙大王 阅读(35) 评论(0) 推荐(0)
摘要: 计时器的应用 1、概念 单片机计时器是单片机内部用于定时、计数或产生中断的硬件模块,常见于51单片机、STM32等型号‌。以下是核心要点: 基本功能 定时:通过预设时间间隔触发中断或执行任务(如延时、周期性操作)。 计数:对外部事件进行计数(如脉冲信号检测)。 中断:计数溢出后触发中断,通知CPU处 阅读全文
posted @ 2025-11-09 21:31 奶龙大王 阅读(40) 评论(0) 推荐(0)
摘要: 利用RTOS实现LED灯交替闪烁 1、初始化 (1)时钟源 使能RCC启用外部晶振 (2)GPIO 使能PC0和PC1,改为上拉推挽输出,用于控制小灯 (3)RTOS 按照如下方式使能RTOS 选择一个空闲的计时器,作为基本时钟源 2、编辑进程 (1)创建进程 在CubeMX中创建进程 点击Add后 阅读全文
posted @ 2025-10-22 08:44 奶龙大王 阅读(36) 评论(0) 推荐(0)
摘要: 利用二级RC滤波电路和PWM实现控制电压 利用RC滤波电路和PWM实现控制电压 1、流程图 主函数 中断部分 2、初始化硬件 CubeMX部分 使能外部晶振 并按照如下方式配置时钟树 使能GPIO的外部中断 开启TIM1,并开启通道1的"PWM生成模式" 代码部分 (1)切换挡位 思路 使用环状链表来装载PWM的比较值,当按钮被按下后访问下 阅读全文
posted @ 2025-10-16 21:55 奶龙大王 阅读(108) 评论(0) 推荐(0)
摘要: 利用脉冲位宽调制技术和一级滤波电路实现正弦波输出 利用PWM和RC滤波电路输出正弦波 流程图 主程序 中断部分 1、初始化硬件 (1)时钟 使能RCC,选择外部高速晶振 将HCLK配置为最大的84MHz (2)PWM 使能TIM1,将PWM设为20KHz,将死区设置为25ns 注意:为防止开关不同步导致的短路,需要设置“死区” PWM频率计算公式: 阅读全文
posted @ 2025-10-14 21:17 奶龙大王 阅读(45) 评论(0) 推荐(0)
摘要: 利用旋钮控制小灯亮度 利用旋钮控制 1、初始化 该项目以复刻旋钮的项目为基础进行扩展,前置步骤请参考以下帖子:复刻江协旋钮控制模块 (1)PWM配置 将时钟按照如下方式重新配置 使能TIM3计时器 (2)写入代码 在主循环外启用计时器的PWM模式 HAL_TIM_PWM_Start(&htim3, TIM_CHANNEL 阅读全文
posted @ 2025-10-09 21:29 奶龙大王 阅读(28) 评论(0) 推荐(0)
摘要: 复刻江协旋钮控制模块 复刻江协旋钮控制模块 1、初始化硬件 OLED初始化 这里就不展开细讲了,可以看我之前的帖子 复刻江协激光触发器 旋钮初始化 使能外部中断 模式改为上拉 根据旋钮接口接上线 2、操作代码 (1) 初始化输出 定义全局变量count,并初始化值为0,表示旋钮的相对位置 /* USER CODE BEG 阅读全文
posted @ 2025-09-29 19:39 奶龙大王 阅读(31) 评论(0) 推荐(0)
摘要: 复刻江协激光触发器 1、初始化硬件 将PB8和PB9分别设为SCK与SDA端的接口 注意:江协的OLED驱动为软件模拟IIC所以不要使能IIC模块 使能RCC,改为外部晶振 将PA9设为GPIO_EXTI,接入激光模块的D0端并使能GPIO的外部中断 将OLED驱动的文件引入项目 在main.c中初 阅读全文
posted @ 2025-09-27 17:40 奶龙大王 阅读(19) 评论(0) 推荐(0)
摘要: 单片机实现挡位调节 简易挡位调节模块 1、初始化硬件 这里就不过多赘述了,去看我之前的帖子,我这篇帖子选择TIM2的1通道 PWM的简单应用 2、触发方式 (1)中断 I 初始化硬件 启用按钮的中断 II 写入代码 在主函数外写入中断回调函数 void HAL_GPIO_EXTI_Callback(uint16_t G 阅读全文
posted @ 2025-09-15 14:55 奶龙大王 阅读(35) 评论(0) 推荐(0)
摘要: 利用STM32开发板制作简易电压表 开发板电压表制作教程 1、需要材料 STM32芯片的开发板 SPI通讯协议的0.96寸OLED显示屏 导线若干 2、配置开发板硬件 (1)初始化ADC模块 可以去看我之前的帖子,这里就不过多赘述该步骤了 ADC模块的简单应用 (2)配置SPI通讯模块 I(粘贴) OLED显示屏的厂商一般会提供显示屏 阅读全文
posted @ 2025-09-12 13:00 奶龙大王 阅读(116) 评论(0) 推荐(0)