日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > > 21ic電子網(wǎng)
[導(dǎo)讀]CC2640 R2是德州儀器推出的面向 Bluetooth Smart 應(yīng)用的低功耗無(wú)線(xiàn) MCU。該芯片運(yùn)行TI的BLE協(xié)議棧,具有功耗低,外設(shè)種類(lèi)豐富,射頻性能好等特點(diǎn)。利用它可以實(shí)現(xiàn)許多有趣的應(yīng)用,收到了用戶(hù)的廣泛歡迎。 可是很多用戶(hù)在量產(chǎn)的時(shí)候卻犯難了,用XDS110 + Flash


CC2640 R2是德州儀器推出的面向 Bluetooth Smart 應(yīng)用的低功耗無(wú)線(xiàn) MCU。該芯片運(yùn)行TI的BLE協(xié)議棧,具有功耗低,外設(shè)種類(lèi)豐富,射頻性能好等特點(diǎn)。利用它可以實(shí)現(xiàn)許多有趣的應(yīng)用,收到了用戶(hù)的廣泛歡迎。


可是很多用戶(hù)在量產(chǎn)的時(shí)候卻犯難了,用XDS110 + Flash Programmer 2,效率很低,還要在GUI上各種配置,產(chǎn)線(xiàn)工人操作起來(lái)十分困難而且容易失誤。買(mǎi)一拖多的編程器配上位機(jī),又舍不得口袋里的銀子,而且不是TI官方出品,穩(wěn)定性和可靠性難以得到保證。本文給大家介紹一種利用芯片內(nèi)部Bootloader燒寫(xiě)程序的方法,進(jìn)入Boot模式,用普通的串行接口就可以進(jìn)行固件的引導(dǎo),F(xiàn)LASH的擦寫(xiě),Program,不花費(fèi)額外成本。而且這個(gè)bootloader是放在ROM里的,不會(huì)被誤擦除, Boot的時(shí)候UART/SPI不斷就沒(méi)事,實(shí)在不行l(wèi)oad一半斷了也無(wú)傷大雅,再boot一次就好了,即快捷又安全。


我們來(lái)看一下CC2640R2的Bootloader是怎么Run的。CC13x0, CC26x0 SimpleLink Wireless MCU Technical Reference Manual(SWCU117H)第8章節(jié)Bootloader中詳細(xì)介紹了Bootloader的原理,功能,接口定義,包的組成,校驗(yàn)等等,內(nèi)容很多,容易犯困,現(xiàn)在來(lái)畫(huà)一下重點(diǎn)。


第一個(gè)常見(jiàn)的問(wèn)題是什么情況下會(huì)進(jìn)Bootloader,進(jìn)Bootloader會(huì)不會(huì)影響應(yīng)用程序的執(zhí)行?如果使能了Bootloader,有兩種情況下會(huì)進(jìn),第一種情況是一個(gè)FLASH里沒(méi)有任何鏡像的新芯片在上電后;第二種情況是開(kāi)啟了Bootloader backdoor,并且預(yù)先定義的backdoor PIN腳被設(shè)置到正確的邏輯電平。上述條件不滿(mǎn)足,在上電后,芯片優(yōu)先執(zhí)行應(yīng)用程序。所以Bootloader和應(yīng)用程序執(zhí)行的條件不同,所以并不會(huì)相互影響。


第二個(gè)常見(jiàn)的問(wèn)題是什么是Bootloader backdoor?實(shí)際上就是為芯片進(jìn)入Bootloader留的一個(gè)后門(mén)。用戶(hù)可以通過(guò)BL_CONFIG寄存器的BL_ENABLE位使能這個(gè)backdoor,并預(yù)設(shè)某個(gè)GPIO在某個(gè)電平的時(shí)候啟用這個(gè)Backdoor,在Reset的時(shí)候,芯片內(nèi)部會(huì)自動(dòng)檢測(cè)預(yù)設(shè)條件是否滿(mǎn)足,來(lái)決定是否進(jìn)入Bootloader模式。如圖1所示,BL_CONFIG是實(shí)現(xiàn)Bootloader最重要的寄存器,我們后面在講代碼時(shí)會(huì)參照這個(gè)寄存器,其說(shuō)明在SWCU117H也可以找到。


