為了爽快地調(diào)試硬件,我跟串口調(diào)試助手杠上了
本文來(lái)自于知乎「厄蘭德森」投稿, 感謝作者的分享
嵌入式ARM歡迎各位投稿
編輯:付斌
跟嵌入式硬件打過(guò)交道的人都知道,在調(diào)試硬件時(shí),經(jīng)常要用到上位機(jī)、下位機(jī)聯(lián)合調(diào)試。
串口助手是應(yīng)用最廣泛的調(diào)試上位機(jī),簡(jiǎn)單的調(diào)試需求,比如僅僅是看一眼程序的執(zhí)行結(jié)果,調(diào)試助手可以應(yīng)付的,簡(jiǎn)單方便,拿起就用。但遇到稍微復(fù)雜一點(diǎn)的調(diào)試需求時(shí),串口助手就滿足不了要求了。舉個(gè)例子,調(diào)試PID算法的時(shí)候,需要實(shí)時(shí)觀測(cè)傳感器的數(shù)據(jù)曲線特征,實(shí)時(shí)調(diào)整比例、積分、微分3個(gè)參數(shù),沒(méi)有人會(huì)想用串口助手來(lái)調(diào)試。
來(lái)自日本的primer v2機(jī)器人,靠PID算法控制平衡
很多人在遇到復(fù)雜的調(diào)試需求時(shí),會(huì)選擇自己編寫上位機(jī)。對(duì)于不懂得上位機(jī)編程又找不到合適工具的人,往往選擇串口助手湊合著用。
一個(gè)合格的嵌入式硬件調(diào)試工具,其實(shí)應(yīng)該更貼心一點(diǎn),在不增加使用難度的情況下,讓即使不懂得上位機(jī)編程的開(kāi)發(fā)者,也能直觀地觀測(cè)數(shù)據(jù)、微調(diào)參數(shù)。另外,調(diào)試助手作為一個(gè)輔助工具,不能增加用戶的學(xué)習(xí)成本,需要像串口助手一樣簡(jiǎn)單易用。于是筆者有了自己編寫一個(gè)通用調(diào)試工具的想法。
“伏特+”,寓意名酒伏特加,之前跟朋友開(kāi)過(guò)一個(gè)玩笑,說(shuō)喝酒之后,編程特別有靈感。因此我將整個(gè)軟件也設(shè)計(jì)成默認(rèn)藍(lán)色伏特加雞尾酒的風(fēng)格,主題顏色可以根據(jù)用戶喜好,通過(guò)拖動(dòng)滑塊進(jìn)行修改,每個(gè)用戶就像調(diào)酒師一樣,喜歡什么口味的伏特加自己調(diào),希望這個(gè)軟件擁有雞尾酒的功效,能提高各位開(kāi)發(fā)者的調(diào)試效率。
伏特加擁有統(tǒng)計(jì)功能、支持條形圖、直方圖、頻域圖顯示。不僅支持二維調(diào)試、還支持三維調(diào)試。伏特加還有開(kāi)放性的特點(diǎn),用戶可以添加自定義控件,通過(guò)圖形化界面的方式在線修改程序參數(shù),查看數(shù)據(jù)結(jié)果。自定義控件的源碼是開(kāi)源的,用戶可以根據(jù)需要自己編寫自定義控件。
軟件不僅支持2維調(diào)試,還支持3維調(diào)試,用戶可動(dòng)態(tài)添加控件。自定義控件源碼開(kāi)源,可動(dòng)態(tài)插入,用戶可以根據(jù)現(xiàn)有的例子編寫自己的控件。
軟件不僅支持2維調(diào)試,還支持3維調(diào)試,用戶可動(dòng)態(tài)添加控件。自定義控件源碼開(kāi)源,可動(dòng)態(tài)插入,用戶可以根據(jù)現(xiàn)有的例子編寫自己的控件。
下面是這個(gè)軟件更詳細(xì)的功能介紹:
1. 支持網(wǎng)絡(luò)、串口調(diào)試兩種調(diào)試方式,普通調(diào)試助手具備的十六進(jìn)制、字符串調(diào)試功能也依然具備。
2. 能圖形化(波形圖、條形圖)顯示硬件發(fā)送的數(shù)據(jù),并且圖形可以隨意放大縮小移動(dòng),能對(duì)數(shù)據(jù)進(jìn)行簡(jiǎn)單分析(直方統(tǒng)計(jì)、頻率分析),并且圖形化顯示。
發(fā)送了4組數(shù)據(jù),生成了4個(gè)波形,4組控件
波形小圖顯示模式
波形圖+條形圖模式
波形圖+直方統(tǒng)計(jì)圖模式
波形圖+頻譜圖模式,圖中波形由頻率為2Hz、4Hz,直流分量為0,幅值為1的2個(gè)正弦波組成
緩沖區(qū)大小、顯示區(qū)大小,緩沖區(qū)上限,可以通過(guò)拖動(dòng)滑塊來(lái)控制
3. 支持添加自定義圖形控件,方便用戶以圖形化的方式, 調(diào)整程序參數(shù),查看數(shù)據(jù)狀態(tài)。
小方框是為了方便配置,在控件鎖定后會(huì)消失
狀態(tài)燈周圍的小方框是為了方便配置,在控件鎖定后會(huì)消失
4. 接收到數(shù)據(jù)和自定義的控件,可以保存。數(shù)據(jù)可以很方便地轉(zhuǎn)移到Matlab等專業(yè)數(shù)學(xué)軟件做進(jìn)一步分析,控件可以下次載入繼續(xù)使用。
軟件的運(yùn)營(yíng)方面,是通過(guò)攢貢獻(xiàn)兌換激活時(shí)間,貢獻(xiàn)的來(lái)源包括在線捐贈(zèng)開(kāi)發(fā)者、提交功能建議、了解廣告等形式,而自定義控件是開(kāi)源的,也歡迎有能力的開(kāi)發(fā)者為大家貢獻(xiàn)控件代碼,被接納的開(kāi)發(fā)者將獲得永久激活權(quán)限。
有興趣獲取軟件的朋友,可以前往百度網(wǎng)盤下載:https://pan.baidu.com/s/1yNC56G5zKkhWI5laRmoX7Q
自定義控件的github如下,在這里會(huì)繼續(xù)給伏特加增加控件,有能力的小伙伴也歡迎貢獻(xiàn)代碼。