- 博客(19)
- 收藏
- 关注
原创 BMS电源管理芯片的数据采集
BMS电池系统应用于智能化管理维护各个电池单元,可以监控电池的状态,防止电池过充电或过放电,从而延长电池的使用寿命,在电动汽车、储能系统、无人机、电动工具等领域使用广泛。BMS电池系统可以通过各种通信接口与外部设备连接,如监控系统、充电桩等,实现数据的传输和管理,以支持对电池组的远程监控和管理。因此,我们可以将其接入工业智能网关,从而实现BMS储能系统的数据采集和远程监控,更好的监测管理电池状态。
2025-08-15 17:04:23
210
原创 引脚复用功能,STM32F407的PD13引脚只支持TIM4(CH2)
蜂鸣器代码有什么错误,为什么驱动不了,基于STM32F407您的代码存在几个关键问题,导致无法驱动蜂鸣器。N如果问题仍存在,建议使用STM32CubeMX生成初始化代码,确保硬件配置正确!引脚只能使用PD13如果硬件设计强制要求使用驱动蜂鸣器,需改用(因为PD13不支持TIM2,但支持TIM4)。STM32F407的,只有TIM4可以!这里使用了定时器4,怎么办如果您的硬件必须使用作为蜂鸣器驱动引脚,同时还需要STM32的定时器可以使用和,只需正确配置即可。
2025-08-15 15:26:31
610
原创 引脚复用、重映像、重映射
在STM32F1中,TIM2可以部分重映射(Partial Remap)或完全重映射(Full Remap),但在STM32F4中,复用:是指一个引脚能够用于多个不同的功能,为了优化64脚或100脚封装的外设数目,可以把一些复用功能重新映射到其他引脚上。如果仍有疑问,建议提供具体的外设和引脚需求,我可以给出更针对性的代码示例!,而是直接通过**GPIO复用功能(AF)**来配置外设引脚映射。重映射:是指一个功能可以通过多个引脚去实现。,这些函数是STM32F1系列的用法。在STM32F1中,
2025-08-15 11:36:20
726
原创 debug运行一次后点击run,运行不了,然后点击单步调试报错“Could not stop Cortex-M device! Please check the JTAG cable.”
报错意思是:无法停止Cortex-M设备!请检查JTAG电缆。
2025-08-12 10:10:16
84
原创 debug调试:点击开始,debug开始不了“JLink Breakpoint Error BP could not be set! Probably too many Breakpoints de”
1、JLink Breakpoint ErrorBP could not be set!Probably too many Breakpoints defined?STM32F*/GD32F*在线调试打断点出现 BP could not be set…Probably too many Breakpoints defined?解决办法
2025-08-11 10:03:59
140
原创 MavLink协议(无人机通信协议)
MavLink(Micro Air Vehicle Link)是专为小型无人载具设计的开源通信协议。该协议采用混合发布-订阅与点对点架构,支持地面站与无人机间通信及机载设备数据交互,其消息格式通过XML文件定义并支持多语言代码生成。截至2024年,协议已迭代至2.0版本,新增消息签名等安全机制,广泛应用于PX4、PIXHAWK等主流无人机飞控系统。开发者可利用USB/蓝牙接口实现MAVLink协议数据收发,支持与Mission Planner等地面站进行数据交互。
2025-08-07 09:19:09
144
原创 TTL、RS-232、RS-485的区别
串口:串口是一个泛称,UART、TTL、RS232、RS485都遵循类似的通信时序协议,因此都被通称为串口。
2025-08-01 16:58:21
133
原创 CAN协议帧
帧结构包括帧起始(SOF)、11位ID、远程传输请求位(RTR)、标识符扩展位(IDE,固定为0)、控制场、数据场(0~8字节)、循环冗余校验码(CRC)、应答位(ACK)和帧结束(EOF)。:标识符长度为29位,由11位基本ID和18位扩展ID组成,范围为0x00000000~0x1FFFFFFF,最多支持536,870,912个不同的标识符。:帧结构在标准帧的基础上,增加了替代远程请求位(SRR,固定为1)和18位扩展ID,IDE位为1表示扩展帧。CAN协议帧总共分为两种:标准帧和扩展帧。
2025-07-30 17:46:16
250
原创 用JLINK 烧写程序时出现NO Cortex-m device found
原因:在调试程序的过程中,我遇到了无法通过的困境。寻求解决方案时,我尝试参考了网上的示例程序,然而下载的STM32工程与我的板子硬件可能存在不匹配的问题,这导致STM32的flash读写保护被触发。之后,尽管我尝试使用JLink进行连接,但始终无法与STM32建立联系,Keil也无法识别出设备。芯片进入了写保护,那么这种情况下就需要在下载程序时按下复位键进行下载看能否成功,如果行,就先将boot0保持拉高,再按下复位,然后boot0拉低,之后可以正常使用。1、接线问题,接线接错了,排除这个原因。
2025-07-28 11:43:59
190
原创 关于RTC时钟配置错误引发时间不正确案例
配置RTC时钟时,发现时间不正常,具体表现为秒钟计时不准确,出现漂移时钟出现两次计数1、硬件原因如果RTC使用外部晶振作为时钟源,晶振的频率可能不准确或者出现漂移。晶振的准确度和稳定性直接影响RTC的时间精度。可以尝试更换晶振或使用更高精度的时钟源。另外,RTC硬件本身可能存在问题。检查RTC的硬件连接,包括晶振和其它关键部分,确保它们正常工作。2、软件问题: RTC的配置和控制也可能受到软件的影响。确保正确地配置了RTC,并且在需要时进行周期性的时间同步。
2025-07-28 08:37:35
330
原创 本来运行的好好的,突然报一大推错..\CORE\core_cmInstr.h(129): error: #20: identifier “uint32_t“ is undefined
今天下午移植到HAL库时,报错..\CORE\core_cmInstr.h(129): error: #20: identifier "uint32_t" is undefined,所以我就将uint32都改成了u32,结果点了全替换,将文件夹里所有的都替换了。然后就所有工程打开都报这个错误,啊啊啊啊,我就把所有的文件都删了,然后要来了重新发给我的文件,打开后运行还是一样报错,,,
2025-07-11 17:48:58
125
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人