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

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

3天內(nèi)不再提示

LPC51U68使用HID bootloader的步驟

恩智浦MCU加油站 ? 來源:恩智浦MCU加油站 ? 作者:楊熙 ? 2021-11-18 17:21 ? 次閱讀

對恩智浦MCU有一定了解的朋友,一定知道NXP有一套非常完善的MCU boot loader解決方案:MCU BOOT,你也可曾上手體驗過它呢?

這個MCU BOOT的內(nèi)容非常豐富,實現(xiàn)了基于各種接口的boot loader(UART I2C SPI CAN USB…),并且提供了blhost命令行上位機工具及其源碼。當然,boot loader的源碼也是。。。比較復(fù)雜。一些朋友表示移植,看懂有點困難。正好最近支持客戶時,應(yīng)客戶要求,自己實現(xiàn)了一套極簡版的USB HID boot loader。協(xié)議和工具都是兼容恩智浦MCU BOOT的。恩智浦的MCU BOOT有一套完整的自定義協(xié)議。在各個MCU芯片手冊的ROM章節(jié),以及MCU BOOT資料包里的文檔中都有詳細介紹,這里就不贅述了。具體關(guān)于MCU BOOT協(xié)議的介紹和各個接口定義,需要查看MCU BOOT的官方手冊。實際上這套代碼已經(jīng)存在很多年了。以前主要是支持串口,這次把USB接口加上了。

使用HID bootloader的步驟如下:

1,下載源代碼,git 倉庫地址:https://github.com/yandld/nxp_easy_mcuboot.git2,目前HID boot loader功能只支持Keil。HID功能只支持LPC51U68(后面會加入更多的型號和IDE)。

在 xp_easy_mcubootProjectlpcxpresso51u68中,會看到4個文件夾,分別是:

14c0a204-438f-11ec-b939-dac502259ad0.png

3,打開boot loader Keil工程: xp_easy_mcubootProjectlpcxpresso51u68lpcxpresso51u68_hid_bl,編譯并下載到LPCXpresso51U68板子上。4,連接LPC51U68的USB(J6)到PC, 然后按住WAKE(SW1)按鍵,再按RESET復(fù)位MCU,強制進入boot loader模式:這時候會聽到PC USB識別的聲音,打開 xp_easy_mcubootpc_tool下的KinetisFlashTool.exe

點擊連接,會看到boot loader的連接信息(說明上位機已經(jīng)成功連接boot loader),如下圖:

14ed05b0-438f-11ec-b939-dac502259ad0.png

5,編譯lpcxpresso51u68_app中的用戶示例代碼(小燈閃爍)。并生成.hex文件,在KinetisFlashTool中點Browse選擇編譯生成好的lpcxpresso51u68_app.hex文件,并點擊Update開始升級,如果看到進度條走動并且看到升級成功log 說明升級成功:

1550dd56-438f-11ec-b939-dac502259ad0.png

打開串口并復(fù)位板子,會看到串口打印log,小燈閃爍,說明boot loader功能實現(xiàn)正常:

1588589e-438f-11ec-b939-dac502259ad0.png

在這個代碼倉庫中,除了LPC51U68 HID boot loader外,還包含其他NXP MCU的boot loader代碼,絕大多數(shù)只支持串口。

這套代碼實際是NXP官方MCU BOOT代碼的最小簡化版本,砍掉了絕大多數(shù)的高級功能,只留最核心的幾條常用命令處理,所以代碼比官方的精簡好懂很多。當然它也只能實現(xiàn)最簡單的boot loader,像雙固件冗余升級,安全升級等特性是實現(xiàn)不了的。如果您在使用中有問題,歡迎給我留言哦~

責任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    16667

    瀏覽量

    347831
  • HID
    HID
    +關(guān)注

    關(guān)注

    2

    文章

    125

    瀏覽量

    46448
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4671

    瀏覽量

    67771

原文標題:如何使用LPC51U68的HID boot loader源碼

