自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(142)
  • 收藏
  • 关注

原创 我在高职教STM32(新26)——通用定时器输入捕获实验

上一篇利用定时器的输出比较功能输出了精准的 PWM 波形,本篇我们聚焦输入捕获功能,利用该功能,测量按键按下的时长,即外部信号的低电平的脉宽。分为 4 个小节:1)输入捕获基本原理;2)实验任务描述;3)定时器的 HAL 库驱动;4)程序源码解析

2025-12-19 20:50:10 107

原创 我在高职教STM32(新25)——通用定时器PWM输出实验

上一篇详细解读了通用定时器的功能框图,信息量较大,需要通过具体实验来加深理解。本篇是第 2 篇,我们使用定时器的输出比较功能,输出一个精准可控的 PWM 波形,并通过示波器来观察波形的参数,分 5 个小节:1)定时器的 PWM 工作模式和比较原理;2)实验任务描述;3)定时器的 HAL 库驱动;4)准备工程目录和文件;5)程序源码解析

2025-12-19 07:27:58 273

原创 我在高职教STM32(新24)——通用/高级定时器功能解读

STM32F103 有 4 个通用定时器(TIM2~TIM5)和两个高级定时器(TIM1/TIM8),笔者计划用 4 篇文章(含 3 个实验)来系统学习通用定时器的各个功能。本篇是第 1 篇,立足手册,对通用定时器的功能框图和寄存器做一番解读,分为 2 个小节:1)通用/高级定时器概览;2)通用定时器功能框图详解

2025-12-15 08:16:48 160

原创 我在高职教STM32(新23)——基本定时器扫描按键

本篇在上一篇基础上增加新的效果:启用基本定时器 TIM7,使其能够识别 KEY1 按键的单击、双击和长按这几种动作,并通过串口打印结果,效果如图 2 所示,该实验分为 4 个小节:1)按键动作编程要点;2)准备工程目录和文件;3)程序源码解析;4)下载测试和验证

2025-12-08 11:42:41 121

原创 我在高职教STM32(新22)——基本定时器呼吸灯

呼吸灯实验我们在第 5 篇里做过,当时是用延时来模拟 PWM 的。关于主循环里延时过长的弊端,也在文中解释过了。因此,这里我们就改用基本定时器来实现,PWM 的控制都在 TIM6 的更新中断里完成,也是一种软件模拟的方式,但不需要延时了。本篇分为 3 个小节:1)准备工程目录和文件;2)程序源码解析;3)下载测试和验证

2025-12-08 08:06:19 152

原创 我在高职教STM32(新21)——基本定时器解读

笔者计划用 3 篇文章来讲解如何使用基本定时器,并完成两个实验:第一个是将第 5 篇的呼吸灯用定时器重新实现一遍,改进之前纯靠延时的不足;第二个是检测按键的单击、双击和长按,这里面涉及到判断按下和松开的时长,用定时器是再合适不过了。本篇是第 1 篇,先详细解读一下基本定时器,分为 7 个小节:1)STM32 定时器总览;2)基本定时器功能框图;3)定时器周期计算;4)TIM6/TIM7 寄存器;5)基本定时器中断应用;6)定时器的 HAL 库驱动;7)定时器及中断配置步骤

2025-12-05 19:32:18 202 1

原创 我在高职教STM32(新20)——SysTick定时器与延时实现

前面已经详细剖析了 SYSCLK、HCLK、PCLK1 和 PCLK2 的来龙去脉,后续绝大多跟时间有关的控制都可以追根溯源到这几个时钟,下面我们就来研究一下 delay() 延时函数是怎么实现的。本篇将分为 2 个小节:1)SysTick 系统滴答定时器;2)延时功能的源码解析

2025-12-05 08:05:30 252 1

原创 我在高职教STM32(新19)——STM32F1时钟系统配置

上一篇针对 STM32F1 的时钟树,比较细致的介绍了其中的各个要点,尤其是时钟主线中各节点的时钟信号。本篇我们将分几步给大家讲解 STM32F1 时钟系统的配置过程,这部分内容很重要,请大家认真阅读,分为 4 个小节:1)配置 HSE_VALUE;2)调用 SystemInit 函数;3)编写时钟设置函数;4)外设时钟使能和配置

