[STM32F1] Arduino上的LDC显示程序移植到STM32Cube IDE上

[复制链接]
833|12
 楼主| 铁头电子player 发表于 2025-3-10 20:53 | 显示全部楼层 |阅读模式
我的板子驱动一个LCD(通过4线SPI接口的ST7565R控制器),并通过Modbus作为主机于从机进行通信。
原先是在Arduino上运行的,但现在我想代码移植到STM32Cube IDE中,其他功能已经实现,但LCD一直不成功。
我的问题是,如何将Arduino上使用的库文件(有些库是封装的,并不是h文件或c文件)移植过来?


公羊子丹 发表于 2025-3-11 08:08 | 显示全部楼层
这个移植起来确实挺费劲的,我之前也遇到类似情况,最后还是自己重写了SPI驱动,效果还不错。
周半梅 发表于 2025-3-11 08:10 | 显示全部楼层
STM32的SPI时序和Arduino可能有些区别,特别是时钟极性和相位,检查一下是不是这个问题。
一秒落纱 发表于 2025-4-14 01:09 | 显示全部楼层
Arduino上的LCD驱动代码(尤其是针对ST7565R控制器的SPI接口)移植到STM32CubeIDE(基于STM32F1)需要解决几个关键问题:库的兼容性、SPI配置、GPIO控制和时序调整

远山寻你 发表于 2025-4-14 02:35 | 显示全部楼层
如果屏幕显示异常(如乱码),降低SPI时钟频率(通过CubeMX调整Prescaler

夜阑风雨 发表于 2025-4-14 03:15 | 显示全部楼层
ST7565R可能需要命令间延时(如HAL_Delay(1)),需参考数据手册

光辉梦境 发表于 2025-4-14 04:32 | 显示全部楼层
确保DC引脚在发送数据(DC=1)和命令(DC=0)时正确切换

江河千里 发表于 2025-4-14 05:35 | 显示全部楼层
检查SPI信号(时钟、数据线)是否符合ST7565R时序

别乱了阵脚 发表于 2025-4-14 06:37 | 显示全部楼层
先尝试点亮屏幕背光,再逐步发送初始化命令

暖了夏天蓝了海 发表于 2025-4-14 07:14 | 显示全部楼层
如果原库不可移植,可参考开源的STM32驱动(如ST7565R驱动示例)

冰春彩落下 发表于 2025-4-14 08:18 | 显示全部楼层
移植的话,一般可以用github上有开源的关于arduinoF1的例程

淡漠安然 发表于 2025-4-14 09:09 | 显示全部楼层
为啥用arduino呢?我觉得不如用HAL来搞

三生万物 发表于 2025-4-14 10:35 | 显示全部楼层
其实你就调用ST7565的驱动器库文件就行了

您需要登录后才可以回帖 登录 | 注册

本版积分规则

48

主题

50

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部