自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 STM32 HAL库内部 Flash 读写实现

Flash 存储器是一种非易失性存储器,它可以在掉电的情况下保持数据。STM32F407 系列微控制器内部集成了一定容量的 Flash 存储器,用于存储程序代码和数据。Flash 存储器具有擦除和编程次数的限制,通常在几万到几十万次不等,因此在使用时需要合理规划擦写操作,以延长其使用寿命。HAL(Hardware Abstraction Layer)库是 ST 公司为 STM32 微控制器提供的一种硬件抽象层库,它封装了底层的硬件操作,提供了一套统一的 API 接口,使得开发者可以更方便地进行硬件开发。

2025-04-16 08:41:41 467

原创 STM32 HAL库 DS18B20驱动实现

DS18B20 是由 Dallas Semiconductor 公司生产的单总线数字温度传感器。单总线接口:仅需一个引脚即可与微控制器进行通信,减少了硬件连接的复杂度。数字输出:直接输出数字温度值,无需额外的模数转换电路。精度高:可编程分辨率为 9 - 12 位,对应的温度精度分别为 0.5°C、0.25°C、0.125°C 和 0.0625°C。宽温度范围:测量范围为 -55°C 到 +125°C。通过以上代码,你可以实现基于 STM32F407 HAL 库的 DS18B20 驱动。

2025-04-16 08:35:38 710

原创 STM32 HAL库 实现485通信

本文详细介绍了基于 STM32F407 HAL 库实现 RS - 485 通信的全过程,包括硬件设计、软件编程和测试验证等方面。通过以上步骤,你可以成功实现 STM32F407 与 RS - 485 总线之间的通信。在实际应用中,还可以根据具体需求对代码进行优化和扩展,如添加错误处理、实现多机通信等。

2025-04-15 09:04:36 665

原创 STM32 HAL库 DAC生成正弦波

STM32F407 是基于 ARM Cortex - M4 内核的 32 位微控制器,具有高性能、低功耗等特点。它集成了丰富的外设,如定时器、串口、SPI、I2C、DAC 等,适用于各种工业控制、消费电子等领域。

2025-04-15 08:50:58 768

原创 STM32 HAL库 ADC+TIM+DMA 3路 1S采样一次电压

通过结合 STM32F407 的 ADC、TIM 和 DMA 外设,我们可以高效、稳定地实现 3 路模拟信号的周期性采样。定时器用于控制采样频率,DMA 用于数据传输,提高了系统的效率。在实际应用中,可以根据需要对采样频率、通道数量等参数进行调整。

2025-04-14 13:40:34 844

原创 STM32 HAL库 L298N电机驱动模块实现

L298N 是一种双 H 桥电机驱动芯片,H 桥电路是一种常用于控制直流电机正反转和调速的电路结构。通过控制 H 桥电路中各个开关管的导通和截止状态,可以改变电机两端的电压极性,从而实现电机的正反转。同时,通过调节输入信号的占空比,可以实现对电机转速的控制。通过使用 STM32F407 的 HAL 库,我们可以方便地实现对 L298N 电机驱动模块的控制。

2025-04-14 08:33:59 822

原创 STM32 HAL库 OLED驱动实现

OLED(Organic Light - Emitting Diode)即有机发光二极管,与传统的 LCD 显示屏相比,OLED 具有自发光、视角广、响应速度快、对比度高、功耗低等优点。在嵌入式系统中,OLED 显示屏常被用于显示系统状态信息、图形界面等。通过本文的介绍,你可以基于 STM32F407 HAL 库实现 OLED 显示屏的 8080 接口和 IIC 接口驱动。8080 接口适合对通信速度要求较高的场景,而 IIC 接口则更适合引脚资源有限的情况。

2025-04-13 10:54:24 1249

原创 STM32 HAL库 HC - SR04 超声波测距模块驱动实现

HC - SR04 超声波测距模块的工作原理基于超声波在空气中的传播速度是已知的(在常温下约为 340m/s),通过测量超声波从发射到接收的时间差,就可以计算出模块与目标物体之间的距离。微控制器向 HC - SR04 的 Trig 引脚发送一个至少 10μs 的高电平脉冲,触发模块发射超声波。HC - SR04 接收到触发信号后,会自动发射 8 个 40kHz 的超声波脉冲,并将 Echo 引脚置为高电平,开始计时。

2025-04-13 10:30:09 1005

原创 STM32 HAL库 HC-05蓝牙通信实现

串口透传:HC - 05 支持串口通信,用户可以通过串口将数据发送到蓝牙模块,模块会自动将数据无线传输到配对的蓝牙设备上,反之亦然。主从模式:模块支持主模式和从模式。主模式下,模块可以主动搜索并连接其他蓝牙设备;从模式下,模块等待其他蓝牙设备的连接请求。工作频段:工作在 2.4GHz 的 ISM 频段,符合蓝牙 V2.0 规范。高性能:采用 ARM Cortex - M4 内核,最高主频可达 168MHz,具有丰富的外设资源。低功耗:支持多种低功耗模式,适用于对功耗要求较高的应用场景。丰富的外设。

2025-04-13 10:25:51 840 1

原创 STM32 HAL实现DHT11采集温湿度

测量范围:温度范围为 0 - 50℃,湿度范围为 20 - 90% RH。精度:温度精度为 ±2℃,湿度精度为 ±5% RH。分辨率:温度和湿度的分辨率均为 1℃和 1% RH。接口:单总线数字接口,通信简单。通过以上步骤,我们可以基于 STM32F407 HAL 库实现 DHT11 温度数据的采集。理解 DHT11 的通信时序是实现数据采集的关键,通过精确的延时和引脚操作,可以确保数据的准确读取。同时,在实际应用中需要注意电源稳定性、通信速率和抗干扰等问题,以提高系统的可靠性。

2025-04-12 12:29:57 1153

原创 STM32 HAL库SPI读写W25Q128(软件模拟+硬件spi)

本文详细介绍了基于 STM32F407 HAL 库实现软件模拟 SPI 和硬件 SPI 读写 W25Q128 的方法。软件模拟 SPI 具有灵活性高、无需特定硬件支持的优点,但通信速度相对较慢;硬件 SPI 则具有通信速度快、稳定性高的特点,但需要使用特定的硬件资源。在实际应用中,可根据具体需求选择合适的 SPI 通信方式。

2025-04-12 12:15:22 754

原创 STM32 HAL库RTC实时时钟超细详解

本文详细介绍了基于 STM32F407 HAL 库的 RTC 实时时钟的开发过程,包括硬件特性、开发环境搭建、基于 HAL 库的编程、校准、低功耗模式以及常见问题与解决方案等方面的内容。通过本文的学习,读者可以全面掌握 STM32F407 RTC 的开发方法,为开发具有实时时钟功能的嵌入式系统打下坚实的基础。在实际应用中,开发者可以根据具体需求对 RTC 进行灵活配置和使用,以满足不同的应用场景。

2025-04-11 16:57:12 915

原创 STM32 HAL库 高级定时器输出pwm

STM32F407 有两个高级定时器 TIM1 和 TIM8。每个高级定时器包含一个 16 位自动重载计数器(CNT),该计数器可向上、向下或向上 / 向下计数,具体计数模式由控制寄存器配置。定时器的时钟源可以是内部时钟(CK_INT)、外部时钟模式 1(ETR 引脚)、外部时钟模式 2(TIx 引脚)或者内部触发输入(ITRx)。此外,还包括多个捕获 / 比较通道,可用于产生 PWM 输出、输入捕获、输出比较等功能。通过本指南,我们详细介绍了 STM32F407 高级定时器的使用开发过程。

2025-04-11 08:41:16 816

原创 STM32 HAL 库开发之通用定时器中断

16 位或 32 位向上、向下、向上 / 向下自动重载计数器。16 位可编程预分频器,用于对计数器时钟频率进行分频。4 个独立的通道,可用于输入捕获、输出比较、PWM 生成和单脉冲模式输出。可使用外部信号(ETR)控制定时器。支持定时器级联功能,可实现更长的定时时间。支持触发输入,可用于启动定时器、复位定时器等。本文详细介绍了如何使用 STM32F407 的 HAL 库来配置和使用通用定时器中断。

2025-04-10 17:40:54 635

原创 STM32开发 HAL库函数实现看门狗( 独立看门狗(IWDG)、 窗口看门狗(WWDG))

