国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

APM32F103_IAP的簡單實現_固件傳輸

Geehy極海半導體 ? 來源:21ic ? 作者:21ic ? 2022-12-07 14:50 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言

最近拿到了一塊APM32F103VC的MINI開發板,在學習了一段時間后發現其有非常豐富的外設資源,主頻能達到96Mhz。最近在項目中使用到了IAP(In Application Programming)功能,特來評估一下APM32F103的IAP實現方式。

在應用編程IAP(In-Application Programming)是應用在Flash程序存儲器的一種編程模式。它可以在應用程序正常運行的情況下,通過調用特定的IAP程序對另外一段程序Flash空間進行讀/寫操作,甚至可以控制對某段、某頁甚至某個字節的讀/寫操作,這為數據存儲和固件的現場升級帶來了更大的靈活性。

話接上回,我們學習了如何進行對目標Flash進行編程后,基本已經完成了IAP的知識儲備,隨時可以完成IAP功能。打個比方,會Flash編程,就是會向一個池塘里面倒水了,但是現在有一個問題,我們往池塘倒的水從哪里來?即我們的程序數據從那里給到我們。

那我們本章節就我們程序的來源以及處理的一些方式進行一起探討。

1 “水”的來源

我們的固件可以保存在云端,也可以保存在我們的PC上。這個主要取決于我們的應用場景。若我們的產品主要在客戶的手上,為了考慮客戶的使用便捷性,將固件保存在云端,然后在一個合適的時間推送至我們的產品進行升級,這是一種方式。若考慮到產品的穩定性,那我們可以要求客戶一定要在特定的場景下進行固件升級,如需要接入升級的主機設備(如PC),才能進行固件升級。

ea556510-75e5-11ed-8abf-dac502259ad0.png

2 承載“水”的“路徑”

既然我們決定了我們程序的下發的源頭,我們一般也會選擇使用那種方式了傳輸我們的固件數據。就像運水到我們的池塘,是用空運還陸運還是海運等方式。如遠程升級的方式可以選擇以太網、WIFI、藍牙等方式。若使用有線傳輸的方式我們可以選擇USART、I2C、SPI、USB等。

升級方式的選擇也受限于我們的主控MCU,如APM32F103VCT6就沒有WIFI、藍牙等功能,所以我們可以選擇USART、I2C、SPI、USB等,若我們選擇APM32F407/107我們也可以選擇使用以太網。

3 運輸“水”的方式

就像運水到我們池塘,我們選擇使用陸運的方式后,依舊可以繼續選擇使用的是小汽車運,還是貨車運。不同的運輸方式會有不一樣的要求,這就是我們選擇傳輸固件的“協議”。

就比如我們選擇使用USART的方式進行固件升級,那我們也可以選擇使用Xmodem協議,還是Ymodem,或者是我們自創的協議。

而這個協議是保證我們固件傳輸數據的準確的。怎么說呢?比如帶校驗碼、環回重復發送等功能。

4 小結

說了那么多,總結下來就是我們在IAP升級過程中,升級使用的通信接口通信協議也是我們需要關注的。一般而言,通信的接口限制我們的應用場景,通信協議是保證我們在IAP升級過程中固件數據準確的有力保證。

審核編輯 :李倩

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

    關注

    90

    文章

    3716

    瀏覽量

    97185
  • 開發板
    +關注

    關注

    26

    文章

    6291

    瀏覽量

    118108
  • IAP
    IAP
    +關注

    關注

    2

    文章

    169

    瀏覽量

    26060

原文標題:APM32芯得 EP.14 | APM32F103_IAP的簡單實現_固件傳輸

