能否及時(shí)高效地構(gòu)建嵌入式系統(tǒng),取決于軟件開發(fā)人員在工作臺(tái)上是否有合適工具來幫助完成開發(fā)工作。雖然預(yù)算通常受到限制,但有些工具是每位嵌入式軟件工程師都必需的,這些工具可以幫助他們大幅減少構(gòu)建、調(diào)試和驗(yàn)證其設(shè)計(jì)所需的時(shí)間。
選擇調(diào)試器
開發(fā)人員的工作臺(tái)上必備的第一種最重要工具是調(diào)試器。調(diào)試器的作用就如同包含應(yīng)用代碼的主機(jī)開發(fā)機(jī)與將要運(yùn)行應(yīng)用代碼的目標(biāo)嵌入式處理器之間的橋梁。調(diào)試器提供幾種關(guān)鍵功能:
提取已編譯和鏈接的應(yīng)用,并將其加載到目標(biāo)存儲(chǔ)器中。
向目標(biāo)處理器告知調(diào)試器已連接,并配置所有板載硬件調(diào)試模塊和功能。
負(fù)責(zé)設(shè)置軟件和硬件斷點(diǎn)。
在調(diào)試過程中可用于讀取寄存器和片上存儲(chǔ)器。
接收實(shí)時(shí)應(yīng)用程序跟蹤信息以用于調(diào)試應(yīng)用程序。
在很多實(shí)例中,開發(fā)人員僅選擇他們能夠找到的最低成本的調(diào)試器,或很多開發(fā)套件附帶的默認(rèn)板載 (OB) 調(diào)試器。這種做法的問題在于 OB 調(diào)試器的功能非常有限。
比較調(diào)試器之間差異的一種很好的方法是檢查SEGGER提供的調(diào)試工具。很多不同微控制器供應(yīng)商的多種開發(fā)套件都提供了基于 SEGGER J-Link 的 OB 調(diào)試器。下圖顯示了面向各種目標(biāo)內(nèi)核的不同 J-Link OB 調(diào)試器的典型特性集(圖 1)。
圖 1:低成本開發(fā)板附帶的各種 SEGGER J-Link OB 調(diào)試器的特性集示例(圖片來源:SEGGER)
請(qǐng)注意,表格的最右側(cè)顯示了三個(gè)關(guān)鍵速度特性:SWO 速度、接口速度和下載性能。對(duì)于大多數(shù)零件而言,這些速度都不超過 4 MHz,其中大多數(shù)速度遠(yuǎn)低于這個(gè)數(shù)字。
初看起來,這些 J-Link OB 調(diào)試器的指標(biāo)數(shù)據(jù)還不錯(cuò),畢竟它們是免費(fèi)的。但是,如果將這些特性與J-Link Ultra+或J-Trace等全功能調(diào)試器進(jìn)行比較(圖 2),您會(huì)改變這種看法。
圖 2:J-Link 系列調(diào)試器提供專業(yè)級(jí)調(diào)試功能,速度高達(dá) 100 MHz。(圖片來源:SEGGER)
請(qǐng)注意:最低 SWO 速度為 30 MHz,最高達(dá)到 100 MHz。SWO 接口用于調(diào)試,也用于接收一些跟蹤數(shù)據(jù)。這種速度增加,再加上無限制斷點(diǎn)、以太網(wǎng)選項(xiàng)和嵌入式跟蹤緩沖區(qū) (ETB) 等額外特性,使得這些調(diào)試器成為極其高效的工具。與開發(fā)套件上的基本調(diào)試器相比,這些調(diào)試器的功能更為強(qiáng)大和豐富,不僅有助于加快編程速度,還能縮短實(shí)際調(diào)試系統(tǒng)的時(shí)間。
我們以 J-Link Ultra+ 為例。這是一款全功能專業(yè)調(diào)試器,其特性包括無限制斷點(diǎn),以及極快的 SWO 和接口時(shí)鐘速率(圖 3)。
圖 3:J-Link Ultra+ 是一款全功能專業(yè)調(diào)試器,其特性包括無限斷點(diǎn),以及極快的 SWO 和接口時(shí)鐘速率。(圖片來源:SEGGER)
希望將嵌入式工作臺(tái)提升到全新水平的開發(fā)人員應(yīng)該考慮使用 SEGGER J-Trace(圖 4)。J-Trace 不僅支持與 J-Link Ultra+ 相同的功能,還能夠使用 Arm 嵌入式跟蹤宏單元 (ETM) 接口連接到目標(biāo)器件。
ETM 包含更多的數(shù)據(jù)通信通道,讓開發(fā)人員能夠檢索有關(guān)應(yīng)用程序及微控制器工作狀況的更多信息。例如,開發(fā)人員能夠使用 ETM 來執(zhí)行代碼分支分析,甚至執(zhí)行指令跟蹤。
圖 4:J-Trace 支持 ETM 接口,除了執(zhí)行代碼覆蓋分析之外,還讓開發(fā)人員能夠?qū)?yīng)用程序執(zhí)行指令跟蹤。(圖片來源:SEGGER)
嵌入式系統(tǒng)分析工具
一旦開發(fā)人員獲得了功能合適的調(diào)試器,他們將希望找到和選擇多種工具,以協(xié)助他們調(diào)試和分析系統(tǒng)。開發(fā)人員在開發(fā)周期中平均有多達(dá) 50% 的時(shí)間花費(fèi)在調(diào)試軟件上。調(diào)試系統(tǒng)的效率越高越好。
開發(fā)人員應(yīng)該考慮采用幾種工具來分析系統(tǒng)。這些工具包括像B&K PrecisionBK2190E這樣的雙通道 100 MHz 范圍的傳統(tǒng)示波器,或者SparkFun ElectronicsLogic Pro 8 USB 邏輯分析儀。Logic Pro 8 非常適合用于分析通用輸入/輸出行為和通信協(xié)議。該分析儀能夠同時(shí)監(jiān)控多達(dá)八個(gè)通道,并提供觸發(fā)功能,用于捕捉電平、上升沿或下降沿。
圖 5:Logic Pro 8 USB 邏輯分析儀是用于分析通用輸入/輸出行為和通信協(xié)議的強(qiáng)大工具。(圖片來源:SparkFun Electronics)
每個(gè)工作臺(tái)都需要的常規(guī)原型開發(fā)工具
雖然軟件開發(fā)人員并非硬件工程師,但準(zhǔn)備一些有助于檢測(cè)和操作硬件的工具仍然很有用。第一種必不可少的工具是一組跳線。跳線似乎總是供應(yīng)不足,但它是將外部傳感器或器件連接到開發(fā)套件所必需的。一組Bud Industries母頭對(duì)母頭跳線和公頭對(duì)公頭跳線足以包含所有必需的組合。
圖 6:母頭對(duì)母頭跳線(圖示)和公頭對(duì)公頭跳線對(duì)于快速原型開發(fā)和嵌入式系統(tǒng)故障排除至關(guān)重要。(圖片來源:Bud Industries)
除了跳線之外,還應(yīng)準(zhǔn)備一對(duì)優(yōu)質(zhì)Aven Tools尖嘴鉗和Apex Tool GroupMS54V4 英寸半埋式橢圓頭鋼絲鉗,以便將跳線放置到擁擠空間內(nèi),或者進(jìn)行切割以在原型板上輕松連接。購(gòu)買一對(duì)高質(zhì)量工具將確保您能夠在需要時(shí)隨時(shí)使用。
最后,每位開發(fā)人員還需要備有放大燈,例如 Aven 的 5 英寸ProVue SuperSlim LED燈,以便輕松查看 PC 板上的絲印。軟件開發(fā)人員使用放大燈的頻率遠(yuǎn)少于硬件工程師,但有時(shí)需要對(duì)絲印進(jìn)行快速修改,或者電路板上的超小絲印需要放大或額外照明。
構(gòu)建工作臺(tái)的技巧和訣竅
構(gòu)建工作臺(tái)有時(shí)似乎非常簡(jiǎn)單,但令人吃驚的是很多團(tuán)隊(duì)沒有最基本的工具。以下一些技巧有助于您構(gòu)建出“終極”嵌入式工作臺(tái):
找出開發(fā)過程中的主要瓶頸,確定是否有工具可以消除這些瓶頸。
購(gòu)買高質(zhì)量的工具。劣質(zhì)工具容易磨損和損壞,經(jīng)常需要更換。優(yōu)質(zhì)工具可以持續(xù)使用 20 年甚至更長(zhǎng)時(shí)間。
不要讓價(jià)格成為主要決定性因素。從長(zhǎng)遠(yuǎn)來看,多花一些錢購(gòu)買優(yōu)質(zhì)工具是值得的。
進(jìn)行成本效益分析以及投資回報(bào)分析。當(dāng)工具要使用五年甚至更長(zhǎng)時(shí)間,或者僅在開發(fā)周期中使用數(shù)月時(shí),可以更容易確定成本的合理性。
對(duì)于易損壞的低成本工具,購(gòu)買兩套,確保手頭有備用。
分階段逐步構(gòu)建工作臺(tái)。構(gòu)建專業(yè)的工作臺(tái)可能花費(fèi)數(shù)千美元。分批購(gòu)買工具,這樣有助于擺脫預(yù)算制約。
不要害怕購(gòu)買已經(jīng)用過的工具,只要其來源可靠且維護(hù)狀態(tài)良好即可。
在軟件調(diào)試方面,邏輯分析儀可以取代示波器。
總結(jié)
構(gòu)建高效的工作臺(tái)不能貪圖便宜。必須找到并購(gòu)買適合開發(fā)工作的工具,它們能夠提高效率和消除障礙,幫助提升整體產(chǎn)品質(zhì)量,甚至降低開發(fā)人員的壓力(至少減少他們遇到的問題)。
請(qǐng)仔細(xì)評(píng)估哪些工具能讓開發(fā)過程變得更加簡(jiǎn)單,并確定這些工具是否能夠長(zhǎng)期使用。盡可能不要考慮如何省錢。只要買到合適的工具就能獲得回報(bào),因?yàn)楣δ芡陚淝遗渲眠m當(dāng)?shù)墓ぷ髋_(tái)是效率的保證。
-
存儲(chǔ)器
+關(guān)注
關(guān)注
38文章
7528瀏覽量
164344 -
嵌入式系統(tǒng)
+關(guān)注
關(guān)注
41文章
3624瀏覽量
129751 -
調(diào)試器
+關(guān)注
關(guān)注
1文章
306瀏覽量
23831
原文標(biāo)題:分分鐘教你巧妙構(gòu)建終極嵌入式軟件工作臺(tái)
文章出處:【微信號(hào):elecfans,微信公眾號(hào):電子發(fā)燒友網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論