文章出處:【微信號:NXP_SMART_HARDWARE,微信公眾號:恩智浦MCU加油站】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    MSP430? USB HID Windows API編程人員指南

    電子發(fā)燒友網(wǎng)站提供《MSP430? USB HID Windows API編程人員指南.pdf》資料免費下載
    發(fā)表于 09-05 09:40 ?0次下載
    MSP430? USB <b class='flag-5'>HID</b> Windows API編程人員指南

    藍牙自動感應(yīng)模塊BLE HID無感車鑰匙方案

    ANS-BT101M 是一款低功耗藍牙模塊,支持藍牙 5.1 和 HID、GATT、HID 等配置文件。 模塊可以通過UART通信和AT命令設(shè)置模塊名稱、波特率等參數(shù)進行控制。 默認固件支持 BLE
    的頭像 發(fā)表于 08-08 14:45 ?241次閱讀

    用ESP-IDF編譯bt_hid_mouse_device例程失敗報錯的原因?

    files have been written to: C:/Users/Administrator/Desktop/esp32c3/bt_hid_mouse_device/build/bootloader
    發(fā)表于 06-17 06:53

    如何才能將Bootloader和Application關(guān)聯(lián)起來

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

    做一個stm32 host HID功能,無法正確獲取HID Discriptor的原因?

    求教,需要做一個stm32 host HID功能,根據(jù)官網(wǎng)的HID鼠標和鍵盤例子修改而來,目前可以正常枚舉鼠標,并可接收鼠標的數(shù)據(jù)。 Subclass和protocol都為0x00,表示無引導,而
    發(fā)表于 04-23 06:12

    將STM32L4系列開發(fā)板設(shè)置為HID設(shè)備,為什么不顯示HID設(shè)備?

    想將STM32L4系列開發(fā)板設(shè)置為HID設(shè)備,使用cubeMX進行設(shè)計。按照以下步驟設(shè)置好后,燒錄程式后,顯示“大容量存儲設(shè)備”,而不顯示HID設(shè)備。 Cubemx配置步驟: Sys
    發(fā)表于 04-09 06:20

    求助,關(guān)于USB復(fù)合設(shè)備HID+CDC串口問題求解

    = 117U*/ 0x00, /******************** Descriptor of Custom HID endpoints ********************/ 0x07
    發(fā)表于 03-07 06:11

    如何解決Fcx3這種高頻率發(fā)送hid報錯問題?

    你好,我用Bus Hound軟件(或其他工具測試遇到一樣的問題)測試接收cx3 hid數(shù)據(jù)。當數(shù)據(jù)量頻率不大時(數(shù)據(jù)包都是一樣大小,64個字節(jié)),接收數(shù)據(jù)都正常,可以測試一天一夜。但是當發(fā)送的數(shù)據(jù)
    發(fā)表于 02-28 06:06

    什么是通用HID燈鎮(zhèn)流器

    熒光燈鎮(zhèn)流器中有一種典型的簡單高頻驅(qū)動方法,但是具有高弧光管壓力的 HID 燈存在聲共振現(xiàn)象(*) 的問題。為了避免這個問題,HID 燈需要以低于 1kHz 的低頻或直流驅(qū)動。
    發(fā)表于 02-02 17:05 ?380次閱讀
    什么是通用<b class='flag-5'>HID</b>燈鎮(zhèn)流器

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

    STM32無法進入片上Bootloader的處理方法? 當STM32芯片無法進入片上Bootloader時,我們需要采取一系列的處理方法來解決這個問題。以下將詳細介紹一些常見的處理方法。 1.編程器
    的頭像 發(fā)表于 02-02 14:33 ?1512次閱讀

    簡單講講u-boot和bootloader有啥區(qū)別

    搞嵌入式軟件開發(fā),掌握u-boot 和 bootloader應(yīng)該是必備的技能之一,但很多工程師依然不知道它們到底是啥。
    的頭像 發(fā)表于 11-09 12:24 ?974次閱讀

    stc51單片機程序存儲區(qū)不夠用,可否在程序存儲區(qū)寫一個bootloader,用戶程序放入自身的EEPROM?

    stc51單片機程序存儲區(qū)不夠用,可否在程序存儲區(qū)寫一個bootloader,用戶程序放入自身的EEPROM?如何實現(xiàn)?
    發(fā)表于 11-09 07:09

    基于MM32F0140的UDS Bootloader學習筆記

    基于MM32F0140的UDS Bootloader學習筆記
    的頭像 發(fā)表于 10-30 17:11 ?588次閱讀
    基于MM32F0140的UDS <b class='flag-5'>Bootloader</b>學習筆記

    單片機BootLoader與APP如何合并?

    單片機BootLoader與APP如何合并?
    的頭像 發(fā)表于 10-25 17:17 ?954次閱讀
    單片機<b class='flag-5'>BootLoader</b>與APP如何合并?

    STM32 Bootloader異常復(fù)位案例

    電子發(fā)燒友網(wǎng)站提供《STM32 Bootloader異常復(fù)位案例.pdf》資料免費下載
    發(fā)表于 09-25 09:17 ?3次下載
    STM32 <b class='flag-5'>Bootloader</b>異常復(fù)位案例