色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

兩線bootloader工程設置

電子設計 ? 來源:網友電子設計發布 ? 作者:網友電子設計發布 ? 2021-12-29 14:06 ? 次閱讀

CC1310是TI Simplelink MCU系列中支持Sub-1G的SOC.針對很多客戶需要串口進行固件升級的應用需求,CC1310內置了基于ROM的bootloader, 該bootloader支持UART和SPI兩種接口.詳細信息可參考TI CC1310的用戶指南(http://www.ti.com/lit/pdf/swcu117) 以及TI應用文檔SWRA466A, CC2538/CC26xx Serial Bootloader Interface (http://www.ti.com/cn/lit/swra466)。傳統的bootloader至少需要三跟連線,這篇博客主要介紹如何實現兩線bootloader并基于TI Flash Programmer 2(http://www.ti.com/tool/flash-programmer)工具和CC1310 Launchpad(LAUNCHXL-CC1310)評估板對芯片實現UART的固件燒寫。

兩線bootloader工程設置

CC1310 三線bootloader如下圖左,除了串口的兩根連線外,還需要一個專門的I/O進行啟動模式的控制。針對很多客戶產品只有一個對外的串口接口,提出了下圖右的兩線Bootloader方式,這個方式將BOOT_IO 與CC1310的UART RX復合使用。

如下圖BOOTLOADER的串口配置所示,UART和SPI的口是固定的I/O, 不能設置其他的I/O。CC1310 Launchpad 使用的是7*7 RGZ的封裝,下面我們需要設置BOOT_IO

BOOT_IO的設置在ccfg.c文件中,需要配置兩個宏,一個是有效觸發電平, 一個是DIO的編號。我們將有效觸發電平設置成高有效,BOOT_IO設置為DIO3。修改如下代碼。同時,為了使能Bootloader功能,需要定義下面兩個宏SET_CCFG_BL_CONFIG_BOOTLOADER_ENABLE和SET_CCFG_BL_CONFIG_BL_ENABLE為0xC5

#defineSET_CCFG_BL_CONFIG_BOOTLOADER_ENABLE 0xC5

#defineSET_CCFG_BL_CONFIG_BL_LEVEL 0x0 // Active low to open boot loader backdoor

#defineSET_CCFG_BL_CONFIG_BL_PIN_NUMBER 0x02 // DIO number for boot loader backdoor

#defineSET_CCFG_BL_CONFIG_BL_ENABLE 0xC5

編譯,燒寫固件。

編譯生成目標升級Bin固件

這里以TI的CC1310 SDK的pwmled_CC1310_LAUNCHXL_tirtos_ccs例程,編譯需要升級的固件。有兩個地方需要設置,一個是設置ARM Hex Utility中的memory width和rom width為8,一個是Build, Step中的post build添加,${CCS_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin.bat ${BuildArtifactFileName} ${BuildArtifactFileBaseName}.bin ${CG_TOOL_ROOT}/bin/armofd.exe ${CG_TOOL_ROOT}/bin/armhex.exe ${CCE_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin.exe

設置生成bin文件。 如下圖。

編譯工程,得到pwmled_CC1310_LAUNCHXL_tirtos_ccs.bin

通過Flash Programmer2對目標芯片完成兩線串口Bootloader燒寫

應用文檔SWRA466A中,對應的提供了一個命令行小程序sblAppEx,用于固件升級,因為程序編譯較早,有些版本運行會出錯。而很多用戶不知道的,Flash Programmer2 具有通過串口進行固件燒寫的功能。下面, 具體介紹用Flash Programmer2進行串口固件升級的具體操作如下:

1. 按照圖X所示,連接UART口和BOOT IO口, BOOT IO (即DIO2) 接低點平, 復位系統. 由于我們設置的是低點平進入Bootloader狀態,復位后,芯片進入ROM Bootloader模式

2. 在Flash Programmer2 的左上角 Connected devices中,選擇XDS110 Class Application, Unknown (這是CC1310 Launchpad自帶的UART口,如果是你自己的串口,也可以在這里看到)

3. 選擇好Unknown后,在左下腳的Select Target Device… 下拉菜單中選擇對應型號CC1310F128

4. 選擇好芯片好. 右鍵, 選擇Connect, 與目標芯片建立UART通信, 如下圖

5. 選擇需要升級的固件BIN文件, 這里選取之前步驟生成的pwmled_CC1310_LAUNCHXL_tirtos_ccs.bin文件

6. 升級成功后,可以從Flash Programmer最下方的狀態窗口看到更新

7. Dd

至此,我們就實現了兩線Bootloader

審核編輯:何安

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式處理
    +關注

    關注

    0

    文章

    341

    瀏覽量

    10043
收藏 人收藏

    評論

    相關推薦

    自定義RISC V的bootloader-v2

    在生成SoC時,會生成一個預定義bootloader .bin文件,用于指定soc的工程運行的地址,這包括在flash的存儲地址 ,加載到外存中的運行地址及在外存中分配的存儲空間的大小 。下面我們
    的頭像 發表于 10-31 12:37 ?679次閱讀
    自定義RISC V的<b class='flag-5'>bootloader</b>-v2

    HPM6750 Bootloader設計

    我正在做一個hpm6750evk2的bootloader。設計很簡單,boot工程代碼只做跳轉到1M后的APP工程代碼處,APP工程就是做的一個點燈的程序而已,boot、APP
    發表于 10-23 18:59

    阻抗匹配計算和差分走設置

    ad,cadense 阻抗匹配計算和差分走設置
    發表于 10-17 16:59 ?2次下載

    ad如何設置個元器件的距離

    在Altium Designer(簡稱AD)中設置個元器件之間的距離,主要是通過設置元器件間的安全間距(Clearance)規則來實現的。這個規則定義了元器件之間、元器件與走之間以
    的頭像 發表于 09-02 15:31 ?8304次閱讀

    磁性開關和三怎么互接

    磁性開關,又稱為磁簧開關或霍爾開關,是一種利用磁場的變化來控制電路通斷的電子元件。它廣泛應用于各種自動控制、安全保護、位置檢測等領域。磁性開關根據其引腳數量的不同,可以分為式和三
    的頭像 發表于 08-26 15:24 ?3081次閱讀

    磁性開關制和三制區別在哪

    磁性開關是一種常見的傳感器,廣泛應用于工業自動化、智能建筑、安防系統等領域。磁性開關按照接線方式的不同,可以分為制和三種類型。下面將介紹磁性開關
    的頭像 發表于 08-26 15:14 ?3313次閱讀

    磁性開關和三的區別

    磁性開關,又稱為磁控開關或磁簧開關,是一種利用磁場變化來實現電路通斷的開關器件。它廣泛應用于各種自動化控制系統、安全防護系統、家用電器等領域。磁性開關根據接線方式的不同,可以分為式和三
    的頭像 發表于 08-26 14:36 ?2473次閱讀

    如何才能將Bootloader和Application關聯起來

    接下來,我們要利用該Bootloader調試目標Application Project,如何才能將Bootloader和Application關聯起來呢?就需要借助剛才提到的Bootloader Project Build所生成
    的頭像 發表于 06-12 14:32 ?751次閱讀
    如何才能將<b class='flag-5'>Bootloader</b>和Application關聯起來

    STM32H743從APP跳轉到bootloader不成功怎么解決?

    )) (*((uint32_t *) (BootAddr + 4))); //設置主堆棧指針 __set_MSP(*(uint32_t *)BootAddr); //在RTOS工程,這條語句很重要,設置為特權級模式
    發表于 04-01 08:12

    BGA扇孔的規則設置

    過孔間過:用8-18的孔,線寬4mil,4mil,到孔盤4.6mli;(如需過一對差分線需BGA中的線寬及間距
    的頭像 發表于 03-28 09:25 ?650次閱讀

    STM32L431RCT6從用戶代碼區跳轉使用內置system memory bootloader無效怎么解決?

    ); /* 在RTOS工程,這條語句很重要,設置為特權級模式,使用MSP指針 */ __set_CONTROL(0); /* 跳轉到系統BootLoader */ SysMemBootJump
    發表于 03-26 07:54

    bootloader設置APP在0x08020000為開始地址,編譯報錯怎么解決?

    bootloader設置APP在0x08020000為開始地址,但是編譯報錯。同時如何在IDE中設置調試debug地址和相關設置,謝謝大師們解答
    發表于 03-13 06:43

    STM32案例:BootLoader是怎么跳到App

    BootLoader項目程序和App項目程序是分開的,所以需要分別搭建對應的項目工程文件,分開搭建文件是為了好配置,同時也是方便對項目進行管理。
    發表于 03-04 09:35 ?4641次閱讀
    STM32案例:<b class='flag-5'>BootLoader</b>是怎么跳到App

    通過Psoc4做bootloader功能的疑問求解

    目前在通過Psoc4做bootloader的功能,三個工程bootloader,booloadable1,bootloadable2。從bootloader更新bootloadabl
    發表于 02-20 07:17

    STM32無法進入片上Bootloader的處理方法

    STM32無法進入片上Bootloader的處理方法? 當STM32芯片無法進入片上Bootloader時,我們需要采取一系列的處理方法來解決這個問題。以下將詳細介紹一些常見的處理方法。 1.編程器
    的頭像 發表于 02-02 14:33 ?2235次閱讀
    主站蜘蛛池模板: 挠黑色超薄丝袜脚心vk40分钟| 羞羞影院午夜男女爽爽影院网站 | 色99蜜臀AV无码| 跳蛋按摩棒玉势PLAY高H| 中文成人在线视频| 成人亚洲视频在线观看| 久久精品天天爽夜夜爽| 日韩欧美视频一区二区在线观看| 一本道久在线综合色姐| 国产精品99久久久久久AV下载| 麻豆文化传媒一区二区| 亚洲乱色视频在线观看 | 亚洲欧美日韩精品自拍| 灌满内射HP1V1| 欧美日韩北条麻妃一区二区| 亚洲无遮挡| 国产免费毛片在线观看| 日本久久久| mm625亚洲人成电影网| 久久综合中文字幕无码| 亚洲色欲国产免费视频| 国产99久久久国产精品免费看 | 国精产品一区二区三区| 日韩中文字幕亚洲无线码| 97免费视频观看| 久久精品国产亚洲AV妓女不卡| 新影音先锋男人色资源网| 国产AV无码熟妇人妻麻豆| 人人超碰97caoporen国产| 99热在线观看精品| 蜜臀AV久久国产午夜福利软件| 一个人的视频全免费在线观看www| 国产日韩欧美高清免费视频| 十分钟免费视频大全在线| 疯狂小护士| 色综合伊人色综合网站中国 | 亚洲欧洲日本无在线码播放| 成 人 色综合| 欧美国产精品久久久乱码| 91极品蜜桃臀在线播放| 麻豆沈芯语|