2025-12-01 08:27:51 127

原创 我在高职教STM32(新18)——STM32F1的时钟系统

在我们继续深入学习之前,有必要了解 STM32 时钟系统的脉络,进而才能理解所有跟时间有关的机制和配置。笔者计划用 4 篇文章来详细解读 STM32F1 时钟系统的架构和配置,以及延时函数是如何精确控制的。本文是第 1 篇,先来剖析一下 STM32F1 的时钟树(系统),分为4 个小节:1)认识时钟树;2)时钟源;3)时钟分配;4)时钟主线

2025-11-30 09:41:14 152

原创 我在高职教STM32(新17)——串口通信实验解读

经过前面 3 篇的铺垫,本篇就来完成一个串口通信的基础实验,有“打印”发送,也有消息接收,并详细剖析一下相关的源码。本篇分 3 个小节:1)实验任务描述;2)程序源码解析;3)测试与总结

2025-11-30 09:40:41 291

原创 我在高职教STM32(新16)——串口通信实验准备

前两篇对 STM32 串口通信的背景知识做了详细的介绍,本篇是第 3 篇,在分析串口通信实验源码之前,我们先做好必要的准备工作,包括两个小节:1)串口的 HAL 库驱动;2)串口通信配置步骤

2025-11-26 15:31:14 162

原创 我在高职教STM32(新15)——STM32F103串口详解

STM32F103 的串口资源相当丰富,功能也相当强劲。本篇是串口通信的第 2 篇,详细解读一下 STM32F103 的串口设计。分为 4 个小节:1)USART 和 UART;2)USART 框图;3)USART 寄存器;4)GPIO 引脚复用功能

2025-11-22 22:59:39 524

原创 我在高职教STM32(新14)——串口通信的必备知识

串行通信,也就是我们常说的串口,是 MCU 最常用的一种通信技术,通常用于 MCU 和电脑之间、MCU 和 MCU 之间、MCU 与外围器件的通信。本章我们将学习 STM32F103 的串口,教大家如何用它来发送和接收数据。本篇是第 1 篇,我们来了解一下串口通信的一些必备知识,包含以下 3 个小节:1)通信的一些基本概念;2)串口通信的电气特性与逻辑协议;3)开发板与电脑之间的串口通信

2025-11-22 15:12:03 71

原创 我在高职教STM32(新13)——按键外部中断实验

上一篇我们已经详细介绍了 NVIC,对 STM32F1xx 中断管理系统有个全局的了解。记住,只要用到 STM32 的中断,就一定绕不开 NVIC。在众多的中断向量中,本篇关注 EXTI(External Interrupt,外部中断/事件),是比较常用的一类中断。我们将学习如何把 IO 口作为外部中断输入来使用,重新实现按键控制 LED 的功能。本篇分为如下几个小节:1)从按键检测的方式谈起;2)EXTI 的响应过程;3)EXTI 的 HAL 库驱动;4)程序代码设计;5)下载测试与总结

2025-11-16 14:20:26 314

原创 我在高职教STM32(新12)——STM32中断概览

某种程度上,中断可以说是嵌入式的“灵魂”,后续几乎所有实验都会涉及中断。因此,中断的讲解放在哪一个外设里面去讲都不合适,所以这里单独抽出一篇来做一个概括性的介绍,这样在其他外设涉及到中断部分知识的时候,就不用费很大的篇幅去讲解,只要示意性带过即可。本篇分为三个小节:1)中断的产生背景;2)STM32 强大的中断系统;3)NVIC 使用与中断编程要点

2025-11-16 12:42:25 419

原创 我在高职教STM32(新11)——LCD1602显示效果控制

上一篇已经详细解读了 LCD1602 的驱动程序,本篇我们就来编写主程序,调用所需驱动做两个具体的显示效果:1)字符(串)跳动移动显示;2)按键连按计数显示

2025-11-08 20:40:26 143

原创 我在高职教STM32(新10)——LCD1602驱动程序分析

本篇分析一下 LCD1602 的底层驱动代码,大家会学习到如何将 LCD1602 的工作时序进行分解并转换成对应的驱动函数,这个过程是嵌入式开发必须要经历的,并且会在接下来的项目中逐步强化。本篇分成两个部分:1)准备工程目录和文件;2)驱动源码分析

