• <noscript id="e0iig"><kbd id="e0iig"></kbd></noscript>
  • <td id="e0iig"></td>
  • <option id="e0iig"></option>
  • <noscript id="e0iig"><source id="e0iig"></source></noscript>
  • 樹莓派3B+ 運行大疆 DJI PSDK2.1.0

    標簽: DJI  linux小白編程

    開發前準備:

    1.申請PSDK ID與KEY

    申請鏈接:https://developer.dji.com/payload-sdk/apply/

    2.申請通過后可以在用戶中心中下載PSDK2.1.0的開發包

    二、對PSDK2.1.0進行適配

    1.下載安裝包,并解壓

    unzip Payload_SDK_V2.1.0.zip

    大家可以看下文件架構

    doc/psdk_other_docs/psdk_code_style: Template files described code style of Payload SDK.
    doc/simple_model: Some structural models of Skyport 1/Skyport 2/X-Port and aircraft. The structure models provide convenience for users to design payload structure.
    psdk_lib/api_headers: Header files of Payload SDK, describing all API of Payload SDK. Users can understand features provided by Payload SDK and its usages relying on the header files.
    psdk_lib/lib: Library files of Payload SDK. Users select appropriate library file to use based on target platform.
    sample/api_sample: Sample code used to demonstrate usage of Payload SDK features.
    sample/platform: Sample code related to specific platform, including Linux and FreeRTOS platforms.
    sample/platform/linux/common/osal: OSAL layer implementation of Linux operation system.
    sample/platform/linux/manifold2: Sample project used on Manifold 2.
    sample/platform/rtos_freertos/common/osal: OSAL layer implementation of FreeRTOS operation system.
    sample/platform/rtos_freertos/psdk_development_board_1.0: Sample project used on Payload SDK development board 1.0.
    tools: Some tools used with Payload SDK.

    2.我們先修改Cmakelist.txt文件,位于Payload_SDK_V2.1.0-build.189/sample/platform/linux/manifold2/project

    修改兩個地方,第一處是編譯鏈版本,將原來的gcc g++改為arm-linux-gnueabihf-gcc arm-linux-gnueabihf-g++

     

    set(CMAKE_C_COMPILER "arm-linux-gnueabihf-gcc")
    set(CMAKE_CXX_COMPILER "arm-linux-gnueabihf-g++")

    第二處修改PSDK鏈接庫(如下直接注釋原來的,添加以下兩行)

     

    link_directories(${CMAKE_CURRENT_LIST_DIR}/../../../../../psdk_lib/lib/arm-linux-gnueabihf-gcc)
    link_libraries(${CMAKE_CURRENT_LIST_DIR}/../../../../../psdk_lib/lib/arm-linux-gnueabihf-gcc/libpayloadsdk.a)

    3.在app_info.h中填寫申請的用戶信息(文件路徑/Payload_SDK_V2.1.0-build.189/sample/platform/linux/manifold2/application)

    4.我們先注釋掉一些不好適配的功能先讓這個PSDK跑起來

    注釋psdk_config.h文件中的所有預定義:如圖所示

    注釋main.c中的234-237行 289-297行 416-422行(可能隨著版本變化 位置不一樣請對照下面圖片進行注釋)

    注釋psdk_media_file_mp4.c文件中207-213行(可能隨著版本變化 位置不一樣請對照下面圖片進行注釋)

    注釋psdk_media_file_jpg.c文件170-176行(可能隨著版本變化 位置不一樣請對照下面圖片進行注釋)

    注釋osal.c文件63-68行(可能隨著版本變化 位置不一樣請對照下面圖片進行注釋)

    到這里初步已經適配完成了,我們進行編譯和試跑。

    在project中新建文件夾build 

    mkdir build

    進行編譯

    cd build
    cmake ..
    make

    運行可執行文件

    ./psdk_demo

     

    版權聲明:本文為qq_35781447原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
    本文鏈接:https://blog.csdn.net/qq_35781447/article/details/107073279

    智能推薦

    樹莓派3b串口配置

    原文轉載自 這里 簡介 主要為了記錄下來下次再配置時的方便。 通常學習一塊新的硬件平臺,大家第一個工程便是流水燈,實際上這屬于IO口的基本控制,這與上篇文章VS使用wiringPi庫控制樹莓派的GPIO是異曲同工的,接下來便應該是開始使用其通信接口,而通信接口里面最簡單的又屬串口(uart),雖然簡單但目前仍然有很多模塊是以串口作為通信接口的,如一些藍牙模塊、低速wifi模塊、GPS模塊、GPRS...

    樹莓派3B安裝opencv

    樹莓派3B安裝opencv 安裝Raspbian-stretch操作系統 樹莓派配置開啟CSI攝像頭 配置樹莓派使opencv能夠讀取CSI攝像頭數據 安裝運行在python3上的opencv3 1.安裝numpy 2.安裝opencv所需的庫 3.下載opencv源碼放到/home/pi/Downloads目錄下 4.cmake設置編譯參數 5.編譯opencv 6.安裝opencv 7.測試o...

    樹莓派3B超聲測距

    準備:樹莓派3B,thonny,超聲傳感器,線 1、硬件連接 用的BCM編號方式 超聲傳感器的trig腳接20,echo腳接21。VCC,GND是供電的。 2、上代碼 3、上結果 完! --------------------------------------------------------------------------------------------諾有缸的高飛鳥202004...

    樹莓派3B 之UI

    今天這一篇我們主要講如何把前面的GPIO/IIC/UART綜合起來。 做成一個上位機。 前面的部分不用講了,今天主要講UI部分。 Qt我們使用的是拖拽控件的方式。 下面是實現的代碼部分: ***.cpp ***.h 這里面我們會有使用定時器。來跑線程。 最后的UI附上:...

    樹莓派3B連接wifi

    樹莓派連接wifi 一、樹莓派連接wifi 二、VNC遠程連接 三、打開VNC連接 一、樹莓派連接wifi 新建一個TXT文本,將名字修改為wpa_supplicant.conf 打開該新建的文件把下列代碼復制到文件內 二、VNC遠程連接 最后Finish回車 三、打開VNC連接...

    猜你喜歡

    HTML中常用操作關于:頁面跳轉,空格

    1.頁面跳轉 2.空格的代替符...

    freemarker + ItextRender 根據模板生成PDF文件

    1. 制作模板 2. 獲取模板,并將所獲取的數據加載生成html文件 2. 生成PDF文件 其中由兩個地方需要注意,都是關于獲取文件路徑的問題,由于項目部署的時候是打包成jar包形式,所以在開發過程中時直接安照傳統的獲取方法沒有一點文件,但是當打包后部署,總是出錯。于是參考網上文章,先將文件讀出來到項目的臨時目錄下,然后再按正常方式加載該臨時文件; 還有一個問題至今沒有解決,就是關于生成PDF文件...

    電腦空間不夠了?教你一個小秒招快速清理 Docker 占用的磁盤空間!

    Docker 很占用空間,每當我們運行容器、拉取鏡像、部署應用、構建自己的鏡像時,我們的磁盤空間會被大量占用。 如果你也被這個問題所困擾,咱們就一起看一下 Docker 是如何使用磁盤空間的,以及如何回收。 docker 占用的空間可以通過下面的命令查看: TYPE 列出了docker 使用磁盤的 4 種類型: Images:所有鏡像占用的空間,包括拉取下來的鏡像,和本地構建的。 Con...

    requests實現全自動PPT模板

    http://www.1ppt.com/moban/ 可以免費的下載PPT模板,當然如果要人工一個個下,還是挺麻煩的,我們可以利用requests輕松下載 訪問這個主頁,我們可以看到下面的樣式 點每一個PPT模板的圖片,我們可以進入到詳細的信息頁面,翻到下面,我們可以看到對應的下載地址 點擊這個下載的按鈕,我們便可以下載對應的PPT壓縮包 那我們就開始做吧 首先,查看網頁的源代碼,我們可以看到每一...

    精品国产乱码久久久久久蜜桃不卡