关于pic18F66k22串口问题,重金求助
本帖最后由 taijing33 于 2023-6-12 12:01 编辑发现很奇怪的一个现象,就是串口在使用中 突然不能接收了,但是发送数据还是正常的。
重点是断电重启后都不起作用!!!!!
只有重新刷程序,然后一切ok了。 1.还能复现吗?
2.芯片换到其他板子上还有问题吗?
3.用一个简单的串口收发程序测试有问题吗? lcczg 发表于 2023-6-13 09:14
1.还能复现吗?
2.芯片换到其他板子上还有问题吗?
3.用一个简单的串口收发程序测试有问题吗? ...
1,很难重现。
2,没换到过其他板子上。
3,我是串口连接的串口屏,现象很像串口假死,就算假死,重启单片机应该可以。但是我只有重刷程序,才行。 试试把接收设置寄存器的值通过串口发出来,看哪些位错了,针对接收错误进行改进。 用一下pickit5烧录 1. 你先烧一次程序进去, 在它还正常工作的时候断电, 使用工具把整个flash读出来, 然后另外为hex1.
2. 然后继续上电, 直到复现故障, 此时, 再使用工具把整个flash读出来, 然后另存为hex2
3. 比较一下这2个hex, 看看是否有不同?
4. 如果hex存在差异, 你要看一下是不是有改写自身flash部分的代码, 看看是不是指针漂移了, 改写了你的代码.
5.如果hex一样, 那么就不会是代码的问题, 就需要检查一下电路, 外部信号,是不是有异常..或者 写一个测试代码, 把串口收相关的寄存器发出来看看. 那么重新刷程序时候 串口有没有再次出问题呢 主要是楼主这个重新断电都不起作用比较严重 可以长时间连接仿真器运行找问题吗 有没有可能开辟一个flash空间 当出现问题的时候把这个问题写入这样我们可以读到是什么导致出现了问题
是不是突然有外接环境的干扰导致写入了数据到了错误的地址里边呢
既然现象很难重现,是不是考虑把烧写程序的地方给锁上啊
页:
[1]