现象:使用全志t507芯片,输出rgb888,输出96MHz的时钟频率,会在95.6MHz.到96MHz之间波动。
导致输出到转换芯片之后,屏幕显示上会出现拖影现象。时钟分频次数是12次,24Mhz时钟源是OK的。
请问该怎么把这个时钟频率稳定在一个值内,不会出现抖动现象? 全志t507的SDK,内核Linux版本是Linux4.9版本,配置的时钟参数是通过应用层根据set_display 参数配置到内核 。有没有懂全志t507的可以解答一下,有偿。
现象:使用全志t507芯片,输出rgb888,输出96MHz的时钟频率,会在95.6MHz.到96MHz之间波动。
导致输出到转换芯片之后,屏幕显示上会出现拖影现象。时钟分频次数是12次,24Mhz时钟源是OK的。
请问该怎么把这个时钟频率稳定在一个值内,不会出现抖动现象? 全志t507的SDK,内核Linux版本是Linux4.9版本,配置的时钟参数是通过应用层根据set_display 参数配置到内核 。有没有懂全志t507的可以解答一下,有偿。
阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程
你遇到的问题可能是由于时钟频率的不稳定性导致的。全志T507芯片的时钟频率在95.6MHz到96MHz之间波动可能会导致输出到转换芯片后的屏幕显示出现拖影现象。
为了解决这个问题,你可以尝试以下几点:
RCC_CFGR 寄存器来设置时钟频率的分频器和 PLL。RCC_PLLCFGR 寄存器来校准 PLL 的时钟频率。以下是一个简单的示例代码,演示如何使用 RCC_CFGR 寄存器来设置时钟频率的分频器和 PLL:
#include <stdint.h>
#include <stdbool.h>
#include <rcc.h>
int main(void) {
// 设置时钟频率的分频器
RCC_CFGR |= RCC_CFGR_PPRE1_DIV12; // 设置时钟频率的分频器为12次
// 设置 PLL 的时钟频率
RCC_PLLCFGR = RCC_PLLCFGR_PLLSRC_HSE | // 设置 PLL 的时钟源为外部时钟
RCC_PLLCFGR_PLLM(12) | // 设置 PLL 的分频器为12次
RCC_PLLCFGR_PLLN(96) | // 设置 PLL 的时钟频率为96MHz
RCC_PLLCFGR_PLLP(2); // 设置 PLL 的时钟频率的分频器为2次
// 启动 PLL
RCC_PLLCmd(ENABLE);
// 等待 PLL 启动完成
while (!(RCC_PLLStatus() & RCC_PLL_STATUS_PLLLOCK));
return 0;
}
请注意,这只是一个简单的示例代码,你需要根据你的具体情况进行修改和调整。