快捷又安全!如何利用芯片內(nèi)部Bootloader燒寫(xiě)程序?

圖 1. BL_CONFIG寄存器說(shuō)明


第三個(gè)常見(jiàn)的問(wèn)題也是容易犯的錯(cuò)誤是是不是CC2640R2的所有接口和PIN腳都支持Bootloader?答案是否定的。CC2640R2的Bootloader只支持兩種接口,UART和SSI,而且僅有UART0 和 SSI0 支持,不同封裝的芯片對(duì)應(yīng)的引腳也有差別,如圖2所示,使用時(shí)要特別注意。


快捷又安全!如何利用芯片內(nèi)部Bootloader燒寫(xiě)程序?

圖 2. CC2640R2 Bootloader接口定義


對(duì)于UART0來(lái)說(shuō),我們芯片理論上可以達(dá)到3Mbaud(48M/16)的最大波特率,但是片內(nèi)ROM中的Bootloader固件只支持1.6Mbaud。SSI0是Motorolar格式的,SPH=1,SPO=1,SSI0時(shí)鐘最快頻率是4Mbaud(48M/12)。不過(guò)一味追求接口的速率也沒(méi)有必要,畢竟下載程序的速率瓶頸在FLASH的讀寫(xiě)速度。


其實(shí)要點(diǎn)就這么多,很簡(jiǎn)單吧。很多用戶(hù)會(huì)有疑問(wèn)是不是要把TI規(guī)定的協(xié)議搞得很透才能實(shí)現(xiàn)Bootloader?當(dāng)然不是,TI工程師的使命就是把復(fù)雜的問(wèn)題變得簡(jiǎn)單,只要把配置搞對(duì),配上正確的上位機(jī),一秒上手不是難事。下面就以UART為例詳細(xì)跟大伙說(shuō)說(shuō)Bootloader在CC2640R2上是怎么實(shí)現(xiàn)的。


工欲善其事,必先利其器,請(qǐng)準(zhǔn)備好下面的IDE環(huán)境,藍(lán)牙協(xié)議棧和硬件平臺(tái)。

快捷又安全!如何利用芯片內(nèi)部Bootloader燒寫(xiě)程序?


值得一提的是,sblAppEx.exe 是TI專(zhuān)門(mén)為CC2640R2實(shí)現(xiàn)Bootloader開(kāi)發(fā)的工具,并向客戶(hù)開(kāi)放源碼,可以基于此二次開(kāi)發(fā),

下載地址:http://www.ti.com/lit/zip/swra466。


首先,我們需要修改一下Bootloader的設(shè)置,在sourcetidevicescc26x0r2startup_files里,打開(kāi)ccfg.c,對(duì)幾個(gè)宏定義做出配置,如下圖3所示,依據(jù)則是圖1的BL_CONFIG。


快捷又安全!如何利用芯片內(nèi)部Bootloader燒寫(xiě)程序?

圖 3. 修改ccfg.c中的宏定義以匹配Bootloader的要求


在這里我們用DIO15高電平作為Bootloader backdoor的敲門(mén)磚,當(dāng)然也可以根據(jù)用戶(hù)實(shí)際需要選擇相應(yīng)的DIO。配置好后,點(diǎn)擊IAR的編譯下載按鈕,就可以在simple_peripheraltirtosiarappFlashROM_

StackLibraryExe里看到剛剛編譯好的帶Bootloader功能的鏡像文件,我們需要的是.bin結(jié)尾的,如圖4所示。


快捷又安全!如何利用芯片內(nèi)部Bootloader燒寫(xiě)程序?

圖 4. 編譯生成的不同格式的鏡像文件


將生成的.bin文件復(fù)制到sblAppEx.exe所在根目錄下,即sblAppEx_1_02_00_00bin。由于sblAppEx.exe自動(dòng)識(shí)別的是blinky_backdoor_select_btn2650.bin,所以需要把剛生成的ble_simple_peripheral_cc2640r2lp_app_Flash

ROM_StackLibrary.bin改個(gè)名字。當(dāng)然了,也可以通過(guò)修改sblAppEx.exe的源碼識(shí)別用戶(hù)所需的.bin,此處不再贅述。然后,按如下步驟操作:

1) DIO15接成高電平。

