SBUS调试助手 sbus解析,sbus协议
最近在做一個無人機用的四路的開關,即航模遙控器PWM信號控制四路繼電器.設計硬件的時候專門用了一路可以配置成串口輸入的管腳,外部加了一路施密特反相器.其實主要是濾波防止信號抖動,當然私心就是后續可以接SBUS信號.
?
接觸航模遙控器時間挺長了,而SBUS信號幾年前就想研究,后來因故放下了.最近要調試SBUS,卻一時覺得難以捉摸.網上STM32解析SBUS的程序倒是一大把,也借了套futaba的遙控器和接收機,但一直心里沒底,畢竟PWM信號可以拿示波器直接看波形,SBUS信號是數字信號,而我手邊又沒有邏輯分析儀,看不到原始信號,寫解析程序等于瞎猜吧.網上倒是有sbus調試工具,某寶上SBUS轉USB串口的模塊帶軟件得百十塊,看得人肉疼!
SBUS轉串口的硬件也有,很多年之前做過,但是后來沒顧上用就放起來了,于是翻出來..
2018年,嗯,放得有點久了...焊上連接器,接上USB轉串口模塊,網上下載個能設置非標準波特率的串口調試助手,設置100K的波特率,8位數據位,兩位停止位,偶效驗,竟然把?0x0F 開頭,0x00結尾的25個字節數據接收到了,但具體內容是啥,呵呵,看不懂.?
好在哥會的多,不就是串口通訊么,當年公司沒有搞上位機軟件的工程師,我也硬著頭皮學過delphi寫過串口程序.于是祭出壓箱底的Delphi7,下載個SPComm應用的demo(SCOMM),然后一邊在CSDN查資料一邊寫.一兩周時間竟然給搞出來了.
串口號需要設置,其他波特率停止位之類都已經設置好了.接收SBUS的話可以直接用.最大/最小值是設置進度條范圍的,畢竟SBUS理論上的0-2047不是都能用得到,這樣的話桿量也就是比例就不準確了,在串口未打開時將用到的行程最小值及最大值填入(串口打開后最小值最大值鎖定不允許修改).比例及位置顯示的是限制最大最小值之后的比例.也是方便調試.
其實我還想把SBUS數據生成發送做上,但是還沒有構思好怎么處理那么多的控件事件,或許可以跟發送一樣,在定時器中斷中用控件數組的方式集中處理...
先放出來一版大家用用提提問題吧.
上干貨吧,源代碼:
SBUS調試助手(含delphi源碼).rar-Delphi文檔類資源-CSDN下載
也不知道還有沒有人跟我一樣還在用著delphi.
至于軟件中的那個廣告鏈接,生活不易啊親.
軟件廣告中的SBUS轉USB模塊,我會盡快做出來的....
后續情況,SBUS轉USB,USB轉SBUS輸出的模塊做好了,U盤大小,加了個漂亮的外殼。
軟件也重新編寫升級,上半部是SBUS輸入顯示,下半部是模擬SBUS輸出的控制界面。使用時先設置好最大最小值,如果接舵機不要別舵了。
模塊購買地址:?
https://item.taobao.com/item.htm?spm=a1z10.3-c.w4023-23462173034.2.79cd40abaOesza&id=677277440031https://item.taobao.com/item.htm?spm=a1z10.3-c.w4023-23462173034.2.79cd40abaOesza&id=677277440031
附:sbus數據格式及轉換??
SBUS協議及編解碼SBUS協議及編解碼 - 灰信網(軟件開發博客聚合)
Futaba S-BUS controlled by mbed(使用mbed控制Futaba S-BUS)_廖昌海的博客-CSDN博客IntroductionThe Futaba S-BUS protocol is a serial protocol to control servos. Up to 16 proportional and two digital channels are available. The protocol is derived from the very known RS232 protocol ushttps://blog.csdn.net/hxiaohai/article/details/53517560一文打盡PWM協議、PPM協議、PCM協議、SBUS協議、XBUS協議、DSM協議 | STM32的通用定時器TIM3實現PPM信號輸出 - 蔡子CaiZi - 博客園
總結
以上是生活随笔為你收集整理的SBUS调试助手 sbus解析,sbus协议的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python cmd命令 循环传参数_将
- 下一篇: 软件测试测试用例