1. 程式人生 > >DA14683開發:框架

DA14683開發:框架

14683程式碼基本架構

勤基科技 陳杰明
1 匯入pxp_reporter例程。SDK的目錄結構一定要注意以下是本人的SDK目錄結構,可參考。

在這裡插入圖片描述
建立work space時自動生成的 .metadata 要與SDK在同一級目錄下並且SDK路徑最好不要包含空格。
開啟Studio,點選左上角的File按鈕,在下拉選單中選擇import
在這裡插入圖片描述

點選NEXT,然後在Browser處選擇從官網下載並解壓好的SDK檔案。
在這裡插入圖片描述
點選確定,然後就會彈出這套SDK中所有的例程,預設是全選的。而我們只需要匯入兩個即可。
在這裡插入圖片描述
在這裡插入圖片描述
第一個是例程。第二個是Script,可以理解為編譯依賴庫,必須匯入,否則編譯會報錯。選著好工程以後點選 Finish,即可完成例程和Script的匯入工作。

2 廣播引數修改。
在這裡插入圖片描述
雙擊pxp_reporter 就可以看到這套例程的程式碼結構。

裝置名

在這裡插入圖片描述
通過上圖可看到預設配對名,使用者可以根據自己的需求修改。

MAC地址
關於廣播間隔和藍芽MAC地址的設定和獲取,可以在gap.c中找到相關介面。ble_error_t ble_gap_adv_intv_set(uint16_t adv_intv_min, uint16_t adv_intv_max)ble_error_t ble_gap_address_set(const own_address_t *address, uint16_t renew_dur)更多介面和說明可以研究gap.c這個檔案。

服務註冊
在pxp_reporter_task這個函式中,可以找到一些藍芽引數初始化的介面呼叫。下面是註冊預設服務:
在這裡插入圖片描述

廣播間隔和引數
在這裡插入圖片描述
呼叫上圖的介面,可以修改廣播間隔和廣播引數。

系統時鐘修改
在這裡插入圖片描述
在main.c的system_int函式中,第一個是設定主時鐘,第二個和第三個是外設時鐘設定分頻
在這裡插入圖片描述
系統時鐘最大可以設定為96M,時鐘頻率越高,功耗越大,請選擇適合自己專案的時鐘頻率即可。

新增串列埠列印
串列埠列印例程都是做好的,只是有些例程並沒有把相關的巨集定義開啟,以及引腳沒有配置。所以我們只需要把相關巨集定義開啟,然後把引腳配置一遍就可以了。
在這裡插入圖片描述
在custom_config_qspi.h裡面新增一個巨集定義: #define CONFIG_RETARGET然後我們開啟main.c 找到下面這個函式
在這裡插入圖片描述


可以看到例程的預設列印口已經配置好了,分別是使用P1_3和P2_3這兩個口做列印口如果使用的是其他例程,不一定每個例程都預設有做串列埠列印的引腳配置,可以自行檢查。當用戶在程式中需要列印資料或者字串時,只需要呼叫printf函式即可,用法和標準C語言的用法是一樣的,注意要include”stdio.h”。
注意:有的例程配置的是UART1,有的例程配置的是UART2,具體可以找到以下檔案位置檢視:
在這裡插入圖片描述
串列埠列印波特率等引數也在這裡設定。

以上設定確定沒問題以後,我們開啟 pxp_reporter_task.c,在以下位置加上列印程式碼:
在這裡插入圖片描述
這個時候我們把程式碼下載到板子上,復位,手機APP搜尋 “Dialog PX Reporter”,連線串列埠列印助手就會出現我們新增的列印:
在這裡插入圖片描述

Dialog技術討論,QQ群871600668