- 博客(13)
- 收藏
- 关注
原创 STM32CubeMX+FreeRTOS+FreeModbus通讯
本文描述了如何使用STM32CubeMX新建带中间层FreeRTOS实时操作系统的工程文件,在此基础上实现FreeModbus-RTU(Slave)的移植并成功实现通讯。
2025-03-15 22:27:41
124
原创 基于芯片STM32F407的FreeModbus-RTU程序移植(裸机)
本文是基于STM32F407ZGT6芯片移植FreeModbus来实现主机从机通讯。物理层标准采用RS485;芯片外设外设:USART2和TIM6。其中MCU开发板作为从机,主机则使用Modbus-poll。
2025-01-26 16:16:46
162
原创 UART接收数据时发送方和接收方的数据不一致问题
最终发现是晶振频率的设置和开发板的不匹配,因为这个程序此前是按照其他板子进行配置的,晶振设置为25Mhz,而自己的开发板晶振是8Mhz的,所以导致上述情况的产生。特此记录这张帖子,提醒自己如果硬件的开发环境更换了,在重新配置CubeMX的时候应当严格再次走流程,该看原理图的看原理图,不要逞一时之快,哪怕只是写个小Demo测试程序也应当注意!默认值25000000,根据你CubeMX时钟的修改而改变,左下角那个8。数据发送0xA,但是MCU接收后返回的是0x1C。
2025-01-20 20:11:07
241
原创 更新声卡驱动后电脑插上耳机也仍旧播放扬声器的问题
但是当前的这个版本是你声卡驱动里面比较旧的版,不过应该问题不大,旧的反而合适,不像更新后出现此前的问题,因此更新驱动最好还是去对应电脑的地方下载对应的驱动吧,我反正用的鲁大师更新了声卡驱动后就出现了上面的情况。(没有黑鲁大师的意思)。按照图片所示,卸载这个深蓝色的驱动,然后重启,重启后你自带的系统会自动帮你更新当前匹配的驱动,然后你再插上耳机就有声音了,并且设置-声音里面多出了耳机选项。
2024-06-28 21:17:45
1395
9
原创 手动配置HAL库定时器时遇到的疑问
二、查看了CubeMX生成的代码后,将时钟配置放在时基配置后面,此时可以正常的对定时器初始化。一、时钟配置放在定时器时基之前配置,导致定时器无法初始化,从而不能使用。原因未知:此处先插个眼,后续有时间了再去看看为啥。
2024-06-11 09:40:41
254
原创 STM32F4系列系统滴答定时器学习笔记
本文介绍了使用查询法的方式来学习F4系列系统滴答定时器,能够使用系统滴答定时器进行特定时间的延时。更新中........
2024-04-26 16:00:16
738
1
原创 IAP升级:基于STM32F4系列标准库+Ymodem+RS485/RS232
如果是其他系列的,比如F1系列的就去找F1对应的例程,如果是HAL方式的就去找HAL库的,我这边只提供标准库的官方例程,需要官方例程的原因是因为官方例程中提供了非常重要的函数,就是Ymodem.c这个文件中的接收函数,其他的暂时都用不到,当然了,在文章的后面会详细的介绍官方例程的源码和使用以及Ymodem接收函数。我的源码最后会打包成一个Zip,提供一个连接供大家下载,但是目前还没有把例程和源码都整理好,等我整理好了之后我会在摘要当中提供我的源码连接(网盘方式)。2.有关Ymodem和IAP的基础知识。
2024-04-24 16:17:06
2538
15
原创 关于算数转换和在库函数strlen()中的应用
unsigned int 会把转换后得到的补码视为无符号数,也就是最高位不再是符号位,而是数值位。值得一提的是,我们往往对于数值属性掌握的更加轻车熟路而导致忽略类型属性后所带来的“惨痛代价”但在类型属性上,-1的类型是 unsigned int,也就是无符号整数。我们知道,两个无符号类型的的数进行操作符运算后得到的结果也是无符号类型。因为你知道,3 - 4 的结果一定是小于等于0的。一个负数的数据类型一旦是无符号类型的时候,那么。我们知道,一个变量的属性是由两方面构成的,
2023-07-31 11:45:06
74
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人