標(biāo)題: DA14580實戰(zhàn)教程-SDK目錄結(jié)構(gòu)的介紹 [打印本頁]

作者: 1213213zzgg    時間: 2018-3-29 14:47
標(biāo)題: DA14580實戰(zhàn)教程-SDK目錄結(jié)構(gòu)的介紹
可以作為da14580藍(lán)牙學(xué)習(xí)的入門教程。
DA14580實戰(zhàn)教程---
SDK目錄結(jié)構(gòu)的介紹



1背景

有不少客戶反映Dialog官方提供的SDK里面放的東西多,也比較瑣碎,不容易看明白。為此我們覺得有必要編寫一 個專門介 紹SDK目錄結(jié)構(gòu)的一個教程,方便大家盡快上手。SDK里面有不少文件夾是跟官方DONGLE相關(guān)的,對于這些 我們一筆帶過。大 家也沒必要在這上面花費太多的精力。其實市面上很多其它家的藍(lán)牙調(diào)試工具都可以配 合 DA14580DK 使用。

準(zhǔn)備知識:
BLE:               Bluetooth Low Energy              藍(lán)牙4.0低功耗
GAP:              Generic Access Profile              通用存取Profile。跟藍(lán)牙的advertising相關(guān)
GTL:              Generic Transport Layer              通用傳輸層。當(dāng)工作于外部主控模式時,用來傳輸主控到DA14580的數(shù)據(jù)
HCI :              Host Controller Interface              主控接口。當(dāng)工作于外部主控模式時,DA14580提供給主控的通訊接口
NVDS: Non-Volatile Data Storage              非易失性數(shù)據(jù)存儲器。在DA14580中用來保存藍(lán)牙地址和一些配置信息
OTP:              One Time Programmable (memory)              單次可編程存儲器。DA14580的片上存儲器,只能燒錄一次
SDK:              Software Development Kit              軟件開發(fā)包
SoC:              System-on-Chip              單芯片解決方案。MCU和專用功能的外設(shè)集成在一起,單個芯片能完成特定功能
SPotA: Software Patching over the Air              固件空中升級
SW:              Software              軟件


Figure 2    非主控工作模式

說明:藍(lán)牙協(xié)議棧和用戶程序都在DA14580上運行。



Figure2主控工作模式 說明:藍(lán)牙協(xié)議棧在DA14580上運行,用戶程序在外部MCU上運行。外部MCU和DA14580通過HCI接口進(jìn)行通 訊,一般是通過串口。 開發(fā)者可以在MDK的源代碼中的宏定義設(shè)定DA14580的工作模式。具體如何設(shè)定后面教程會提到。



2SDK的介介介紹紹紹

DA14580 SDK由片上外設(shè)的驅(qū)動源代碼、藍(lán)牙協(xié)議棧目標(biāo)文件、BLE profile源代碼、用于評估測試 DA14580的PC上位機(jī)源代碼組成。SDK下總共有5個文件夾,放得比較散亂,這里我們以SDK3.0.4.0為 例詳細(xì)說明一下。








Figure3SDK根目錄 下面我們分別介紹每個文件夾里面存放的內(nèi)容 。








binaries:
Figure4binaries 文件夾

這個文件夾里面放的是已經(jīng)編譯好的文件。文件有兩個文件夾。
da14580文件夾:
里面放的是用來進(jìn)行產(chǎn)品測試的 DA14580的固件。對應(yīng)的PC機(jī)的exe文件放在windows文件夾下的
prod_test_cmds文件夾里面。這里稍微提一下產(chǎn)品測試,測試的大概方法就是 PC機(jī)通過串口線連接到
待測DA14580目標(biāo)板的串口上,待測DA14580目標(biāo)板燒錄prod_test固件,然后PC機(jī)運行prod_test_cmds
下的exe,在命令行下面發(fā)測試命令。具體可以參考<UM-B-008, DA14580 Production test tool>這個文檔。
host文件夾:
里面放的是host_apps文件下VC工程編譯好的exe文件。




F
igure5dk_apps 文件夾


dk_apps文件夾:
dk_apps文件夾下的內(nèi)容才是我們的重點。官方提供的DEMO程序的項目工程都放在keil_projects
文件夾里面。
prod_test:就是我們前面說的用來進(jìn)行產(chǎn)品測試的固件源代碼。
proximity:monitor_fe、monitor_fe_usb、reporter_fe、reporter_fe_spi、repoeter_fe_usb 這幾個
工程都是主控模式的防丟器DEMO;report_f h是非主控的防丟器DEMO。report_fh是常用的,其它幾個可以不用
理會。 訊聯(lián)電子提供的防丟器測試程序就是基于這個修改而來的。這里提下_fh是Fully_Embedded的縮
寫,帶這個字眼的工程 DA14580是在主控模式下運行; _fh是Fully_Hosted的縮寫,帶這個字眼的工程
DA14580運行在非主控模式下。
template:這個是官方提供的一個工程模版。以后我們的應(yīng)用都可以在這個模版的基礎(chǔ)上修改。
throughput_eval:這個是一個評估數(shù)據(jù)吞吐率的源代碼。
patch_code:里面放的是分散加載文件





Figure6host_apps 文件夾

host_apps 文件夾:

如前面所描述,da14580文件夾下面存放的是產(chǎn)品測試固件的源代碼;windows文件夾下面放的是基于PC機(jī) 運行的防丟器和空中升級源代碼。這個不是我們關(guān)心的重點,有興趣的用戶可以自己仔細(xì)研究一下。









Figure7peripheral_examples文件夾


peripheral_examples文件夾:
這里面放的是片上外設(shè)的驅(qū)動代碼。我們關(guān)心的地方在 src文件夾。







Figure8tools文件夾


tools文件夾:
這里面有三個文件夾。
flash_programmer文件夾:放的是燒錄flash的MDK源代碼。當(dāng)我們把我們編譯好的應(yīng)用程序燒錄到SPI flash里面
的時候會用到。
prod_test文件夾:放的是我們前面說的binaries/da14580文件夾下的產(chǎn)品測試HEX pro_test的源代碼。
secondary_bootloader:bootloader的源代碼,用戶假如用到bootloader的話可以修改這個項目工程。

到此,整個SDK的文檔結(jié)構(gòu)已經(jīng)介紹完了。提醒大家注意一點,由于 SDK里面 有不少源碼是配合官方適配器或者PC機(jī)使用的,這部分我們可以少花點時間去關(guān) 注。我們的重點要放在dk_apps文件夾。更詳盡的介紹SDK的文檔,請參考官方


完整的pdf格式文檔51黑下載地址:
【原創(chuàng)】訊聯(lián)電子DA14580實戰(zhàn)教程---DA14580 SDK介紹.pdf (3.66 MB, 下載次數(shù): 64)



作者: SKSS    時間: 2018-5-18 17:23
你好,請問你是技術(shù)嗎?能留個你的聯(lián)系方式,有項目需要合作搞
作者: 達(dá)達(dá)達(dá)    時間: 2018-8-22 14:04
樓主有心了,正在學(xué)習(xí)中
作者: 學(xué)海沙粒    時間: 2018-9-5 20:29
學(xué)習(xí)中




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1