工具与软件:
您好!
我想询问 LCDFRMIFG 的情况、该值在我设置 LCDCVCTL = LCDCPEN 后设置、并且在调试期间无法复位。 是否正常或表示存在配置错误? 我使用了 CCS 中包含的特定模型的示例配置。
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具与软件:
您好!
我想询问 LCDFRMIFG 的情况、该值在我设置 LCDCVCTL = LCDCPEN 后设置、并且在调试期间无法复位。 是否正常或表示存在配置错误? 我使用了 CCS 中包含的特定模型的示例配置。
好的、我做了类似的事情
//将数据写入 LCDC 存储器
LCDM27 |= 0x80;
//关闭 LCDC 模块
LCDCCTL0并且=~μ H LCDON;
并清除标志。 调试模式工作。
但现在出于某种原因、我做了池化、标志也在自由运行模式下被清除。
是的、关闭屏幕会有所帮助、并且标志已重置。
但我现在注意到、在调试模式下、当我在设置 LCDC 而不将其关闭后设置断点、并且将数据写入存储器时、该位始终会设置、但在自由运行模式下、该位并未设置。 只有在我设置 LCDC 后更改时钟源时、它才会设置。 仅适用于自由运行模式。
在设置 LCDC 之前进行时钟初始化时、该时钟未设置为自由运行模式。 但它是在调试期间设置的。
在调试模式下、该位都是被设置的。
但在自由运行中、当我通过对象池检查该标志时、仅当我在设置时钟源后执行时钟初始化时、才会设置该标志。我的意思是 MCLK SMCLK 和 ACLK 的所有时钟。
我正在检查 LCDC 的标记与这样的池:
if (LCDNOCAPIFG ==(LCDCCTL1和 LCDNOCAPIFG)||
LCDBLKONIFG =(LCDCCTL1和 LCDBLKONIFG)||
LCDBLKOFFIFG =(LCDCCTL1和 LCDBLKOFFIFG)
|| LCDFRMIFG =(LCDCCTL1和 LCDFRMIFG)
)
{
TurnLightOn();
while (1);
}
因此、设置 LCDC 模块后更改时钟配置是否会导致此位保持设置? 还可以始终在调试模式下设置该标志吗? 当 LCDC 关闭时、标志会在配置后复位、但仅在这种情况下适用。
尊敬的 Peter:
设置 LCDC 模块后更改时钟配置是否会导致仍设置此位?
使用 LCD 需要来自 VLOCLK/ACLK 的时钟、如果在 LCD 初始化之后更改时钟设置、则可能会出现意外行为。
以下情况如何:
初始化时钟->初始化 LCD ->更改时钟->手动清除中断标志->使用使能 LCD 检查标志状态。
我不知道,但它值得一试。 无论如何、这不是建议的操作。
并且是否可以始终在调试模式下设置该标志?
实际上处于调试模式、即使您设置了断点也是如此。 与 LCD 时钟一样、仍将生成 MCU 时钟。 所以、当你检查状态时、你将发现由于下一个帧 边界已来复位而设定中断标志。 这是我的猜测。
B.R.
SAL
您好!
如果我可能在 exmamples 中有配置。
//设置 LCD_C
// LCD_FREQ = ACLK/32/4、LCD 多路复用器4、打开 LCD
LCDCCTL0 = LCDDIV_31 | LCDPRE_1 | LCD4MUX | LCDON;
//在2.96V 电压下内部生成电荷泵、生成外部偏置(V2-V4)
//电荷泵的内部基准
LCDCVCTL = LCDCPEN | VLCD_2_96;
REFCTL0 &=~μ V REFMSTR;
LCDCPCTL0 = 0x0000;//选择 LCD 段20-21
LCDCPCTL1 = 0x0030;//
我想询问 在 LCDON 已置位时、是否可以将 LCDCPCTL0和 LCDCPCTL1置位。 我的意思是、手册中有与此相关的注释、但在示例中、它是视点、那么哪一个是正确的? 我还尝试了该配置、看起来效果不错。 那么、是否会有任何副作用?
尊敬的 Peter:
我 同意手动注释。 请参阅用户指南。
那么是否有任何副作用?
我不知道,但它看起来有一个本体风险在这里。
B.R.
SAL
尊敬的 Peter:
并且我是否应避免在 LCD 开启时写入 LCD 存储器寄存器?
如果您的意思是 LCDMx、则没有必要。

您可以将其配置为显示不同的字符。
B.R.
SAL