2025-11-06 22:28:56 212

原创 我在高职教STM32(新09)——LCD1602工作时序与基本命令

本篇是 LCD1602 项目的第二部分,重点学习它的工作时序和基本命令,这是本项目的难点,也是编写驱动程序的基础,分四个重点来讲解:1)显示地址与字符位置;2)状态字节;3)读写时序;4)指令码与控制效果

2025-11-02 15:59:44 210

原创 我在高职教STM32(新08)——初识LCD1602

本篇开始,我们来学习一下开发板配套的那块液晶屏 —— LCD1602,聚焦的是这个器件本身的特点和工作时序。由于 LCD1602 本身的知识比较多,因此笔者计划分成 4 篇内容进行讲解,这是第一篇,我们来初步了解一下 LCD1602,包含 3 个小节:1)LCD1602 的产品外观;2)LCD1602 的电气参数;3)LCD1602 的硬件接口

2025-11-01 18:40:39 288

原创 我在高职教STM32(新07)——按键输入实验

按键是初学嵌入式的第一类输入器件,入门不难,但是一旦按法多样化(单击/双击/长按),或是结合其他被控器件,就需要用上中断、定时器、状态机等知识,难度也就上来了。本章暂时还不谈这些知识,聚焦的还是 GPIO 的基本操作,用的是输入模式。开发板上一共有 4 个独立按键,我们将利用其中的两个,来控制 LED 的亮灭方式。本篇分为 4 个小节:1)认识按键开关;2)硬件原理分析;3)程序代码设计;4)下载验证测试

2025-10-26 17:21:30 285

原创 我在高职教STM32(新06)——蜂鸣器鸣响实验

本篇是前两篇主题的延续,通过 STM32 的 IO 口来控制开发板上的有源蜂鸣器。通过本篇的学习,进一步了解 STM32 的 IO 口作为输出口使用的方法,安排了 3 个小节:1)认识蜂鸣器;2)蜂鸣器编程实践;3)验证测试与小结。

2025-10-26 10:41:41 134

原创 我在高职教STM32(新05)——呼吸灯实验(基础版)

本篇在上一章的基础上,引导大家实现一个简单且常见的效果——呼吸灯。所谓“呼吸灯”,是指 LED 灯光由暗到亮再到暗,循环变化,仿佛“呼吸”一般。本实验将通过软件延时方式调节 PWM 占空比,达到类似呼吸灯的效果,帮助大家理解 PWM 的概念及其应用。本章分为 3 个小节:1)PWM 基础知识简介;2)程序代码设计;3)下载验证与效果观察

2025-10-16 16:46:24 228

原创 我在高职教STM32(新04)——流水灯实验

本篇将通过一个经典的流水灯程序(嵌入式开发的 Hello World),带大家开启 STM32 之旅。通过本章的学习,我们将了解到 STM32F103 的 GPIO 口作为输出使用的方法,并通过代码控制开发板上的 4 个 LED 灯轮流点亮。本篇分为 4 个小节:1)浅谈 STM32 的 GPIO;2)硬件原理分析;3)程序代码设计;4)下载验证测试;5)一点补充

2025-10-12 10:19:28 236

原创 我在高职教STM32(新02)—— STM32初体验

本篇,我们不介绍如何编写代码,而是向大家介绍如何编译和下载,体验一下 STM32 的开发流程,并介绍 MDK5 的一些使用技巧。通过本章的学习,将对 STM32 的开发流程和 MDK5 使用有个大概了解,为后续深入学习打好基础。

2025-09-15 05:48:32 775 2

原创 我主编的电子技术实验手册(24)——RL并联电路

①理解 RL 并联电路的电流相量图;②学会计算和测量 RL 并联电路电流和电压的相位差;③理解实际电路与理想模型之间的差异。

2025-02-04 16:02:06 1466

原创 龙芯+FreeRTOS+LVGL实战笔记(新)——16数码管驱动

从这一篇开始,我们切换到任务2,开始数码管各种显示效果。本篇先来分析一下数码管的电路图,然后编写对应的硬件驱动。

2025-02-04 11:42:58 451

原创 我主编的电子技术实验手册(23)——RL串联电路

