久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1913|回復: 0
打印 上一主題 下一主題
收起左側

RISC-V MCU開發(十二):命令行操作

[復制鏈接]
跳轉到指定樓層
樓主
    考慮到習慣命令行操作的用戶群體,MounRiver® Studio(MRS)除了使用圖形化UI進行用戶交互外,也提供了脫離界面的命令行操作說明,用于對編譯后的工程進行燒錄和調試。如果是Linux平臺用戶,您也可以在MRS官網的下載頁面下載工具鏈和OpenOCD壓縮包,根據說明引導進行實踐。本文以Windows平臺軟件環境MRS1.51進行介紹。

【命令行入口】MRS提供了已包含工具路徑的命令行。點擊工具欄圖標 ,或者在Project Explorer右鍵彈出菜單中選擇Open MRS Console,即可打開命令行,并自動指定將當前路徑為對應的目錄路徑(如果選擇的是文件,則當前路徑為文件所在的目錄)。若當前未選擇資源,命令行的當前路徑即為工作空間目錄。


【編譯】
由于脫離了界面的UI配置,對于未知的工程結構。用戶需要:
1.        手動為每個源文件目錄編寫Makefile規則,指定源文件集合、依賴、匯編/編譯工具exe、編譯參數(例如編譯頭索引目錄)。
2.        切換到一個新目錄,作為輸出目錄,用戶手動為編寫Makefile規則,指定鏈接各個源的中間文件、鏈接工具exe、鏈接參數(例如ld文件)。以上步驟了解Makefile的語法。
3.        命令行路徑切換到步驟2的輸出目錄下,執行make進行編譯,如果編譯工程成功將會最終輸出elf文件。執行make clean可進行輸出文件的清理。
【燒寫,以wch的risc-v內核工程為例】
擦除 OPENOCD_PATH –f CFG_PATH –c init –c halt -c "flash erase_sector wch-riscv 0 last" –c exit
編程 OPENOCD_PATH –f CFG_PATH –c init –c halt -c "program TARGET_PATH ADDRESS" –c exit
校驗 OPENOCD_PATH –f CFG_PATH –c init –c halt –c "verify_image TARGET_PATH " -c exit
復位 OPENOCD_PATH –f CFG_PATH –c init -c reset -c exit

【調試】
1.創建openocd進程
格式:OPENOCD_PATH  -f  CFG_PATH
提倡使用拖拽的方式,提升效率,也可避免輸入路徑出錯。
執行命令,openocd會獲取開發板狀態,并啟動協議server端。隨后openocd進程掛起,等待連接。命令行中顯示等待連接的端口號,此處gdb通信的端口默認為3333。


2. 開啟第二個MRS Console,啟動gdb client
格式:  GDB_PATH  [FILE_PATH]  [–ARGS]
無參數形式riscv-none-embed-gdb為默認的gdb cli命令。
參數形式riscv-none-embed-gdb xxxx.elf -interpreter mi  在支持cli基礎上,同時支持gdb mi命令。MRS調試打開gdb trace之后,Console輸出的命令就是gdb mi命令。可以復制到此模式下逐個運行。

若指定了FILE_PATH,如命令riscv-none-embed-gdb xxxx.elf ,則后續不需要調用file命令指定調試文件;若未指定FILE_PATH,則后續需要file命令指定調試文件。

3. gdb連接設置
設置連接配置:
set mem inaccessible-by-default off
set remotetimeout unlimited
(rv內核) set architecture riscv:rv32

4.連接server端口
target remote ip:port:連接端口


5. 調試的其他命令
load :燒寫, 執行后將pc置為程序第一條指令處;
info register + 寄存器名: 查看寄存器;
info breakpoint:查看所有斷點;
break +行號/方法名/符號名:設置斷點 ;
continue:繼續跑到下一個斷點,如果沒有斷點則一直運行;
next:調試執行下一步;
step:單步進入;
print:打印變量值;
list:(需要工程目錄包含源碼, 編譯時調試等級-g以上)查看當前代碼 ;

暫停狀態時,可執行查看寄存器、查看當前代碼,查看反匯編等操作;
gdb模式下,可輸入help all列出所有命令,如搜索、變量打印、查看堆棧等。

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 91麻豆精品国产91久久久更新资源速度超快 | www.操.com | 激情久久久久 | 亚洲人人| 999久久久 | av国产精品毛片一区二区小说 | 国产第一页在线观看 | 狠狠av| 亚洲女人天堂成人av在线 | 91大神在线资源观看无广告 | 国产精品久久久99 | 免费视频一区二区 | 免费高清av| 日韩久久网 | 日本一区二区三区在线观看 | 亚洲一区二区三区在线 | 亚洲精品中文字幕在线 | 播放一级毛片 | 久草在线中文888 | 91精品国产91久久久久久吃药 | 日韩电影在线 | 国产高清久久久 | 性色综合| 精品一区二区免费视频 | 特一级黄色毛片 | 欧美日韩精品一区二区 | 亚洲精品免费在线观看 | 羞羞的视频网站 | 人人干人人干人人 | 一区二区三区四区免费视频 | 成年人在线观看视频 | 天天久久 | 日韩中文视频 | 日韩五月天| 久久一二 | 亚洲黄色av| 日韩中文字幕2019 | 超碰一区二区 | 精品国产成人 | 国产成人在线视频 | 久久r久久 |