本文详细介绍了基于STM32 HAL库的独立看门狗(IWDG)和窗口看门狗(WWDG)的实现原理与应用方法。通过实验验证了看门狗在嵌入式系统中的重要作用,包括系统异常检测与自动恢复功能。文章涵盖了看门狗的基本概念、STM32 HAL库中的相关函数、硬件设计、软件实现以及实验结果分析,为嵌入式系统开发者提供了实用的参考方案。:STM32;HAL库;独立看门狗;窗口看门狗;系统监控。

2025-04-10 13:42:42 803

原创 I2C-EEPROM超详细图解(基于STM32hal库 软件模拟加硬件IIC详解附源码)

IIC(Inter-Integrated Circuit)总线,又称I²C总线,是由飞利浦半导体公司(现为恩智浦NXP)在1980年代开发的一种串行通信总线。最初设计目的是为电视机内的集成电路提供简单的控制接口,后来因其简洁性和高效性在各种嵌入式系统中得到广泛应用。随着技术的发展,IIC总线标准经历了多次更新:1982年:首次推出,标准模式速度100kbps1992年:推出快速模式(400kbps)1998年:推出高速模式(3.4Mbps)2007年:推出超快速模式(5Mbps)硬件 IIC。

2025-04-09 19:50:30 1309

原创 STM32 HAL库时钟系统详解

STM32微控制器的时钟系统是其核心功能之一,它为处理器内核、外设和存储器提供精确的时钟信号。与传统的51单片机不同,STM32采用了更为复杂的时钟树结构,这种设计带来了更高的灵活性和性能优化空间。SysTick是ARM Cortex-M内核提供的一个24位递减计数器,常用于操作系统的时间基准或简单的延时功能。内核集成:作为Cortex-M内核的一部分,所有基于该内核的MCU都具备此功能简单易用:配置简单,不需要复杂的初始化过程高优先级:通常具有最高的异常优先级之一操作系统友好。

2025-04-09 16:24:54 1182 4

原创 基于STM32 HAL库的串口(USART)使用详解

USART(Universal Synchronous/Asynchronous Receiver/Transmitter)是STM32微控制器中常用的串行通信接口,支持同步和异步通信模式。在实际应用中,USART常用于:与PC或其他设备进行调试信息输出与各种传感器模块通信与其他微控制器或嵌入式系统交换数据工业控制中的Modbus等协议实现STM32 HAL库为USART提供了完整的API接口,大大简化了开发流程。

2025-04-08 19:53:24 968

原创 基于STM32 HAL库的外部中断开发详解

外部中断是STM32微控制器中一种重要的外设功能,它允许微控制器对外部信号的变化做出快速响应。与轮询方式相比,外部中断具有响应速度快、CPU占用率低等优势,特别适合处理突发性事件或实时性要求高的应用场景。在STM32中,外部中断(EXTI, External Interrupt/Event Controller)是一个独立的控制器,它负责管理所有GPIO引脚的中断和事件请求。EXTI控制器的主要特点包括:支持所有GPIO引脚作为中断源每个中断/事件都有独立的触发和屏蔽控制。

2025-04-08 10:08:53 741

原创 基于STM32的按键输入检测

每个按键连接一个GPIO引脚,通过10KΩ电阻上拉至VCC,按键另一端接地。通过合理设计按键输入模块,可以大大提高STM32系统的人机交互体验,为后续功能实现奠定基础。:通过行列扫描方式实现多按键检测,可显著减少GPIO占用,适合需要多个按键的应用场景。/* 轮询按键状态,若按键按下则反转LED *//*LED1反转*//*LED2反转*//* LED 端口初始化 */

2025-04-07 18:16:31 951

原创 基于STM32F407ZGT6点亮LED灯以及STM32CUBEMX使用

STM32F407ZGT6 是意法半导体推出的高性能微控制器,基于 Cortex-M4 内核,主频可达 168MHz。本文以该芯片为例,演示如何通过 GPIO 控制 LED 灯。如果有keil固件库或者STM32CUBEMX固件库以及烧录问题可以私信我;1.STM32F407ZGT6 开发板(建议野火 / 正点原子系列)1.安装 Keil MDK-ARM V5 开发环境。2.USB 转串口下载器/Jlink下载器。4.外接 LED 模块(或板载 LED)5.如图所示原理图(I/O输出低电平亮)

2025-04-07 18:04:39 362 1

空空如也

空空如也

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

TA关注的人

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