①学会从RL串联电路中的电压测量计算感抗;②会画RL串联电路的阻抗和电压相量图;③学会测量串联电路相位差的方法。

2025-01-18 16:58:53 2293

原创 龙芯+FreeRTOS+LVGL实战笔记(新)——15呼吸灯

前面我们已经利用定时器搞定了蜂鸣器嘀嘀嘀和按键的扫描,本篇再接再厉,继续使用定时器来实现“任务1”下的最后一个子任务——呼吸灯。

2025-01-18 12:40:26 340

原创 我主编的电子技术实验手册(22)——RC并联电路

①学会测量RC并联电路的电流相量;②理解RC并联电路的电流相量和相位角是如何随频率变化的。

2024-11-03 18:10:19 1722

原创 龙芯+FreeRTOS+LVGL实战笔记(新)——14按键单击/双击/长按

前两篇我们解决了按键输入的检测,但仅限于单击动作。为了让检测更全面,本篇把双击和长按的检测也加了进来。背后的检测逻辑更复杂了,靠的还是 FreeRTOS 的软件定时器。

2024-11-03 11:51:49 530 3

原创 龙芯+FreeRTOS+LVGL实战笔记(新)——13LVGL字体转换

上一篇,我们使用了 LVGL 的标签将按键信息显示在屏幕上,其字体样式和大小都是默认的。如果想自定义字体效果,那就需要用到 LVGL 的字体转换。本篇我们就来学习一下如何显示想要的字体效果。

2024-10-27 22:51:50 353 2

原创 龙芯+FreeRTOS+LVGL实战笔记(新)——12按键输入初步

上一篇已经准备好了按键的驱动,这一篇我们就来创建一个新的子任务 key_task,调用按键驱动,并将按键信息显示在屏幕上。

2024-10-21 19:06:29 317

原创 龙芯+FreeRTOS+LVGL实战笔记(新)——11按键驱动

前两篇搞定了无源蜂鸣器的鸣响,接下来我们来着手处理按键。与之前的编排一样,本篇先来分析一下按键的电路图,然后编写对应的硬件驱动。

2024-09-30 12:02:26 323

原创 龙芯+FreeRTOS+LVGL实战笔记(新)——10蜂鸣器嘀嘀嘀

上一篇已经编写了蜂鸣器的驱动,本篇我们结合按钮来创建对应的任务,来调用该驱动。当点击“蜂鸣器”这个按钮,可以发出嘀嘀嘀的鸣响;当点击“退出”按钮,停止鸣响。在这个项目中,我们使用了 FreeRTOS 中的软件定时器来控制无源蜂鸣器。

2024-09-30 11:59:46 456 2

原创 我主编的电子技术实验手册(21)——RC串联电路

①通过对R 串联电路的测量,进一步理解电容的交流特性;②理解 RC 串联电路的阻抗和电压相量图的含义;③理解交流电频率是如何影响 RC 串联电路的阻抗和电压相量的。

2024-09-24 19:20:40 1728

原创 龙芯+FreeRTOS+LVGL实战笔记(新)——09蜂鸣器驱动

前两篇搞定了RGB闪烁灯,接下来着手蜂鸣器,本篇先来分析一下蜂鸣器电路图,然后编写对应的硬件驱动。

2024-09-24 18:51:41 539

原创 我在高职教STM32——准备HAL库工程模板(2)

上一篇已经将模板工程里的目录和文件都准备好了,本篇将创建 Keil MDK 工程及分组,并将前面准备好的 HAL 库文件添加进工程分组。

2024-09-16 15:00:28 692

原创 龙芯+FreeRTOS+LVGL实战笔记(新)——08RGB闪烁灯

上一篇已经编写了 RGB 灯的驱动,本篇我们结合按钮来创建对应的任务,来调用该驱动。当点击“闪烁灯”这个按钮,可以实现RGB闪烁灯;当点击“退出”按钮,停止闪烁。

2024-09-16 14:59:22 674 1

原创 龙芯+FreeRTOS+LVGL实战笔记(新)——07RGB灯驱动

开发板上有一个 RGB 三色灯,本篇先来分析一下电路图,然后编写对应的硬件驱动。

2024-09-13 09:47:14 456

原创 龙芯+FreeRTOS+LVGL实战笔记(新)——06添加二级按钮

