主要注意的是总线频率设置,继而波特率设置,然后保证硬件(比如串口线、板子)没问题。检查串口线的方法是将2、3针连接起来,用串口助手发送数据,助手会收到数据则没问题。板子方面主要检查PIN脚连接是否有问题。
遇到了一个非常诡异的问题-保证程序没任何问题但串口助手中就是收不到数据。但无意中就能通信了。现把调试过程描述如下:
我在做的过程中刚开始一直没能通信,后来程序没做任何改变的情况下,竟然诡异的能通信了。
主要做了以下一些事。
1. 写了一个最简单的串口通信程序,注意用默认的总线频率即外部晶振频率的二分之一(OSC/2)。收不到数据。
2. 在PE(专家)模式下写了一个,同样是用默认总线频率,不启用PLL分频。能通信。
3. 此时再调试最简单的那个可以收到数据。调试其他的串口程序也能通信。
感觉很诡异,一位同事对于这种情况的描述是“芯片的任督二脉没打通,PE把他打通了”。
F:\Project\DG128_PTJ_PTB 为Freescale 9S12十六位单片机原理及嵌入式开发技术一书中第202页的例子,其中还未解决的问题是中断想来号的问题。【解决】中断向量表中从0开始向下数既是中断向量号。

在使用MC9SDG128进行串口通信时,遇到程序正常但无法通信的诡异问题。通过编写简单串口程序,并在PE模式下尝试,最终实现了通信。同事戏称此为“芯片任督二脉被打通”。文中还提及Freescale 9S12单片机开发实例中未解决的中断向量问题。
994

被折叠的 条评论
为什么被折叠?



