我正在使用explorer16 / 32 evb并尝试将数据发送到UART。 我尝试了UART1,UART2有无中断,并且一直遇到同样的问题 似乎为了发送1个字节,我需要将它分成两个4位,并使用shift
代码:
port_forward
如果我将数据拆分为4位,我可以在PC上看到数据正确(c#串口应用程序) 但它不应该分成两个写入U2TXREG。
我并非100%确定FCY是16000000,但这是唯一能给我合理结果的价值。
可能是什么问题?
答案 0 :(得分:1)
对于PIC24H,在UART高速模式(BRGH = 1)中获得正确的BRGVAL值需要除以4,而不是16.更改第3行的公式。此外,100%确定是有帮助的时钟频率;如果你没有改变配置位,它可能是8 MHz,而不是16。