基于新唐M0的DMX512-1990收發例程
有點低。
我是利用接收線狀態中斷RLS_INT的BIF中斷來實現BREAK的接收;清
接收緩沖。接著就用接收數據的模式來收數據。
另外,需要注意的是:
1,波特率高的時候串口的停止位一定要2個才好接收;
2,UART的TXD和RXD剛從GPIO的P30,P31切換過來是不確定的。要啞發3個字節的數據才能切換成UART模式,
大概是33US左右的時間;
3,如果用PLL作為UART的時鐘的話,效果非常差,不知道是不是PLL不穩定的原因還是波特率發生器
在高時鐘下不穩定 ?
有什么技術問題請與yuanxihua@21cn.com溝通。
附件:測試工程代碼9G-M0516.zip
DMX512協議DMX512控制協議.rar
評論