我目前正在使用 L152C Discovery board 并尝试制作简单的时钟,该时钟将使用 STM32 内置的 RTC 和板载 Glass LCD 以及通过CubeMX配置的 LCD HAL 库。但我目前面临一个我无法理解的问题:CubeMX 没有在LCD_CR
寄存器中启用段多路复用器的选项。我想启用它,因为它会使段映射更容易。
所以我想,好吧,我将直接进行寄存器操作,启用多路复用器(中的第 7 位LCD_CR
)。我使用了命令LCD->CR |= LCD_CR_MUX_SEG;
但是即使在执行命令之后,该MUX_SEG
位仍然为零。(我在调试会话中检查了命令步进和 SFR 内存映射)我做错了什么吗?或者是否有另一种方法来更改 CubeMX 配置但没有此设置选项的图形实现的初始化参数?
该应用程序正在使用 FreeRTOS,我LCD->CR |= LCD_CR_MUX_SEG;
在之后执行,HAL_LCD_Init(&hlcd);
所以我认为 LCD 外围时钟正在运行(并且段正在更新)。
我录制了一个显示此问题的短视频: https ://youtu.be/0X6Zu5EPudU 老实说,我不擅长直接操作寄存器,所以我可能做错了什么。
任何帮助,将不胜感激!