可以作為da14580藍牙學習的入門教程。
DA14580實戰教程---
SDK目錄結構的介紹

1背景
有不少客戶反映Dialog官方提供的SDK里面放的東西多,也比較瑣碎,不容易看明白。為此我們覺得有必要編寫一 個專門介 紹SDK目錄結構的一個教程,方便大家盡快上手。SDK里面有不少文件夾是跟官方DONGLE相關的,對于這些 我們一筆帶過。大 家也沒必要在這上面花費太多的精力。其實市面上很多其它家的藍牙調試工具都可以配 合 DA14580DK 使用。
準備知識:
BLE: Bluetooth Low Energy 藍牙4.0低功耗
GAP: Generic Access Profile 通用存取Profile。跟藍牙的advertising相關
GTL: Generic Transport Layer 通用傳輸層。當工作于外部主控模式時,用來傳輸主控到DA14580的數據
HCI : Host Controller Interface 主控接口。當工作于外部主控模式時,DA14580提供給主控的通訊接口
NVDS: Non-Volatile Data Storage 非易失性數據存儲器。在DA14580中用來保存藍牙地址和一些配置信息
OTP: One Time Programmable (memory) 單次可編程存儲器。DA14580的片上存儲器,只能燒錄一次
SDK: Software Development Kit 軟件開發包
SoC: System-on-Chip 單芯片解決方案。MCU和專用功能的外設集成在一起,單個芯片能完成特定功能
SPotA: Software Patching over the Air 固件空中升級
SW: Software 軟件
0.jpg (44.81 KB, 下載次數: 25)
下載附件
2018-3-29 18:05 上傳
Figure 2 非主控工作模式
說明:藍牙協議棧和用戶程序都在DA14580上運行。
Figure2主控工作模式 說明:藍牙協議棧在DA14580上運行,用戶程序在外部MCU上運行。外部MCU和DA14580通過HCI接口進行通 訊,一般是通過串口。 開發者可以在MDK的源代碼中的宏定義設定DA14580的工作模式。具體如何設定后面教程會提到。
2SDK的介介介紹紹紹
DA14580 SDK由片上外設的驅動源代碼、藍牙協議棧目標文件、BLE profile源代碼、用于評估測試 DA14580的PC上位機源代碼組成。SDK下總共有5個文件夾,放得比較散亂,這里我們以SDK3.0.4.0為 例詳細說明一下。
Figure3SDK根目錄 下面我們分別介紹每個文件夾里面存放的內容 。
binaries: Figure4binaries 文件夾
這個文件夾里面放的是已經編譯好的文件。文件有兩個文件夾。 da14580文件夾: 里面放的是用來進行產品測試的 DA14580的固件。對應的PC機的exe文件放在windows文件夾下的 prod_test_cmds文件夾里面。這里稍微提一下產品測試,測試的大概方法就是 PC機通過串口線連接到 待測DA14580目標板的串口上,待測DA14580目標板燒錄prod_test固件,然后PC機運行prod_test_cmds 下的exe,在命令行下面發測試命令。具體可以參考<UM-B-008, DA14580 Production test tool>這個文檔。 host文件夾: 里面放的是host_apps文件下VC工程編譯好的exe文件。
Figure5dk_apps 文件夾
dk_apps文件夾: dk_apps文件夾下的內容才是我們的重點。官方提供的DEMO程序的項目工程都放在keil_projects 文件夾里面。 prod_test:就是我們前面說的用來進行產品測試的固件源代碼。 proximity:monitor_fe、monitor_fe_usb、reporter_fe、reporter_fe_spi、repoeter_fe_usb 這幾個 工程都是主控模式的防丟器DEMO;report_f h是非主控的防丟器DEMO。report_fh是常用的,其它幾個可以不用 理會。 訊聯電子提供的防丟器測試程序就是基于這個修改而來的。這里提下_fh是Fully_Embedded的縮 寫,帶這個字眼的工程 DA14580是在主控模式下運行; _fh是Fully_Hosted的縮寫,帶這個字眼的工程 DA14580運行在非主控模式下。 template:這個是官方提供的一個工程模版。以后我們的應用都可以在這個模版的基礎上修改。 throughput_eval:這個是一個評估數據吞吐率的源代碼。 patch_code:里面放的是分散加載文件
Figure6host_apps 文件夾
host_apps 文件夾: 如前面所描述,da14580文件夾下面存放的是產品測試固件的源代碼;windows文件夾下面放的是基于PC機 運行的防丟器和空中升級源代碼。這個不是我們關心的重點,有興趣的用戶可以自己仔細研究一下。
Figure7peripheral_examples文件夾
peripheral_examples文件夾: 這里面放的是片上外設的驅動代碼。我們關心的地方在 src文件夾。
Figure8tools文件夾
tools文件夾: 這里面有三個文件夾。 flash_programmer文件夾:放的是燒錄flash的MDK源代碼。當我們把我們編譯好的應用程序燒錄到SPI flash里面 的時候會用到。 prod_test文件夾:放的是我們前面說的binaries/da14580文件夾下的產品測試HEX pro_test的源代碼。 secondary_bootloader:bootloader的源代碼,用戶假如用到bootloader的話可以修改這個項目工程。
到此,整個SDK的文檔結構已經介紹完了。提醒大家注意一點,由于 SDK里面 有不少源碼是配合官方適配器或者PC機使用的,這部分我們可以少花點時間去關 注。我們的重點要放在dk_apps文件夾。更詳盡的介紹SDK的文檔,請參考官方
完整的pdf格式文檔51黑下載地址:
【原創】訊聯電子DA14580實戰教程---DA14580 SDK介紹.pdf
(3.66 MB, 下載次數: 64)
2018-3-29 14:46 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|