我目前正在与L152C发现板,并试图制作简单的时钟,将使用STM32和车载玻璃液晶显示器通过CubeMX配置的液晶显示器。但是我目前面临着一个我无法理解的问题: CubeMX没有在LCD_CR寄存器中启用段mux的选项。我想启用它,因为它将使段映射更容易。
所以我想,好吧,我会做一个直接的注册操作,启用mux (LCD_CR中的第7位)。我使用了命令LCD->CR |= LCD_CR_MUX_SEG;,但是即使在执行命令之后,MUX_SEG位仍然是0。(我用命令SFRs和SFRs内存映射签入了调试会话)我做错了什么吗?或者是否有另一种方法来更改CubeMX配置但没有此设置选项的图形化实现的init参数?
该应用程序使用FreeRTOS,而我在LCD->CR |= LCD_CR_MUX_SEG;之后执行HAL_LCD_Init(&hlcd);,因此我建议液晶外围时钟正在运行(并且段正在更新)。
我录制了一个显示这个问题的短视频:老实说,我不擅长直接注册操作,所以我可能做错了什么。
任何帮助都将不胜感激!
发布于 2021-04-29 21:40:10
正如@KIIV所说:
RM0038液晶显示控制器( LCD )注:当液晶显示器启用时,VSEL、MUX_SEG、偏置和占空位被写保护( LCD_SR到1中的ENS位)。
当对上述寄存器进行更改时,必须禁用LCD。
https://stackoverflow.com/questions/64229100
复制相似问题