2) RESET。重新上電或者按LAUNCHPAD的RESET按鈕均可。

3) 在DOS界面選擇0,即XDS110 Class Application/User UART <COM56>,回車(chē)。不同電腦可能會(huì)識(shí)別不同的串口號(hào),這個(gè)無(wú)關(guān)緊要。


如果設(shè)置都正確的話(huà)Bootloader開(kāi)始工作,經(jīng)過(guò)Erasing flash,Writing flash,Calculating CRC on device,Comparing CRC這一系列過(guò)程后,Bootloader更新程序就完成了,最后系統(tǒng)會(huì)Reset device,整個(gè)流程如圖5所示。

快捷又安全!如何利用芯片內(nèi)部Bootloader燒寫(xiě)程序?

圖 5. 執(zhí)行正確的Bootloader的流程


一路OK后,此時(shí)的LAUNCHPAD里就是新的固件所示現(xiàn)的功能啦!如果配置不對(duì)的話(huà),這個(gè)App是會(huì)閃退的,無(wú)法完成Bootloader的功能。如果不想用板載的XDS110,用自己的USB轉(zhuǎn)串口工具也是可以的,只不過(guò)不會(huì)跳出那么多跟XDS110有關(guān)的COM ports了,取而代之的是USB Serial Ports,串口號(hào)不用太糾結(jié)。

快捷又安全!如何利用芯片內(nèi)部Bootloader燒寫(xiě)程序?

圖 6. USB轉(zhuǎn)串口工具的COM ports


當(dāng)然啦,有可能你雙擊sblAppEx.exe來(lái)執(zhí)行,但執(zhí)行完一系列操作后會(huì)自動(dòng)退出,看不到任何Log,解決的方法是不要雙擊進(jìn)入程序,在windows的run里用cmd命令,如圖7所示,切到sblAppEx.exe所在文件夾就可以啦。如果某個(gè)環(huán)節(jié)遇到任何問(wèn)題,Bootloader就會(huì)中斷,DOS界面會(huì)提示ERROR,具體可以對(duì)照sblAppEx.exe的源碼進(jìn)行檢查,此處不再贅述。需要注意的是,如果不用Bootloader模式,Bootloader backdoor的引腳一定要接固定電平,此處DIO15一定要接低電平,不能懸空。


快捷又安全!如何利用芯片內(nèi)部Bootloader燒寫(xiě)程序?

圖 7. 從Windows的cmd進(jìn)入程序可防止自動(dòng)退出


重要的事再說(shuō)一遍,sblAppEx.exe是開(kāi)源的,用戶(hù)可以根據(jù)需要修改源碼實(shí)現(xiàn)定制化的功能,比如UART波特率和上文提到的鏡像名稱(chēng)等等。


是不是產(chǎn)線(xiàn)上用起來(lái)既簡(jiǎn)單又方便呢,基本是一鍵式下載,既高效又防止誤操作。當(dāng)然啦,還可以適當(dāng)修改一下下載工具和上位機(jī)軟件,就可以實(shí)現(xiàn)多個(gè)器件的下載。打開(kāi)你的環(huán)境,拿起你的開(kāi)發(fā)板,來(lái)試一下吧!


作者:TI技術(shù)應(yīng)用工程師Holly Gu, Robin Yu

來(lái)源:TI中文社區(qū)


免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。文章僅代表作者個(gè)人觀點(diǎn),不代表本平臺(tái)立場(chǎng),如有問(wèn)題,請(qǐng)聯(lián)系我們,謝謝!

21ic電子網(wǎng)

掃描二維碼,關(guān)注更多精彩內(nèi)容

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢(shì)抑制與過(guò)流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問(wèn)題卻十分常見(jiàn),不僅增加了維護(hù)成本,還影響了用戶(hù)體驗(yàn)。要解決這一問(wèn)題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(chē)(EV)作為新能源汽車(chē)的重要代表,正逐漸成為全球汽車(chē)產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車(chē)的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車(chē)的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車(chē) 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車(chē)場(chǎng)照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢(shì)逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會(huì)遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問(wèn)題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會(huì)影響LED燈具的正常工作,還可能對(duì)周?chē)娮釉O(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來(lái)解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開(kāi)關(guān)電源具有效率高的特性,而且開(kāi)關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開(kāi)關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