上一篇我们在主任务里部署了一组按钮,可以将其视作主任务菜单,这一篇我们在此基础上添加一组二级按钮效果,按下某个主按钮,弹出对应的二级按钮。

2024-09-08 15:46:56 360

基于百科荣创STM32F407核心板的简易函数信号发生器

该资源是STM32的工程源码,基于百科荣创的STM32F407核心板,实现了一个简易的函数信号发生器,可以输出三角波、锯齿波、正弦波和方波,可以通过按键调整波形的类型、幅度和频率,并在屏幕上呈现信号的基本信息和按键控制信息。具体效果见如下视频: https://www.bilibili.com/video/BV1oZ421T7St/ 针对该项目,笔者编写了系列博客《我在百科荣创企业实践——简易函数信号发生器》,共6篇,循序渐进的介绍了项目的实现过程,首篇博文链接如下: https://blog.csdn.net/gmc832002/article/details/140414686

2024-08-04

龙芯 1B1C 驱动程序用户手册

本文档为 LoongIDE 提供的龙芯 1x 的设备驱动程序库 ls1x‐drv 提供编程参考。 ls1x‐drv 适用 LS1B200/LS1C300B 两款芯片,同时适用“裸机/RTThread/uCOS/FreeRTOS” 四种编程环境。 此外,笔者针对此龙芯开发板和嵌入式大赛样题,编写了专栏教程《龙芯+RT-Thread+LVGL实战笔记》,欢迎关注和订阅,专栏链接为:https://blog.csdn.net/gmc832002/category_12423908.html

2024-03-02

龙芯1B200-1C300编程参考手册

本文档为 LoongIDE 提供的龙芯 1x 的设备驱动程序库 ls1x‐drv 提供编程参考。 ls1x‐drv 适用 LS1B200/LS1C300B 两款芯片,同时适用“裸机/RTThread/uCOS/FreeRTOS” 四种编程环境。 此外,笔者针对此龙芯开发板和嵌入式大赛样题,编写了专栏教程《龙芯+RT-Thread+LVGL实战笔记》,欢迎关注和订阅,专栏链接为:https://blog.csdn.net/gmc832002/category_12423908.html

2024-03-02

离线版的LVGL图像转换工具

将图片转换成LVGL的源码文件,最方便的是通过LVGL官网的链接https://lvgl.io/tools/imageconverter。鉴于LVGL官网访问不便,或是无法联网的情况下,可使用本工具。 工具名称:lvgl_image_converter 运行环境:Python 安装需求:pip install -r requirements.txt 基本用法:详见压缩包内的说明文档 用法示例: python3 lv_img_conv.py -f true_color_alpha -cf RGB888 -ff BIN -o test -r ./images

2024-02-16

嵌入式国赛龙芯板(新板)测试例程

共计23个例程,由于字数限制,下面罗列了前12个,均为裸机程序。笔者针对此开发板和大赛样题,编写了专栏教程《龙芯+RT-Thread+LVGL实战笔记》,欢迎关注和订阅,专栏链接为:https://blog.csdn.net/gmc832002/category_12423908.html 01_RGBLED_Test_RGB灯控制实验 02_Key_Test_按键控制实验 03_Beep_Test_no_蜂鸣器控制实验 04_UART_Test_串口通信实验 05_Voice_Test_语音识别实验 06_ADC_IIC_Test_ADC采集实验 07_PWM_IIC_Test_PWM输出实验 08_BH1750_Test_BH1750实验 09_LCD_Img_LCD图片显示实验 10_LCD_touch_触摸屏实验 11_Chinese_Font_Test_32*32中英文字库显示实验 12_Ultrasonic_ranging_Test_超声波测距实验

2024-02-16

嵌入式国赛-龙芯练习板(新板)资料

针对全国职业院校技能国赛(嵌入式系统开发应用赛项)指定的龙芯开发板,由百科荣创提供的配套资料,包含原理图、点位图和物料清单,是备赛必备资料。 此外,笔者针对大赛样题,编写了专栏教程《龙芯+RT-Thread+LVGL实战笔记》,欢迎浏览和订阅,专栏链接如下: https://blog.csdn.net/gmc832002/category_12423908.html

2024-02-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除