- 博客(32)
- 资源 (1)
- 收藏
- 关注
原创 WAV文件结构和PCM数据转存WAV文件
本文介绍了在Linux环境下使用ALSA工具进行音频录制和播放的方法。主要内容包括:1) 使用arecord命令录制音频,支持设置采样率、声道数等参数;2) 解析WAV文件头结构,包括RIFF块、fmt块和data块的详细说明;3) 通过ALSA库设置声卡硬件参数,实现音频录制和播放功能;4) 提供了完整的C语言代码示例,包含WAV文件头写入、音频数据采集和播放的实现。该工具可直接编译使用,支持录制10秒音频保存为WAV文件或播放指定WAV文件。
2025-10-12 16:37:10
358
原创 STM32 串口收发
本文介绍了基于STM32F103开发板的串口通信实现方法。主要内容包括:1)串口初始化步骤,涉及时钟使能、GPIO配置、参数设置(波特率、数据位等);2)数据收发机制,通过USART_DR寄存器实现;3)中断处理流程,包括中断使能配置和状态判断;4)完整的程序设计示例,展示了初始化函数、中断服务程序及主循环处理流程。系统实现了串口数据接收(以"\r\n"为结束标志)、数据回传和LED状态指示功能。该方案为STM32串口通信提供了标准化实现框架,可根据实际需求进行功能扩展。
2025-08-03 23:19:05
1030
原创 STM32 外部中断 和 定时器中断
摘要: 本文对比了STM32微控制器的外部中断与定时器中断功能。外部中断由GPIO引脚电平变化触发(上升/下降沿),适用于异步事件响应(如按键检测、传感器信号);定时器中断由内部计数器事件触发(溢出/比较匹配),用于精确定时任务(如周期性采样、PWM生成)。通过STM32F103代码示例,分别展示了外部中断(PD0引脚配置)和定时器中断(TIM2配置为1秒定时)的实现方法,包括时钟使能、中断线映射、优先级设置及中断服务函数处理逻辑。两种中断的核心差异在于触发源(外部信号vs内部计时)和适用场景(实时响应vs
2025-07-30 21:46:15
1138
原创 STM32 按键输入检测 轮询和中断
摘要:本文介绍了基于STM32F103的按键检测实现方案,包含硬件连接、软件消抖和两种检测方式。硬件上WK_UP(PA0)按下为高电平,KEY0(PE4)和KEY1(PE3)按下为低电平。软件消抖采用延时10ms确认有效按键状态。提供轮询和中断两种检测方式:轮询通过循环扫描GPIO状态;中断方式利用外部中断触发,配合定时器实现消抖处理。文中详细给出了GPIO初始化、中断配置、定时器设置等关键代码实现,并比较了两种方式的优缺点,为嵌入式系统按键处理提供了完整解决方案。(149字)
2025-07-27 16:41:35
644
原创 STM32 FreeRTOS基础
本文详解了FreeRTOS的核心API函数,包括任务管理和定时器控制两大功能模块。任务管理部分介绍了xTaskCreate(创建任务)、vTaskDelete(删除任务)、vTaskSuspend(挂起任务)和vTaskResume(恢复任务)等关键函数的使用方法和参数说明。定时器控制部分重点讲解了xTimerCreate(创建定时器)、xTimerStart(启动定时器)和xTimerStop(停止定时器)等函数的应用场景。文中还提供了完整的示例代码,展示了如何创建任务、管理任务状态以及使用软件定时器的典
2025-07-26 16:35:04
1028
原创 STM32 | 有源蜂鸣器响,无源蜂鸣器播音乐
本文介绍了有源和无源蜂鸣器的控制方法。有源蜂鸣器内置振荡电路,通过GPIO控制通断即可发声;无源蜂鸣器需要外部PWM信号驱动,通过调整频率和占空比可改变音调和音量。文章详细说明了两种蜂鸣器的GPIO配置方法,并提供了PWM控制方案,包括频率计算、占空比调节等关键实现。重点阐述了如何利用PWM技术播放音乐,包括音符频率表的建立、节拍控制等,最后以"生日快乐歌"为例展示了完整的音乐播放实现过程。该方案适用于嵌入式系统的音频输出控制。
2025-07-18 23:49:54
1001
原创 STM32 | DHT11 传感器
DHT11 数字温湿度传感器是一款含有已校准的温湿度复合传感器。单线制串行接口,体积小、功耗低,信号传输距离可达 20 米以上引脚说明:DHT11的供电电压为 3-5.5V。传感器上电后,要等待 1s 以越过不稳定状态在此期间无需发送任何指令。
2025-07-18 06:05:53
1229
原创 STM32 | 定时器 PWM 呼吸灯
PB5 是STM32单片机的定时器3的通道2,TIM3 可以用定时器来产生PWM输出,因为刚好PB5连接着LED,PWM会控制LED的亮度,从而形成呼吸灯现象。
2025-07-16 21:39:11
1394
原创 STM32 | ADC 获取 光敏传感器数值
摘要:统配置包括ADC初始化(12位逐次逼近型转换器,最大14MHz时钟)、GPIO设为模拟输入,以及转换程序(单通道触发,239.5周期采样)。最终将ADC值(0-4000)线性映射为光照百分比(0-100),通过多次采样取平均值提高精度,主函数周期读取并输出光照数据。
2025-07-12 10:19:00
1361
原创 STM32单片机开发方式
MCU 微控制单元(Microcontroller Unit;MCU)STM32:意法半导体()基于ARM的cortex-M内核开发的32位单片机STM32相比AVR 51单片机优点:性价比高,性能强大(主流主频:72MHZ 168MHZ 192MHZ...)
2025-06-08 00:13:58
809
原创 Python使用Serial实现 Modbus RTU 的 Slave 功能
Python使用Serial实现 Modbus RTU 的Slave 功能
2025-04-26 09:28:30
1461
原创 mjpg-streamer移植(2020毕业设计)
我的毕业设计是做一个基于Linux开发板的视频传输,当然还有其他的一些东西,别的不扯,直接来。mjpg-streamer的移植是做得我比较痛苦的,大家很经常用的那一个源码:https://sourceforge.net/projects/mjpg-streamer/,已经转到github了,到了github上面,会发现有一个特别重要的,在input_uvc目录下的makefile没了???真的...
2020-03-26 23:33:02
797
7
移植的Jpeg库,版本9.0.3
2025-03-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