不知各位嵌入式開發者有沒有遇到這樣的經歷:J-link的線長限制了我們編程的姿勢,很多時候我們的工程都需要板子產生一些位移(比如調小車之類的),這時候J-link的線會讓我們Debug的過程變得非常痛苦。。。那么有沒有辦法讓我們解決這個數據線的痛苦呢??答案是當然有的!只要有著一顆折騰的心,辦法總是會慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢慢想出來的。本人最近一直在弄一個相關工程,因為被線限制的非常痛苦,于是就考慮出了使用樹莓派作為J-link的服務器然后和STM32固連來實現遠程下載與調試的辦法。鑒于官方僅放出驅動程序沒有提供技術支持,本人在折騰的時候發現網上的資料也很少,特在此記錄我的操作步驟和方法,以便大家也能和我一起分享無線的喜悅
#利用樹莓派作為J-link的遠程服務器
首先,我們需要在樹莓派上安裝J-link的驅動,截至本文章撰稿完成,目前的J-link驅動版本是V6.22c。我們可以下載ARM版本的J-link驅動(該資源是我手工下載下來的再重新上傳的,方便大家找和下載)
如果這篇文章已經過去了很久 那么建議從下面的官網地址去下載
https://www.segger.com/downloads/J-link/
我們會下載得到一個tgz壓縮包 把這個包解壓到樹莓派中(建議目錄/opt/)
打開這個文件夾,里面會有很多的可執行文件。這時候我們需要運行其中的J-linkRemoteServer
首先確認我們具有可執行權限,如果沒有則需要使用chmod指令
chmod +x J-linkRemoteServer
這時候,記得把J-link插上樹莓派,然后我們可以試著運行一下
./J-linkRemoteServer
當你的終端顯示"Waiting for client connection…"的時候就意味著你的服務器已經啟動成功了!
如果出現其他問題,建議使用J-linkExe來看一下J-link的識別問題
如果測試成功的話,我們就可以把它添加到樹莓派的開機自啟動了,讓樹莓派在開機自啟的時候打開服務,更省心。
我們可以用sudo vim /etc/rc.local,在文件末尾前添加自己的啟動項。
nohup /絕對路徑/J-linkRemoteServer &
使用nohup的原因是有時候Server會等待輸出,使用nohup好像可以忽略輸出。。在這點我還是有一點不明白,歡迎評論指教。
使用 & 的原因是開機的時候把該程序掛到后臺
編輯完成后保存重啟,重啟后可以使用ps -A來查看服務有沒有正常運行
當樹莓派的遠程服務器已經配置完成的時候,我們就可以把樹莓派與STM32通過J-link給連接好,固定好,然后讓樹莓派連上wifi 靜靜的待在一個地方就可以了。
#上位機連接J-link遠程服務器
在這里我使用的是MDK-ARM ,想必大家開發應該也是用這個居多吧 如果用的是IAR或者其他的IDE,應該是大同小異的
這時候我們隨便打開一個工程,在工程設置里面找到J-link的設置
然后把鏈接方式改成“TCP/IP”,然后在ip地址填上樹莓派的局域網ip地址,端口填0讓程序自動搜索就可以的了
鏈接成功的話再設置上方應該會出現J-link的驅動號還有設備號
然后到此 設置就完成了!然后就可以像平時一樣,該怎么下載就怎么下載 該怎么調試就怎么調試,再也沒有線的限制!
PS:在使用中可能遇到的問題
在下載的過程中經常出現Max Number錯誤:局域網的傳輸速度太慢,同時下載速率過高,導致傳輸時頻繁重連導致出現鏈接數量超過限制的錯誤。解決辦法:把傳輸速率降低,比如我就把傳輸速率降到了500kHz。大家可以自己大概試著調一下。
以下是建議步驟 我在探索的時候有這些操作 但不確定這些操作是不是必須的 如果跟著上面的操作有任何異常情況 可以試著走一走下面的步驟
###更新電腦端的J-link驅動程序
因為剛剛我們在ARM的服務端是剛剛在官網下的比較新的驅動,鑒于很多人在平時開發STM32工程沒有什么升級J-link的習慣,所以J-link軟件一般都比較老,這可能會導致一些版本不兼容的情況,所以電腦的J-link驅動也需要更新,可以查看剛剛提供的官網鏈接。
在安裝完新版的J-link之后記得還要在IDE里面更新J-link的文件,用驅動自帶的DLL-updater或者手動復制都可以了。
上一篇:ADB+Python+STM32 實現 微信跳一跳輔助
下一篇:stm32 usb和安卓手機的通訊過程
推薦閱讀
史海拾趣
在電子行業的激烈競爭中,Freqtech Ohg公司深知技術創新的重要性。公司投入大量研發資源,專注于高頻電子技術的研發。經過數年的努力,Freqtech成功開發出一款高性能的高頻濾波器,該產品在信號傳輸效率和穩定性方面遠超同類競品。這一技術創新不僅為公司贏得了國內外多個重要客戶,還使得Freqtech在高頻電子領域迅速崛起,成為行業內的佼佼者。
Vishay一直致力于技術創新和產品升級。在2001年,公司收購了全球二極管和整流器領先制造商General Semiconductor,這一收購極大地增強了Vishay在二極管和整流器領域的實力。同時,Vishay還通過收購RFWaves公司,涉足無線領域,為公司帶來了新的增長動力。此外,Vishay還在全球范圍內布局制造基地和銷售辦事處,確保能夠為客戶提供優質的產品和服務。
隨著市場的不斷變化和競爭的加劇,艾華集團意識到,要想在行業中立足并取得長遠發展,必須走科技創新之路。于是,公司成立了多個研究院,專注于基礎材料、產品、工業裝備以及產品應用的研究。通過不斷的科技創新和產品升級,艾華集團成功研發出了耐超高紋波和耐超強沖擊電流的鋁電容器技術,這一技術在市場上獲得了廣泛認可,贏得了飛利浦、歐司朗、GE等世界知名照明客戶的青睞。
在科技創新的推動下,艾華集團的產品逐漸在國內外市場上嶄露頭角。公司不僅在國內市場上取得了顯著成績,還積極拓展海外市場,產品遠銷歐美、東南亞等地區。同時,艾華集團也注重品牌建設,通過提升產品品質、加強售后服務等方式,不斷提升品牌影響力和美譽度。
Astro Tool Corp公司初創時,面臨著電子制造行業激烈的競爭環境。然而,公司創始人憑借其在精密工具制造領域的深厚技術背景,帶領團隊研發出了一款具有高精度和高穩定性的電子制造工具,成功吸引了業內眾多客戶的關注。這款產品不僅提高了生產效率,還降低了制造成本,迅速在市場上占據了一席之地。公司借此機會,不斷擴大生產規模,逐步在電子制造工具市場建立起自己的地位。
近年來,隨著物聯網技術的快速發展,Echelon也積極布局該領域。公司在嵌入式系統部門收購了Echelon Corporation后,成立了新的物聯網業務部門,并推出了SmartServer物聯網平臺。該平臺采用了開放、可擴展的體系結構,可以連接、監控商業和工業物聯網部署設備,并提供智能化和自動化的決策支持。SmartServer平臺的推出,使得Echelon在物聯網領域取得了重要突破。
我現在用的手機老出毛病了,想換一個新的手機,今天去看了一下,想在三星S5230C和OPPOT9中選擇一個,因為不了解OPPO手機的實際使用效果,所以,特發此帖請教一下大家,希望能夠得到指導(S5230送電池一塊和二級內存一個,價格為1828元,OPPOT9為2198元,不還價 ...… 查看全部問答∨ |
|
一直作c#的開發,最近又個項目需要開發wince下的程序,前不久開發出了一個還可以,現在增加的一個功能, 是在手持設備上通過無線網連接到服務器,下載文件覆蓋手持設備上原有的文件 ps:手持設備是wince5.0的程序。 我用c#開發,應該看哪方面的 ...… 查看全部問答∨ |
|
我們實驗室最近要做一個關于視頻監控的項目。選擇了在基于arm9的開發板上實現。 但是基于成本的考慮,準備自己做視頻壓縮,現在有一個問題想請教一下。 ffmpeg有沒有特別對于arm系列的芯片做過優化,我現在只是知道可以在linux下面完成。但是我在 ...… 查看全部問答∨ |
|
板子是研楊的4310,帶44pin的LCD接口,接口定義如下: 01. +12 VDC 02. +12 VDC 03. GND 04. GND 05. +5 VDC &nbs ...… 查看全部問答∨ |
請教大家一個問題: 我的F2812板子的AD轉換有問題,每次都是相同的一個值,而且我測量兩個參考輸出,數據手冊說分別為1V和2V,但我測量有時候是0V有時候分別是0.64V和0.56V,不知道是什么問題,請教各位高手,希望大家多 ...… 查看全部問答∨ |