根据应用定制了am335x硬件,主要应用是通过modbus与下面控制板通信并通过QT显示和修改控制下面通信板,其他次要功能是按键,USB。
硬件有UART1和UART2, UART1用于debug,UART2用于modbus通信。
使用过程中发现,QT应用程序运行一定时间后, UART的波特率会升高,发送脚的波形如下(波特率115200)白色为正常波形, 黄色为出现波特率升高后波形。
请问,是什么原因引起的?
现在已知的一些情况如下:
1. uart2出现后uart1也同样波特升高了。
2. 波特率大概升高了20%。
3. 出现时间不确定, 概率出现, 有的可能1-2小时就能出现, 有的可能3-5天也不出现。
4. linux 版本为3.2.0. qt 4.8.7。测试过比较新的内涵版本linux 4.19.59 内涵, 问题相同。
5. UART2 改为9600同样也会概率出现此问题。
chr chr:
回复 Shine:
谢谢!
波特率大概飘了20%。硬件有更换了不同晶振,问题同样存在。测过输出背光的pwm,频率没有发现改变。
chr chr:
回复 Shine:
谢谢。
好像不小心点了确认此为答案,是不是此问题关闭了?
硬件更换了不同的晶振,问题同样在。测试PWM输出波形没有改变。
Shine:
回复 chr chr:
没关系,还是能看到回复的。
请问所有的板子都是这个问题吗?CLKOUTx管脚是否有稳定的时钟输出?其他接口都能长时间正常工作?
chr chr:
回复 Shine:
大概跑24小时,30个左右会有一半出现此情况。只是UART收发不正常, 但应用其他工作正常,触摸屏,usb ,按键等都工作正常。
Shine:
回复 chr chr:
感谢您对TI产品的关注!为更加有效地解决您的问题,我需要询问更了解这款芯片的TI资深工程师,再为您解答,一旦得到回复会立即回复给您。
Shine:
回复 Shine:
请尝试用最新的Processor SDK v6.3测一下。先不要用QT application测试,用 SDK rootfilesystem里的serialcheck工具测试看一下是否有同样的问题。