在新唐的两个版本中,有这样两个区别,大家需要注意的: 1. API版本中,用的UART时钟是内部的22MHZ的晶振,大家一定看到了算晶振的波特率的函数,所以没有深入看,只知道可以得出自己想要的晶振就可以了(一般用9600的波特率),而寄存器版本中用的还是外部的12MHZ晶振 2. 第二个不同的地方也是我纠结了3个星期终于发现了,也是我的问题所在的,就是API版本中,配置了管脚为RTS0功能,而寄存器版本中没有,所以即使后面初始化和API非常相似,也出不来结果,这是一个很重要的原因!(RTS0功能就是自动方向控制,是485中用来控制收发的) 解决了这两个问题,485通讯来说,基本就可以平坦大道了,但是这样说也许很空虚,下面附上485的电路图和485初始化的寄存器版本的代码,希望对大家有帮助,只是新唐Cortex-M0的代码,如果不是这个芯片的可以看看步骤,应该也没有什么太大问题。
|