文章出處:【微信號:geehysemi,微信公眾號:Geehy極海半導體】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    基于納芯微實時控制MCU NS800RT5039的IAP固件升級指南(2)

    在上期《無需返廠!基于實時控制MCU NS800RT5039 的 IAP 固件升級指南(理論篇)》中,我們已經詳細拆解了 IAP 技術的核心原理、關鍵概念、方案設計邏輯以及實戰中常見問題的避坑要點
    的頭像 發表于 02-06 09:18 ?8956次閱讀
    基于納芯微實時控制MCU NS800RT5039的<b class='flag-5'>IAP</b><b class='flag-5'>固件</b>升級指南(2)

    基于納芯微實時控制MCU NS800RT5039的IAP固件升級指南(1)

    設備固件升級需拆回原廠、依賴 J-LINK 等仿真器燒錄?這一痛點可通過 IAP(In-Application Programming)升級方案徹底解決。
    的頭像 發表于 02-06 09:13 ?7333次閱讀
    基于納芯微實時控制MCU NS800RT5039的<b class='flag-5'>IAP</b><b class='flag-5'>固件</b>升級指南(1)

    在CW32F030的IAP應用介紹

    部分區域進行燒寫,目的是為了在產品發布后可以方便地通過 預留的通信口對產品中的固件程序進行更新升級。 1 功能實現 IAP 功能的實現,一般將程序分為兩個部分,即:Bootloade
    發表于 01-22 07:20

    極海APM32F427移植CherryUSB實現自定義USB HID設備

    最近需要使用到APM32F427枚舉成Custom HID設備進行用戶自定義通信,但我又不想要使用官方的USB中間件去做一個USB Custom HID設備。了解到Cherry USB這個開源
    的頭像 發表于 01-20 09:52 ?3595次閱讀
    極海<b class='flag-5'>APM32F</b>427移植CherryUSB<b class='flag-5'>實現</b>自定義USB HID設備

    如何在CW32F030上實現IAP功能實現遠程升級?

    區域進行燒寫,目的是為了在產品發布后可以方便地通過預留的通信口對產品中的固件程序進行更新升級。 IAP 功能的實現,一般將程序分為兩個部分,即:Bootloader 和 APP。Bootloader
    發表于 12-11 06:15

    使用TFTP實現IAP的方法

    使用 TFTP 實現 IAP 的方法廣泛應用于需要具有固件升級功能的嵌入式應用中(例如,嵌入式 Linux bootloader 中)。TFTP 是一種在 UDP 傳輸層上執行的
    發表于 12-10 07:21

    AT32 MCU如何使用IAP

    AT32 MCU使用IAP的方法涉及在微控制器上創建特定固件,以實現在應用編程(In-Application Programming,簡稱IAP)功能,主要通過USART通信接口進行
    發表于 08-08 17:13

    AT32 IAP using the USART

    升級。通常實現 IAP 功能時,即用戶程序運行中作自身的更新操作,需要在設計固件程序時編寫兩個項目代碼,第一個項目程序不執行正常的功能操作,而只是通過某種通信方式(如USB、USART)接收程序或數據
    發表于 07-11 10:51

    極海APM32F411微控制器硬件FPU使用指南

    APM32F411是一款基于32位Arm Cortex-M4F內核的微控制器。硬件FPU是Arm Cortex-M4F的一大優勢。合理應用硬件FPU可以大大縮短運算時間。
    的頭像 發表于 06-28 11:23 ?2149次閱讀
    極海<b class='flag-5'>APM32F</b>411微控制器硬件FPU使用指南

    基于極海APM32E103 MCU的CoreMark測試方法

    CoreMark跑分可以了解到MCU的算力。下面以APM32E103芯片和Keil為例,介紹一下如何在APM32上面運行CoraMark測試。CoreMark需要定時器用于計時,還需要用串口來打印輸出測試結果。
    的頭像 發表于 06-12 09:42 ?1435次閱讀
    基于極海<b class='flag-5'>APM32E103</b> MCU的CoreMark測試方法

    極海APM32F407 uc/os3學習筆記之任務管理介紹

    最近了解了uc/os3這個操作系統,上篇介紹了uc/os3如何正確移植到APM32F407開發板上,根據我最近學到的一些知識,這篇文章主要介紹一下uc/os3中的一些簡單的任務管理API以及如何使用。
    的頭像 發表于 05-24 14:37 ?1017次閱讀
    極海<b class='flag-5'>APM32F</b>407 uc/os3學習筆記之任務管理介紹

    極海APM32F407IG-Tiny開發板的DAPLINK固件更新方法

    最近申請到了APM32F407IG-Tiny板,這塊開發板做工不錯,尤其自帶了DAPLINK下載器,外設資源也挺豐富的,很適合做mbedos移植,并且mbedos官方stduio是有自帶
    的頭像 發表于 05-24 14:28 ?1465次閱讀
    極海<b class='flag-5'>APM32F</b>407IG-Tiny開發板的DAPLINK<b class='flag-5'>固件</b>更新方法

    usb3.0從設備fifo接口固件提高傳輸速率,固件無法做到實時傳輸是哪里出了問題?怎么解決?

    flag,我自己又將flaga設置為thread_0_dma_ready,flagb設置為thread_3_mda_ready了)確實可以實現數據傳輸了。 但我的攝像頭每50us產生一行數據,每秒大概20MB數據。我用上述固件
    發表于 05-13 06:29

    STM32F103x8 STM32F103xB單片機數據手冊

    STM32F103x8STM32F103xB單片機數據手冊
    發表于 04-14 14:55 ?8次下載

    STM32F103×8/STM32F103×B MCU手冊

    本文提供了STM32F103x8和STM32F103xB中密度高性能系列微控制器的訂購信息和機械器件特性。有關整個STMicroelectronics STM32F103xx系列的更多信息,請
    發表于 03-18 16:37 ?0次下載