• <nav id="oo0oo"></nav><tr id="oo0oo"></tr>
      
      
    • <blockquote id="oo0oo"><strong id="oo0oo"></strong></blockquote>
    • 亚洲色最新高清AV网站,内射干少妇亚洲69XXX,国产亚洲精品第一综合另类,鲁丝片一区二区三区免费,久热这里有精品免费视频,色一伊人区二区亚洲最大,日韩人妻无码一区二区三区,被拉到野外强要好爽

      nRF52810使用官網SDK開發入門教程

      2020-04-13 11:30:07 信馳達科技

      一、概述

              近來,物聯網已成為大勢所趨,VR與AR正方興未艾,各種手環、遙控、智能家居也在粉墨登場。技術前沿的領航者們已經快馬加鞭,各種意志與暗示也在上傳下達。物聯網,無線通訊,移動互聯,將成為新的目標與寵兒。最近開的電賽動員會上已經明確而徹底的傳達了“互聯網+”的精神,甚至要用手機做APP來操控云云,總之是無線通信已經被擺在了前所未有的位置上。

        現在常用的有規范標準的無限通信協議主要有WiFi(802.11a/b/g/n),藍牙(Bluetooth),ZigBee(802.15.4)等等,他們各有各的優點與不足。

        WiFi的功耗太大,速率高,適合來傳輸數據流(文件),而不是做控制,距離較短。藍牙功耗很低(BLE),而且歷史悠久,技術成熟,是手機的標配,距離適中,適合做控制以及小規模的數據傳輸。(BLE是低功耗藍牙的意思,也就是指藍牙4.2。)ZigBee功耗也很低,且通信距離較遠,傳輸速率很低,是專為自動控制設計的通信協議,但目前技術仍不夠成熟,且組網較為復雜。

        此外還有Z-wave,Threa;6LoWPAN似乎也很有潛力,但是目前才剛剛開始。ANT等各種無線通信協議,但是不如以上幾種通用程度高作為無線通信入門,我選擇了從藍牙開始。市面上常見的藍牙模塊有很多,TI的CC系列,Dialog的DA系列,以及Nordic的nRF系列都是很優秀的產品。

        Dialog的產品硬件結構較特殊,整體成本低但是開發復雜,CC系列和nRF系列都是資料資源豐富且廣泛使用的產品,我所選擇的產品就是NordicnRF52810,支持藍牙4.2(BLE),甚至可以支持5.0。這些藍牙模塊多半都是帶有MCU核的,或者說根本就是一個MCU帶有藍牙功能。相對于TI產品,nRF52810的硬件資源要豐厚許多(Cortex-M4F,512K Flash,64K RAM,xxAA版),這也就意味著更大規模的工程成為可能。

              開發板不想買了,因為已經習慣了用TI的TM4C1294進行開發,所以一般主體工程都是靠1294完成,學習52832主要是想熟練藍牙的配置與使用。于是買了個最小系統板(嚴格來說都不算,只是把所有引腳引出來而已,然后加一段鍍銅天線),然后就遇到了許多問題。

      無線通信方案廠商

        之前用1294時是TI官方的EvaluationKit板,自帶仿真模塊(Stellaris ICDI),只要驅動一裝就能刷金程序然后Debug調試。因此也從來沒有考慮過什么接口仿真的問題?,F在對著52810芯片手冊上的管腳圖,只找到了兩個SWDIO和SWDCLK引腳,對于具體如何把程序燒寫進去依然一無所知。回想起其他用32開發板的情況,似乎需要一個名為Jlink的東東?快速上淘寶翻了下52810開發板的情況,確實如此,Jlink仿真器是必須的,開發板上已經預留好了20腳的JTAG接口,直接將仿真器連在開發板與PC中間,再輔以相應的驅動程序就能實現下載與仿真。但是我買的產品上可沒有JTAG接口,而且SWD和JTAG似乎也不太一樣的吧?

        一頓搜索,大概對JTAG,SWD,JLink都有了一番了解。JTAG和SWD確實是不一樣的協議,Jlink本身默認JTAG,但是從JLinkV6以后,Jlink仿真器也開始支持SWD,到了V8以后,對SWD的支持已經相當不錯了。于是又買了塊Jlink仿真器,說是給nrf5系列專用的V8,一個仿真器比兩個我買的52810板還貴,拿到手以后,做工讓我瞬間就斷定是盜版貨了。。還好上面似乎有標識JTAG+SWD...在52810的數據手冊上,基本已經確定了這款芯片只支持SWD了,希望能用吧(笑)。大概就是把SWD的引腳接到仿真器的特定引腳上吧。

        然后是軟件環節。習慣了TI的datasheet和SDK,Nordic的真的是....體驗感差好多呀。。采用的IDE是MDK Keil,然而官網提供的nRF_DeviceFamilyPack最新版和SDK最新版例程里的pack版本居然不一樣(pack已經更新到8.14.1了,而SDK里用的是8.12.0,SDK用的也是最新版)。好吧或許SDK那邊還沒更新,但是老版的pack下載在哪里呢?只能手動添加Device和CMSIS,然后是令人煩躁的include paths。SDK的文件結構相當出色,各種包各種drivers各種libraries相當完善有條理,但是初始化必須的一些驅動和庫文件被包含在了各個文件夾,相比之下,TI的driverlib簡直太方便了。至于TI的pdf函數庫對Nordic的html的無比的優越性。。用了都知道。

        終于到了編譯環節,把官方的例程拿出來編譯,果然一大堆錯誤,定義變量語句不在函數開頭之類的問題比比皆是,還有一大堆定義結構體順便初始化的奇怪格式也是層出不窮,難道我的Keil MDK 5.20已經很老了嗎~

        在手動改完官方庫的所有錯誤之后,把自己的初始化空工程拿出來終于編譯通過..比TI的果然是慢了好多好多。。

      二、搭建開發環境

      1.官方代碼與工具下載

             http://www.nordicsemi.com/eng/Products/Bluetooth-low-energy/nRF52-DK

           2.開發板硬件資料 

              硬件資料保含開發板的原理圖,BOM,Layout。在調試時候或者外接擴展時候看。

      無線通信方案廠商

              協議棧燒寫工具nRFgo studio下載 
              這個軟件是前期用來燒寫固件。對于這款芯片固件分三個部分:藍牙協議棧SoftDevice ,固件升級bootloader,App(用戶自己寫的程序)

      無線通信方案廠商

              nRF52 DK下載 
              http://www.nordicsemi.com/eng/Products/Bluetooth-low-energy/nRF5-SDK 

      無線通信方案廠商

              官方例程和庫文件

              S132 SoftDevice 下載 
              藍牙協議棧 
              http://www.nordicsemi.com/eng/Products/S132-SoftDevice 

      無線通信方案廠商

              Nordic 自家的藍牙測試安卓或ios app 
              常用:nRF Master Countrol pannel 
              可以在github下載源碼用于App開發

      3.試驗第一個程序

      ·         打開 nRFgo studio

      無線通信方案廠商

              我使用的是開發板,開發板上自帶有jlink芯片,軟件能識別到nRF52 development boards。

              注意:在使用過程中由于jlink驅動版本的問題會出現不識別芯片的情況。需要安裝該軟件自帶的segger驅動。

              右側窗口中可以清楚的看到芯片存儲空間的結構,包括上述三部分程序的起止地址和大小,其中SoftDevice 和Application是不可以缺失的。

              l  燒寫固件

              以“虛擬串口”為例,分別選擇三部分程序的hex文件,路徑如下: 
              softdevice 
              /s132_nrf52_2.0.1/s132_nrf52_2.0.1_softdevice.hex 
              bootloader nRF5_SDK_11.0.0_89a8197/examples/dfu/bootloader/pca10040/dual_bank_ble_s132/arm5_no_packs/_build/nrf52832_xxaa_s132.hex 


      Application 


      nRF5_SDK_11.0.0_89a8197/examples/ble_peripheral/ble_app_uart/pca10040/s132/arm5_no_packs/_build/nrf52832_xxaa_s132.hex

              l  成功燒錄之后就可以打開app搜索了,藍牙4.0不需要配對

      無線通信方案廠商

             使用keil調試 
             打開測試固件對應的keil工程文件,就可以進行debug等操作

      無線通信方案廠商

              1.Keil軟件安裝;

              2.Jlink驅動安裝;

              3.nRFgoStdio安裝,該軟件用來燒寫藍牙協議棧和應用軟件。第二步安裝了Jlink驅動后,不要安裝nRFgo里自帶的Jlink驅動。

              4.安裝nRF51SDK,安裝完成后,在Keil的目錄里有51822的相關的例程和源碼。

       三、本例安裝的軟件版本

              Windows: win7 64bit

              Keil:V5.13.0.0 (mdk_513.exe)

              Jlink:V4.96d (Setup_JLink_V496d.exe)

              nRFgoStdio:V1.17.1 (nrfgostudio_win-64_1.17.1_installer.msi)

              nRF51SDK: V6.1.0(nrf51_sdk_v6_1_0_b2ec2e6.msi)

              SoftDevice:V7.1.0 (s110_nrf51810_7.1.0.zip)

      4.遇到的問題

              開發環境,包括軟件環境以及硬件環境可以參考官方的User Guide 文檔。期間遇到的問題有兩個:

              1. nRFgoStdio無法識別nRF6310 MotherBoard?

              在這里沒有解決這個問題,對我的開發工作影響不大,我們的開發工作只需要更新ble stack和應用層APP即可,大部分時候只需要燒錄app即可。

              2.keil打開.uvproj后綴名的工程,無法編譯?

              安裝的最新的keil版本以及SDK需要打開.uvprojx后綴名的工程,則編譯無錯誤。

              3.通過nRFgo燒寫SoftDevice 和 ble_app_hrs無法工作?

              這里存在nRF51SDK與SoftDevice和app的兼容性問題,本機安裝了SDK的6版本,在Nordic官網SoftDevice有5,6,7三個版本,逐一嘗試后,最新的版本7和app兼容,能正常工作。

              4.在調試期間可能遇到VTG燈變紅、異常閃爍或不亮,nRFgo 和keil無法燒寫?

              如果是電池供電的話,則很可能是電池沒電。檢測電池的電壓才1v,新電池1.6v左右。更換電池解決問題。

              不能解決的問題,可以在Nordic官網論壇提問,會有Nordic的員工為你解答。

              https://devzone.nordicsemi.com/questions/ 為了更好的結合串口打印信息,來分析代碼的流程。故結合6310里的uart_example例程,來調試UART功能,并將該初始化函數移植到要分析的例程去。

              在uart_exam ple的simple_uart_config函數中,對uart指定輸出輸入引腳,關鍵是找到6310板子上的該兩個引腳的位置。因為沒有6310的原理圖,經過查閱了很多資料,終于找到這兩個引腳,分別是P9 端口的,p2.0與p2.1,連接到電腦的USB串口線并另一個接地,在電腦端配置好相應的串口參數,則解決問題。

              信馳達科技專注藍牙領域十年,擁有豐富的方案設計經驗。信馳達科技Nordic產品方案表現出色,了解更多Nordic產品詳情請聯系我們。

      快速購買樣品

      主站蜘蛛池模板: 日韩有码中文在线观看| 欧美自拍另类欧美综合图片区| 依依成人精品视频在线观看| 国产91午夜福利精品| 亚洲高清WWW色好看美女| 国产91色综合久久高清| 国内永久福利在线视频图片| 激情五月开心婷婷深爱| 国产成人午夜福利院| 国产成人永久免费av在线| 国产99久久亚洲综合精品西瓜tv| 久久精品娱乐亚洲领先| 国产精品毛片av999999| 四虎成人在线观看免费| 69精品无人区国产一区| 国产精品美女免费无遮挡| 亚洲中文字幕综合小综合| 狠狠躁夜夜躁人人爽天天5| 99久久精品一区二区国产| 最新亚洲av日韩av二区| 色悠悠国产在线视频一线| 我要看亚洲黄色太黄一级黄| 性色欲情网站iwww九文堂| 99久久无色码中文字幕| 久久久亚洲欧洲日产国码αv| 亚洲精品乱码久久观看网| 久久久久香蕉国产线看观看伊 | 日韩A人毛片精品无人区乱码| 亚洲成人av免费一区| 中文字幕色av一区二区三区 | 国产女同一区二区在线| 国产一区二区不卡自拍| 欧美国产日韩在线三区| 国产精品毛片在线看不卡| 国产精品一区中文字幕| 在线精品国产中文字幕| 色道久久综合亚洲精品蜜桃| 日本一道一区二区视频| 在线国产精品中文字幕| 亚洲卡1卡2卡新区网站| 亚洲 制服 丝袜 无码|