人妻蜜と1~4中文字幕月野定规 ,国产精品成人va在线播放,色优久久久久综合网鬼色,WWW插插插无码视频网站

【ARM】MDK-通過KEIL+JLink,實(shí)現(xiàn)遠(yuǎn)程下載和調(diào)試工程代碼

1、 問題場(chǎng)景

很多時(shí)候,研發(fā)同事可能遇到這樣的問題:

問題場(chǎng)景①:在現(xiàn)場(chǎng)的設(shè)備出現(xiàn)問題了,研發(fā)通過遠(yuǎn)程找不出原因,需要去現(xiàn)場(chǎng)進(jìn)行在線調(diào)試,不過出差的話,成本又太高了。如果直接將工程源碼發(fā)送到客戶電腦,再通過遠(yuǎn)程工具連接客戶電腦進(jìn)行調(diào)試,又會(huì)出現(xiàn)很大的源碼泄露風(fēng)險(xiǎn),這時(shí)該怎么辦?


問題場(chǎng)景②:設(shè)備在公司,回家要帶來帶去比較麻煩怎么辦?如果想要測(cè)試某個(gè)開發(fā)板,這個(gè)開發(fā)板不支持軟件仿真,只能硬件仿真,而現(xiàn)在我們手邊沒有這個(gè)開發(fā)板,但是朋友那邊有,但是又不想打擾朋友使用電腦怎么辦?


問題場(chǎng)景③:設(shè)備過于危險(xiǎn),如調(diào)試螺旋槳,重型機(jī)械臂等,一旦失控,極容易傷害到附近的員工,所以通過單獨(dú)封閉這些設(shè)備,通過遠(yuǎn)程來進(jìn)行調(diào)試會(huì)不會(huì)更好,更安全?

那有沒有在公司或者在家就可以遠(yuǎn)程在線調(diào)試的方法?今天,就給大家介紹一下這種方法:通過jlink遠(yuǎn)程下載和調(diào)試工程代碼。實(shí)現(xiàn)如圖1所示,向日葵中的keil通過TCP/IP的鏈接方式,成功鏈接到另外一臺(tái)和設(shè)備直連的客戶機(jī)上。


局域網(wǎng)遠(yuǎn)程下載和調(diào)試:


廣域網(wǎng)遠(yuǎn)程下載和調(diào)試:


2、軟硬件環(huán)境

1)、軟件版本:MDK5.40

2)、電腦環(huán)境:Windows 10

3)、外設(shè)硬件:無


3、解決方法

一、局域網(wǎng)內(nèi)的遠(yuǎn)程調(diào)試:

1)、為現(xiàn)場(chǎng)已連接好設(shè)備和 Jlink 的電腦,安裝jlink驅(qū)動(dòng),并在其安裝目錄中找到并打開:J-Link Remote Server.exe,如圖2所示,勾選USB,并配置為使用局域網(wǎng),點(diǎn)擊ok。


2)、點(diǎn)擊完ok以后,可以看到,我們的連接類型為局域網(wǎng),現(xiàn)場(chǎng)電腦的ip為192.168.1.57,不過此時(shí)客戶端還沒有連接過來,所以顯示為斷線,如圖3所示:


3)、打開客戶端的keil的debug界面,找到j(luò)link的settings,如圖4所示。(這里我自己的電腦連接了電路板,連接了Jlink,是作為服務(wù)端的。圖4中正在被向日葵遠(yuǎn)程的電腦,只安裝了keil mdk和Jlink驅(qū)動(dòng),和外界沒有任何物理線路的連接,是作為客戶端的)。在圖4中,勾選連接方式為TCP/IP,并輸入服務(wù)端IP地址和默認(rèn)的端口號(hào)19020,點(diǎn)擊鏈接,即可以看到上方,出現(xiàn)了調(diào)試器SN號(hào)等信息。


4)、在客戶端下載程序,可以看到,已經(jīng)成功把客戶端的程序,下載到了服務(wù)端連接的設(shè)備里,如圖5所示:



二、使用隧道進(jìn)行廣域網(wǎng)內(nèi)的遠(yuǎn)程調(diào)試

1)、為現(xiàn)場(chǎng)已連接好設(shè)備和 Jlink 的電腦,即服務(wù)端,安裝jlink驅(qū)動(dòng),并在其安裝目錄中找到并打開:J-Link Remote Server.exe,如圖6所示,勾選USB,并配置為使用segger的隧道服務(wù)器,使用的服務(wù)器為:jlink-asia.segger.com,通過自定義的名字識(shí)別,這里命名為emdoor,點(diǎn)擊ok。


2)、點(diǎn)擊完ok以后,可以看到,我們的連接類型為隧道,不過此時(shí)客戶端還沒有連接過來,所以顯示為客戶端和隧道斷線,隧道和服務(wù)端鏈接成功,如圖7所示:


2)、在服務(wù)端的安裝目錄中,找到并打開:J-Link Commander.exe,如圖8所示,選擇連接方式為IP via tunnel,下面的Identifier為剛才我們命名:emdoor,隧道服務(wù)器為我們剛才選的:jlink-asia.segger.com,端口為默認(rèn)的19020,密碼按照定義好的輸入后,點(diǎn)擊yes。


3)、點(diǎn)擊yes以后,可以在圖9的終端中看到,已經(jīng)連接成功了。

接著我們輸入connect,和目標(biāo)板建立連接,接著他讓我們選擇板子的類型,由于我已經(jīng)使用過,所以這里默認(rèn)就是我需要的板子類型,直接回車確認(rèn)了,再往后,是調(diào)試接口,我這里也是直接回車確認(rèn),默認(rèn)為JTAG,后面也是,默認(rèn)自動(dòng)檢測(cè),最后是默認(rèn)4000kHz的目標(biāo)接口速度。


4)、輸入完以上的參數(shù)以后,終端中就會(huì)出現(xiàn)如圖10所示的信息,即為成功信息。


5)、接著,我們就可以輸入命令,用以遠(yuǎn)程查看設(shè)備內(nèi)部的存儲(chǔ)信息,如圖11所示:

如:mem 0x08000000, 32 就是查看從內(nèi)存地址 0x08000000 開始的 32 個(gè)字節(jié)的內(nèi)容。

w4 0x0, 0x11223344 將 32 位(4 字節(jié))的值 0x11223344 寫入到內(nèi)存地址為 0x0 的位置。

mem 0x08000000, 32 再次查看,可以看到,前4個(gè)字節(jié)的值,已經(jīng)改變?yōu)槲覀冊(cè)O(shè)置的值。



總結(jié):

①:局域網(wǎng)遠(yuǎn)程下載和調(diào)試,是支持直接使用keil 連接的(但是可以通過配置內(nèi)網(wǎng)穿透、VPN等技術(shù),依然可以實(shí)現(xiàn)廣域網(wǎng)的遠(yuǎn)程下載和調(diào)試);

②:廣域網(wǎng)遠(yuǎn)程下載和調(diào)試,不支持直接使用keil連接,使用keil的研發(fā)需要學(xué)習(xí)一些調(diào)試下載命令,使用終端窗口這種形式,來遠(yuǎn)程操作現(xiàn)場(chǎng)的設(shè)備。但是IAR、Embedded Studio、GDB/Eclipse,官網(wǎng)中有說明表示:是可以直接集成在軟件中使用,如下圖: