chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

DR1平臺Linux應用開發(fā)指南:含GDB調試、Python及MQTT實戰(zhàn)

Tronlong創(chuàng)龍科技 ? 來源:Tronlong創(chuàng)龍科技 ? 作者:Tronlong創(chuàng)龍科技 ? 2026-01-05 16:48 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前 言

本文為創(chuàng)龍科技編寫的Linux應用開發(fā)的指引文檔,提供Linux應用開發(fā)環(huán)境、開發(fā)流程等說明,以及對平臺關鍵技術及其支持情況進行簡要介紹。同時本文將對部分通用開發(fā)技術進行說明,其它應用開發(fā)內容請按文中說明選擇對應參考文檔進行閱讀。

當前應用開發(fā)支持情況如下表所示。

wKgZO2lbdamAQEqRAAAW4Efnnak361.png

在完成開發(fā)環(huán)境搭建后,可參考本文的“Linux常用開發(fā)案例”章節(jié)熟悉基本的應用開發(fā)流程,然后可參考如下文檔進行產品應用開發(fā)。

(1)圖形界面開發(fā):暫無參考;

(2)視頻圖像處理開發(fā):暫無參考。

開發(fā)環(huán)境

Windows開發(fā)環(huán)境:Windows10 64bit

Linux開發(fā)環(huán)境:VMware16.2.5、Ubuntu22.04.4 64bit

LinuxSDK開發(fā)包:LinuxSDK-[版本號](基于SDK_2025.1)

交叉編譯工具鏈:

應用開發(fā):gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu

U-Boot、內核開發(fā):gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu

評估板系統(tǒng)版本:U-Boot-2021.01、Linux-6.1.111、Buildroot-2022.02

備注:本文基于8GByteeMMC、1GByteDDR配置核心板進行演示。

術語表

為便于閱讀,下表對文檔出現(xiàn)的關鍵術語進行解釋;對于廣泛認同釋義的術語,在此不做注釋。

wKgZPGlbdbmAbiiSAAA1gnmDsns568.png

注意事項

(1)無特殊說明情況下,默認使用USB TO UART1接口作為調試串口,使用Linux系統(tǒng)啟動卡啟動系統(tǒng),通過路由器與PC機進行網絡連接。請根據(jù)評估底板絲印將啟動方式選擇撥碼開關撥為011(1~3),此檔位為Micro SD啟動模式。

(2)本文檔涉及的開發(fā)案例位于產品資料“4-軟件資料Demo”路徑下的base-demos目錄。base-demos目錄存放Linux常用開發(fā)案例,案例bin目錄存放可執(zhí)行文件,案例src目錄存放源碼。

1開發(fā)環(huán)境搭建說明

1.1LinuxSDK使用說明

請參考《開發(fā)環(huán)境搭建》的LinuxSDK安裝章節(jié)正確解壓LinuxSDK并安裝相關依賴軟件,然后參考《Linux系統(tǒng)開發(fā)手冊》的LinuxSDK配置與編譯章節(jié)正確編譯LinuxSDK,生成支持應用開發(fā)的交叉編譯工具鏈。

編譯完LinuxSDK后,請執(zhí)行如下命令,完成Linux應用開發(fā)的環(huán)境變量配置,即可進行Linux應用開發(fā)。

Host# export PATH=/home/tronlong/DR1/SDK_2025.1/device/output/anlogic_dr1m90/buildroot/host/bin/:$PATH

wKgZPGlbdhWAJI-MAABNALVCKf4451.png圖 1

1.2工具鏈使用說明

通過export命令完成環(huán)境變量配置后,請執(zhí)行如下命令,查看編譯工具鏈版本。

Host# aarch64-linux-gnu-gcc -v

wKgZO2lbdj6Ad7ahAAHO0dHHpd0440.png圖 2

2GDB調試說明

GDB為GNU推出的經典命令行調試工具,在Linux系統(tǒng)下廣泛使用。它功能強大,能讓開發(fā)者單步執(zhí)行程序、逐過程或逐語句調試,自由跳入或跳出函數(shù),還能按條件設置斷點,實時查看變量值,精準定位程序問題。

GDB支持多種語言,包括匯編、C/C++、D、Fortran、GO、Objective-C、OpenCL等。此外,它有遠程調試模式,在嵌入式系統(tǒng)調試中優(yōu)勢明顯。借助TCP/IP協(xié)議及專有通信協(xié)議,可讓調試程序的主機與運行程序的目標機跨設備協(xié)作,高效完成調試任務。

2.1調試環(huán)境搭建

請先參考產品資料用戶手冊目錄下的《開發(fā)環(huán)境搭建》和《Linux系統(tǒng)開發(fā)手冊》安裝、編譯LinuxSDK。

GDB調試工具壓縮包gdb-10.2.tar.xz位于LinuxSDK源碼目錄"buildroot/dl/gdb/"下。

wKgZO2lbeCqAWNzgAAAzssZTMYM870.png圖?3

在DR1工作目錄下執(zhí)行如下命令,創(chuàng)建gdb-tool目錄用于存放GDB調試工具壓縮包,將GDB調試工具包拷貝至該目錄下并解壓。

Host# mkdir gdb-tool

Host# cdgdb-tool

Host# cp /home/tronlong/DR1/SDK_2025.1/buildroot/dl/gdb/gdb-10.2.tar.xz /home/tronlong/DR1/gdb-tool/

Host# tar -xvf gdb-10.2.tar.xz

wKgZO2lbeDWADui3AAB3jA7ageY966.png圖 4

wKgZPGlbeDWAU1zLAABM8R5XziM496.png圖 5

執(zhí)行如下命令,配置交叉編譯工具鏈環(huán)境變量,并新建install目錄用于存放編譯生成的GDB調試工具。

Host# export PATH=/home/tronlong/test/sdk/SDK_2025.1/device/output/anlogic_dr1m90/buildroot/host/bin:$PATH

Host# mkdir install

wKgZPGlbeEWAZJbvAACFA_uhan4902.png圖 6

執(zhí)行如下命令,進入GDB調試工具包目錄,配置GDB調試工具。

Host# cd gdb-10.2

Host# ./configure --target=aarch64-linux-gnu --prefix=/home/tronlong/DR1/gdb-tool/install/

備注:--target表示GDB調試工具名稱前綴,選擇aarch64-linux-gnu;--prefix表示存放目錄,選擇新建的install目錄。

wKgZO2lbeFCADfDYAADU0ez-OZ4675.png圖 7

wKgZPGlbeFCAaPqLAADdsJhM2WA198.png圖?8

執(zhí)行如下命令進行編譯。

Host# make

wKgZO2lbeGOAXo05AAFFac7Wsq8526.png圖?9

wKgZPGlbeGOALIffAADbhWsjLfs788.png圖?10

執(zhí)行如下命令安裝GDB調試工具,將會在”install/bin”目錄下生成GDB調試工具。

Host# make install

wKgZPGlbeHOADOd_AAEztAZxxLo213.png圖?11

wKgZO2lbeHOAZBd_AAEgUZOH74Y513.png圖?12

wKgZPGlbeHSAC_rOAAA4w05g_WA152.png圖 13

2.2演示程序創(chuàng)建與編譯

在gdb-tool目錄下執(zhí)行如下命令,新建一個GDB調試演示程序。

Host# vitest.c

Host# cat test.c

wKgZO2lbeIyAU9ATAAB4CrkjAYs836.png圖 14

演示程序代碼如下:

#include

void show() {

printf("shown");

}

int main(int argc, char *argv[])

{

int arr[4] = {1, 2, 3, 4};

int i = 0;

for (i = 0; i < 4; i++) {

printf("arr[%d]: %dn", i, arr[i]);

}

show();

return 0;

}

執(zhí)行如下命令,進行程序編譯,編譯完成將會生成test可執(zhí)行程序。

備注:編譯時需添加-g參數(shù),生成的可執(zhí)行文件才帶有調試信息。

Host# aarch64-linux-gnu-gcc -g test.c -o test

wKgZO2lbeJaAFdZVAABXNTn-oNg853.png圖?15

評估板與PC機連接至同一個路由器后進行上電,將編譯后的可執(zhí)行文件test拷貝至評估板文件系統(tǒng)任意目錄下。

Target# lstest

wKgZPGlbeJ6AabRDAAAE9Sd8XIs661.png圖?16

2.3調試程序運行

執(zhí)行如下命令,查看虛擬機的IP地址。

Host# ifconfig

wKgZO2lbeKWAYPq8AAGA-eA9ibQ319.png圖 17

在評估板文件系統(tǒng)test文件所在路徑下,執(zhí)行如下命令運行gdbserver程序,開啟監(jiān)聽。

備注:192.168.13.81為虛擬機的IP地址;1234為連接的端口號(自行設置);test為將要進行調試的程序。

Target# gdbserver 192.168.13.81:1234 test

wKgZPGlbeLuACGQFAAASAg8upAo945.png圖?18

在虛擬機test文件所在路徑下,執(zhí)行如下命令使用GDB調試工具進行程序調試。

Host# ./install/bin/aarch64-linux-gnu-gdb test

wKgZO2lbeMKAJf9-AAD_Keh8s2Q863.png圖?19

執(zhí)行如下命令,連接評估板。192.168.13.47為評估板的IP地址,請以實際情況為準。

(gdb) target remote 192.168.13.47:1234

wKgZPGlbeMmAb8KJAACmvT_t9hI228.png圖?20

同時,串口調試終端顯示連接成功的相關信息。

wKgZO2lbeNCAFUjHAAAWn7y7_R4342.png圖?21

2.4 程序調試

本章節(jié)主要演示GDB調試的幾個常用命令的使用方法。

2.4.1 list命令

用于列出源碼,簡寫:l。

wKgZO2lbeNaADCH8AABiyg4_q08562.png圖 22

2.4.2 break命令

用于設置斷點,簡寫:b。

分別在main函數(shù)和第10行設置斷點。

wKgZPGlbeN2AEO-sAAA3M-GiKoQ056.png圖 23

2.4.3 info breakpoints命令

用于顯示斷點的狀態(tài),簡寫:infob。

wKgZPGlbeRCACgstAABEcRxJziM268.png圖 24

2.4.4 continue命令

用于恢復程序執(zhí)行,簡寫:c。此命令使GDB恢復程序的執(zhí)行,直至斷點觸發(fā)或程序結束。

wKgZPGlbeRyAOaF_AAB354HpSeM658.png圖 25

以上調試過程在第二個斷點中,每輸入一次c命令,將會依次打印arr[]數(shù)組的元素值,然后程序執(zhí)行結束。同時,串口調試終端打印相關信息。

wKgZO2lberKAJoJOAAAioBOYThc227.png圖 26

2.4.5 print命令

用于打印變量或者變量地址,簡寫:p。

設置斷點后,可依次打印當前變量i的值。

wKgZPGlberuAAY8-AAHHOj5MzCM173.png圖 27

以上調試過程在每處斷點中,使用print命令打印變量i的值。同時,串口調試終端打印相關信息。

wKgZPGlbesSAQB2mAAAiNHXN9dM500.png圖 28

2.4.6 quit命令

退出GDB模式,簡寫:q。當程序調試完成后,使用quit命令退出GDB調試。

wKgZO2lbesuAQ2NSAAA8favW3JQ895.png圖 29

同時,串口調試終端打印相關信息。

wKgZO2lbetOABCdKAAAifo_tGeg469.png圖 30

由于篇幅過長等原因,部分內容均不逐一展示,如需獲取完整版詳細資料,請關注創(chuàng)龍科技微信公眾號或官網,或者評論區(qū)留言,感謝您的支持!

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    88

    文章

    11681

    瀏覽量

    218572
  • python
    +關注

    關注

    57

    文章

    4866

    瀏覽量

    89801
  • MQTT
    +關注

    關注

    5

    文章

    730

    瀏覽量

    24933
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    基于安路DR1M90 FPSoC的Linux系統(tǒng)全流程開發(fā)指南(4)

    ,以及 CPU/DDR 管理,附帶 TFTP+NFS 快速調試方案。實操命令與配置步驟,適配特定硬件與開發(fā)環(huán)境,幫助開發(fā)者完成系統(tǒng)鏡像生成、替換與
    的頭像 發(fā)表于 11-30 15:46 ?2126次閱讀
    基于安路<b class='flag-5'>DR1</b>M90 FPSoC的<b class='flag-5'>Linux</b>系統(tǒng)全流程<b class='flag-5'>開發(fā)指南</b>(4)

    使用GDB調試Linux應用程序

    本篇講解使用GDB調試Linux應用程序,以下以 `hellowld.c` 為例介紹 GDB調試入門。
    發(fā)表于 06-27 15:48 ?765次閱讀

    DR1 系列核心板 PS+PL 異構多核實戰(zhàn)案例手冊(二)

    本文為創(chuàng)龍科技DR1 系列評估板 PS+PL 異構多核開發(fā)指南,涵蓋 9 類核心案例與關鍵技術實現(xiàn)。核心內容包括 AXI 總線與 PS_PLIO 兩種通信方式,涉及 GPIO 控制、串口 / CAN
    的頭像 發(fā)表于 01-14 17:23 ?3460次閱讀
    <b class='flag-5'>DR1</b> 系列核心板 PS+PL 異構多核<b class='flag-5'>實戰(zhàn)</b>案例手冊(二)

    Tiny6410 Linux開發(fā)指南詳解

    ............................................................................................................................- 1 - Tiny6410 L
    發(fā)表于 07-08 17:12 ?210次下載
    Tiny6410 <b class='flag-5'>Linux</b><b class='flag-5'>開發(fā)指南</b>詳解

    Linux平臺下Mini210S裸機程序開發(fā)指南

    Linux平臺下Mini210S裸機程序開發(fā)指南
    發(fā)表于 10-29 10:52 ?59次下載
    <b class='flag-5'>Linux</b>的<b class='flag-5'>平臺</b>下Mini210S裸機程序<b class='flag-5'>開發(fā)指南</b>

    C#上位機實戰(zhàn)開發(fā)指南

    C#上位機實戰(zhàn)開發(fā)指南
    發(fā)表于 11-22 19:25 ?0次下載

    STM32開發(fā)指南

    開發(fā)指南將由淺入深,帶領大家進入 STM32 的世界。本指南總共分為三篇:1,硬件篇, 主要介紹本指南的實驗平臺;2,軟件篇,主要介紹
    發(fā)表于 07-13 16:07 ?44次下載

    Tina Linux配置開發(fā)指南

    Tina Linux配置開發(fā)指南
    的頭像 發(fā)表于 03-02 15:28 ?2w次閱讀
    Tina <b class='flag-5'>Linux</b>配置<b class='flag-5'>開發(fā)指南</b>

    Linux NOR開發(fā)指南

    Linux NOR開發(fā)指南
    的頭像 發(fā)表于 03-06 09:55 ?2138次閱讀
    <b class='flag-5'>Linux</b> NOR<b class='flag-5'>開發(fā)指南</b>

    如何使用linuxgdb調試python程序

    如何使用linuxgdb調試python程序? 在Linux下,可以使用GDB(GNU
    的頭像 發(fā)表于 01-31 10:41 ?3833次閱讀

    基于安路DR1M90 FPSoC 的Linux 系統(tǒng)全流程開發(fā)指南1

    ,以及 CPU/DDR 管理,附帶 TFTP+NFS 快速調試方案。實操命令與配置步驟,適配特定硬件與開發(fā)環(huán)境,幫助開發(fā)者完成系統(tǒng)鏡像生成、替換與
    的頭像 發(fā)表于 11-25 14:09 ?322次閱讀
    基于安路<b class='flag-5'>DR1</b>M90 FPSoC 的<b class='flag-5'>Linux</b> 系統(tǒng)全流程<b class='flag-5'>開發(fā)指南</b>(<b class='flag-5'>1</b>)

    基于安路DR1M90 FPSoC 的Linux 系統(tǒng)全流程開發(fā)指南(3)

    ,以及 CPU/DDR 管理,附帶 TFTP+NFS 快速調試方案。實操命令與配置步驟,適配特定硬件與開發(fā)環(huán)境,幫助開發(fā)者完成系統(tǒng)鏡像生成、替換與
    的頭像 發(fā)表于 11-26 17:01 ?239次閱讀
    基于安路<b class='flag-5'>DR1</b>M90 FPSoC 的<b class='flag-5'>Linux</b> 系統(tǒng)全流程<b class='flag-5'>開發(fā)指南</b>(3)

    DR1M90 評估板 TD-FD 工程與 Linux 多場景應用開發(fā)指南

    設備樹編譯,F(xiàn)D 工程的 HPF 文件導入、裸機 / FreeRTOS 工程創(chuàng)建,以及通過 JTAG 下載器、PS 端的程序加載與調試。文檔基于 Windows10 與 DR1 專用開發(fā)工具,提供完整
    的頭像 發(fā)表于 01-07 11:37 ?137次閱讀
    <b class='flag-5'>DR1</b>M90 評估板 TD-FD 工程與 <b class='flag-5'>Linux</b> 多場景應用<b class='flag-5'>開發(fā)指南</b>

    DR1 系列核心板 PS+PL 異構多核實戰(zhàn)案例手冊(一)

    本文為創(chuàng)龍科技DR1 系列評估板 PS+PL 異構多核開發(fā)指南,涵蓋 9 類核心案例與關鍵技術實現(xiàn)。核心內容包括 AXI 總線與 PS_PLIO 兩種通信方式,涉及 GPIO 控制、串口 / CAN
    的頭像 發(fā)表于 01-14 15:37 ?55次閱讀
    <b class='flag-5'>DR1</b> 系列核心板 PS+PL 異構多核<b class='flag-5'>實戰(zhàn)</b>案例手冊(一)

    DR1 系列評估板 PS 端裸機與 FreeRTOS 開發(fā)案例手冊

    本文為創(chuàng)龍科技DR1 系列評估板 PS 端裸機與 FreeRTOS 開發(fā)指南,涵蓋三大核心案例與雙開發(fā)模式實現(xiàn)。核心內容包括 LED 定時閃爍、按鍵控制 LED 亮滅、串口數(shù)據(jù)回顯功能,詳細說明工程
    的頭像 發(fā)表于 01-19 17:12 ?21次閱讀
    <b class='flag-5'>DR1</b> 系列評估板 PS 端裸機與 FreeRTOS <b class='flag-5'>開發(fā)</b>案例手冊