女人荫蒂被添全过程13种图片,亚洲+欧美+在线,欧洲精品无码一区二区三区 ,在厨房拨开内裤进入毛片

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

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

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

OTA升級(jí)的詳細(xì)流程

strongerHuang ? 來源:strongerHuang ? 作者:strongerHuang ? 2022-07-04 09:08 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

OTA升級(jí)已經(jīng)不是什么新鮮事,現(xiàn)在大多數(shù)物聯(lián)網(wǎng)終端設(shè)備,基本具備這個(gè)功能。

今天以AT32為例給大家分享一下OTA升級(jí)的詳細(xì)流程。

概述

空中下載技術(shù)OTA(Over-the-Air Technology)是用戶自己的程序在運(yùn)行過程中對(duì)User Flash的部分區(qū)域進(jìn)行燒寫,目的是為了在產(chǎn)品發(fā)布后可以方便地通過預(yù)留的通信口,對(duì)產(chǎn)品中的固件程序進(jìn)行更新升級(jí)。通常實(shí)現(xiàn)OTA功能時(shí),即用戶程序運(yùn)行中作自身的更新操作,需要在設(shè)計(jì)固件程序時(shí)編寫兩個(gè)項(xiàng)目代碼,第一個(gè)項(xiàng)目程序?yàn)锽ootloader區(qū)域,第二個(gè)項(xiàng)目程序App代碼為真正的功能代碼,執(zhí)行應(yīng)用和升級(jí)。這兩部分項(xiàng)目代碼同時(shí)燒錄在User Flash中。

圖1. OTA代碼執(zhí)行流程

d09abea6-fb31-11ec-ba43-dac502259ad0.jpg

在上圖所示流程中,MCU復(fù)位后,從0x08000004地址取出復(fù)位中斷向量的地址,并跳轉(zhuǎn)到復(fù)位中斷服務(wù)程序,在運(yùn)行完復(fù)位中斷服務(wù)程序之后跳轉(zhuǎn)到Bootloader的main函數(shù),如圖標(biāo)號(hào)①所示;在執(zhí)行完Bootloader以后(App代碼為圖中FLASH灰底部分App程序的復(fù)位中斷向量起始地址為0x08000004+N+M),跳轉(zhuǎn)至App程序的復(fù)位向量表,取出App程序的復(fù)位中斷向量的地址,并跳轉(zhuǎn)執(zhí)行App程序的復(fù)位中斷服務(wù)程序,隨后跳轉(zhuǎn)至App程序的main函數(shù),如圖標(biāo)號(hào)②和③所示,同樣main函數(shù)為一個(gè)死循環(huán),并且注意到此時(shí)AT32的FLASH,在不同位置上,共有兩個(gè)中斷向量表。在main函數(shù)執(zhí)行過程中,如果CPU得到一個(gè)中斷請(qǐng)求,PC指針仍強(qiáng)制跳轉(zhuǎn)到地址0x08000004中斷向量表處,而不是App程序的中斷向量表,如圖標(biāo)號(hào)④所示;程序再根據(jù)我們?cè)O(shè)置的中斷向量表偏移量,跳轉(zhuǎn)到對(duì)應(yīng)中斷源新的中斷服務(wù)程序中,如圖標(biāo)號(hào)⑤所示;在執(zhí)行完中斷服務(wù)程序后,程序返回main函數(shù)繼續(xù)運(yùn)行,如圖標(biāo)號(hào)⑥所示。通過以上兩個(gè)過程的分析,我們知道OTA程序必須滿足兩個(gè)要求:

1) App程序必須在Bootloader程序之后的某個(gè)偏移量為x的地址開始。

2) 必須將App程序的中斷向量表相應(yīng)的移動(dòng),移動(dòng)的偏移量為x。

AT32 USART OTA 快速使用方法

硬件資源

文檔中是用AT-START-AT32F403A實(shí)驗(yàn)板的硬件條件為例,OTA demo源代碼還包括AT32其他型號(hào),用戶只需編譯對(duì)應(yīng)型號(hào)工程燒錄于AT-START實(shí)驗(yàn)板運(yùn)行即可。

1) 指示燈LED2/LED3/LED42) USART1(PA9/PA10)

3) AT-START實(shí)驗(yàn)板

軟件資源

1) tool_release

● IAP_Programmer.exe,PC機(jī)tool,用于演示OTA升級(jí)流程

2) source_code

● Bootloader,Bootloader源程序,運(yùn)行LED2閃爍● App_led3_toggle,App1源程序,運(yùn)行LED3閃爍

● App_led4_toggle,App2源程序,運(yùn)行LED4閃爍

注:工程基于keil v5建立,若用戶需要在其他編譯環(huán)境上使用,請(qǐng)參考對(duì)應(yīng)BSP目錄AT32F403A_407_Firmware_Library_V2.x.xprojectat_start_f403a emplates中各種編譯環(huán)境(例如IAR6/7/8,keil 4/5,eclipse_gcc)進(jìn)行對(duì)應(yīng)修改即可。

OTA Demo 使用

本文檔描述了兩種常用的OTA應(yīng)用demo,template app和dual app,后面章節(jié)會(huì)分別介紹。

1) 打開Bootloader工程源程序,選擇對(duì)應(yīng)MCU型號(hào)的target編譯后下載到實(shí)驗(yàn)板2) 打開IAP_Programmer.exe3) 選擇正確的串口、APP下載地址和bin文檔,點(diǎn)擊Download下載,如下圖

4) 觀察LED2/3/4閃爍,LED2閃爍-Bootloader工作,LED3閃爍-App1工作,LED4閃爍-App2工作

圖2. IAP demo上位機(jī)

d0ac937e-fb31-11ec-ba43-dac502259ad0.jpg

Template app OTA程序設(shè)置

地址分布

圖3. Flash地址分配

d0bfc05c-fb31-11ec-ba43-dac502259ad0.jpg

注:Bootloader區(qū)域最后一個(gè)扇區(qū),用于存放防止升級(jí)過程出錯(cuò)(掉電等異常情況)的flag,用戶編譯修改Bootloader時(shí),要保證不覆蓋flag的地址。

執(zhí)行流程

OTA分為Bootloader、App和Template三部分,應(yīng)用在App中執(zhí)行,Template僅作為新App固件數(shù)據(jù)的臨時(shí)存放空間。程序執(zhí)行整體流程框圖如下:

圖4. 程序執(zhí)行流程

d0cf6e8a-fb31-11ec-ba43-dac502259ad0.jpg

Bootloader project 設(shè)置

1) Keil設(shè)置

圖5. Bootloader project中address 1在Keil設(shè)置

d0de189a-fb31-11ec-ba43-dac502259ad0.jpg

2) Bootloader源程序修改ota.h文件中

圖6. Bootloader project中address 2在程序中設(shè)置

d0f1cba6-fb31-11ec-ba43-dac502259ad0.jpg

App project 設(shè)置

OTA demo提供了2個(gè)App程序供測試用,皆以address 2(0x800 4000)為起始地址。App1 LED3閃爍,App2 LED4閃爍。以App1為例,設(shè)計(jì)步驟如下:

1) Keil工程設(shè)置

圖7. App project中address 2在Keil設(shè)置

d104da48-fb31-11ec-ba43-dac502259ad0.jpg

2) App1源程序設(shè)置

圖8. App project向量表偏移在程序中設(shè)置

d11d23dc-fb31-11ec-ba43-dac502259ad0.jpg

3) 編譯生成bin文件

通過User選項(xiàng)卡,設(shè)置編譯后調(diào)用fromelf.exe,根據(jù).axf文件生成.bin文件,用于OTA更新。通過以上3個(gè)步驟,我們就可以得到一個(gè).bin的APP程序,通過Bootloader程序即可實(shí)現(xiàn)更新。

4) 開啟debug app code功能

如果在設(shè)計(jì)App code過程中需要對(duì)App project進(jìn)行單獨(dú)調(diào)試,請(qǐng)按照以下操作。

● 先下載Bootloader工程● 再調(diào)試App工程

Dual app OTA與程序設(shè)置

地址分布

圖9. Flash地址分配

d12c9704-fb31-11ec-ba43-dac502259ad0.jpg

注:Bootloader區(qū)域最后2個(gè)扇區(qū),用于存放App是否正常的flag,用戶編譯修改Bootloader時(shí),要保證不覆蓋flag的地址。

執(zhí)行流程

OTA分為Bootloader、App1和App2三部分,應(yīng)用在App1或App2中執(zhí)行。程序執(zhí)行整體流程框圖如下:

圖10. 程序執(zhí)行流程

d143aaa2-fb31-11ec-ba43-dac502259ad0.jpg

Bootloader project設(shè)置

3) Keil設(shè)置圖11. Bootloader project中address 1在Keil設(shè)置

d15be900-fb31-11ec-ba43-dac502259ad0.jpg

4) Bootloader源程序修改ota.h文件中

圖12. Bootloader project中address 2在程序中設(shè)置

d174ff30-fb31-11ec-ba43-dac502259ad0.jpg

App project設(shè)置

OTA demo提供了2個(gè)App程序供測試用,app_led3_toggle以0x800 4000為起始地址,app_led4_toggle以0x8080000為起始地址。App1 LED3閃爍,App2 LED4閃爍。以App1為例,設(shè)計(jì)步驟如下:

5) Keil工程設(shè)置圖13. App project中address 2在Keil設(shè)置

d18c4f14-fb31-11ec-ba43-dac502259ad0.jpg

6) App1源程序設(shè)置

圖14. App project向量表偏移在程序中設(shè)置

d19d9d78-fb31-11ec-ba43-dac502259ad0.jpg

7) 編譯生成bin文件通過User選項(xiàng)卡,設(shè)置編譯后調(diào)用fromelf.exe,根據(jù).axf文件生成.bin文件,用于OTA更新。通過以上3個(gè)步驟,我們就可以得到一個(gè).bin的APP程序,通過Bootloader程序即可實(shí)現(xiàn)更新。8) 開啟debug App code功能如果在設(shè)計(jì)App code過程中需要對(duì)App project進(jìn)行單獨(dú)調(diào)試,請(qǐng)按照以下操作?!?先下載Bootloader工程● 再調(diào)試App工程

Bootloader/App與上位機(jī)串口通信協(xié)議

程序與上位機(jī)通信,接收固件升級(jí)數(shù)據(jù),上位機(jī)端和嵌入式端通信協(xié)議如下:1) 上位機(jī)通信協(xié)議圖15. 上位機(jī)通信協(xié)議

d1b46ed6-fb31-11ec-ba43-dac502259ad0.png

2) 嵌入式端下位機(jī)通信協(xié)議

圖16. 下位機(jī)通信協(xié)議

d1c95d82-fb31-11ec-ba43-dac502259ad0.png

注:ACK:0xCCDDNACK:0xEEFFData:0x31+Addr+數(shù)據(jù)+chenksum(1byte)Addr:4bytes,高位在前Kbytes,下載數(shù)據(jù),不足2K內(nèi)容填充0xFFChecksum:1byte,4bytes的Addr+2KBytes數(shù)據(jù)的校驗(yàn)和的低八位

原文標(biāo)題:MCU通過UART實(shí)現(xiàn)OTA在線升級(jí)流程

文章出處:【微信公眾號(hào):strongerHuang】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

    關(guān)注

    7

    文章

    610

    瀏覽量

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

    關(guān)注

    30

    文章

    4895

    瀏覽量

    70551
  • 終端設(shè)備
    +關(guān)注

    關(guān)注

    1

    文章

    184

    瀏覽量

    15492

原文標(biāo)題:MCU通過UART實(shí)現(xiàn)OTA在線升級(jí)流程

文章出處:【微信號(hào):strongerHuang,微信公眾號(hào):strongerHuang】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    OTA固件升級(jí)教程

    設(shè)備端。支持一個(gè)產(chǎn)品同時(shí)有多個(gè)推送支持wifi/mcu升級(jí)支持定向升級(jí)??芍付ㄔO(shè)備mac地址、區(qū)域、舊固件版本進(jìn)行推送。支持定時(shí)推送。可自定義推送周期及推送時(shí)段。OTA進(jìn)度統(tǒng)計(jì)分析OTA
    發(fā)表于 03-01 18:31

    STM32自定義USB設(shè)備開發(fā)詳細(xì)流程講解

    STM32自定義USB設(shè)備開發(fā)詳細(xì)流程講解及全套資料源碼下載
    發(fā)表于 08-03 09:50

    如何進(jìn)行OTA操作升級(jí)?

    藍(lán)牙固件空中升級(jí)OTA)涉及到藍(lán)牙無線通信、固件外存分布、固件內(nèi)存分布(定制鏈接腳本)、固件二次引導(dǎo)等技術(shù),需要開發(fā)人員深入理解藍(lán)牙單芯片的存儲(chǔ)架構(gòu)、啟動(dòng)引導(dǎo)流程、外存設(shè)備驅(qū)動(dòng)和產(chǎn)品電路設(shè)計(jì)等領(lǐng)域知識(shí)。完整和完美地設(shè)計(jì)和實(shí)現(xiàn)
    發(fā)表于 09-16 10:36

    設(shè)備OTA空中升級(jí)原理是什么

    1.背景沒有完美的軟件,因?yàn)樵O(shè)計(jì)缺陷、業(yè)務(wù)需求更新,軟件始終都在不斷升級(jí)完善。新軟件如何替換正在運(yùn)行的舊軟件就是本文關(guān)注的重點(diǎn),尤其是針對(duì)電子產(chǎn)品,設(shè)備空中升級(jí)OTA,受限于硬件資源,需要選擇
    發(fā)表于 01-19 07:44

    STM32F103C8的OTA升級(jí)流程是怎樣的

    OTA升級(jí)流程本文檔以 STM32F103C8 為例。此 MCU 的 flash 共 64k,分為 64 頁,每頁 1k ,flash 的擦除需要以頁為單位進(jìn)行。OTA 實(shí)現(xiàn)的思路是,
    發(fā)表于 01-24 08:13

    OTA升級(jí)方法

    ,再?zèng)Q定升級(jí)方式,是單備份升級(jí)還是雙備份升級(jí)。本文主要講解嵌入式設(shè)備的OTA升級(jí)流程架構(gòu),雖然會(huì)
    發(fā)表于 01-25 08:12

    多晶硅制備詳細(xì)流程及圖解

    多晶硅制備詳細(xì)流程
    發(fā)表于 01-10 16:18 ?66次下載
    多晶硅制備<b class='flag-5'>詳細(xì)流程</b>及圖解

    特斯拉的OTA升級(jí)步驟詳解

    本文主要詳細(xì)闡述了特斯拉的OTA升級(jí)過程。
    的頭像 發(fā)表于 09-24 09:07 ?2.5w次閱讀

    PE工具安裝的詳細(xì)流程詳細(xì)說明

    PE工具安裝的詳細(xì)流程詳細(xì)說明
    發(fā)表于 12-10 08:00 ?29次下載

    【筆記】MCU OTA升級(jí)流程

    OTA升級(jí)流程本文檔以 STM32F103C8 為例。此 MCU 的 flash 共 64k,分為 64 頁,每頁 1k ,flash 的擦除需要以頁為單位進(jìn)行。OTA 實(shí)現(xiàn)的思路是,
    發(fā)表于 11-29 18:21 ?34次下載
    【筆記】MCU <b class='flag-5'>OTA</b><b class='flag-5'>升級(jí)</b><b class='flag-5'>流程</b>

    以AT32為例詳解OTA升級(jí)詳細(xì)流程

    OTA分為Bootloader、App和Template三部分,應(yīng)用在App中執(zhí)行,Template僅作為新App固件數(shù)據(jù)的臨時(shí)存放空間。
    發(fā)表于 09-30 11:53 ?2441次閱讀

    在線升級(jí) | 物聯(lián)網(wǎng)中的OTA升級(jí)原理

    從最新的固件方式來看,可以分成以下幾類 0 1 OTA升級(jí) 1.1? 概念 OTA:Over-the-Air Technology,即空中下載技術(shù)。 OTA
    的頭像 發(fā)表于 02-03 02:40 ?1695次閱讀

    OTA是什么?OTA升級(jí)有何用?

    ota是什么?ota升級(jí)是什么意思?很多用智能手機(jī)的人應(yīng)該都會(huì)知道 ota是什么 ,而對(duì)于一些剛?cè)腴T的機(jī)友們,ROOT、刷機(jī)、越獄都比較熟悉,但OT
    的頭像 發(fā)表于 03-15 14:36 ?9586次閱讀

    在線升級(jí) | 物聯(lián)網(wǎng)中的OTA升級(jí)原理

    從最新的固件方式來看,可以分成以下幾類01OTA升級(jí)1.1概念OTA:Over-the-AirTechnology,即空中下載技術(shù)。OTA升級(jí)
    的頭像 發(fā)表于 02-02 09:59 ?1874次閱讀
    在線<b class='flag-5'>升級(jí)</b> | 物聯(lián)網(wǎng)中的<b class='flag-5'>OTA</b><b class='flag-5'>升級(jí)</b>原理

    BOSHIDA DC電源模塊檢測穩(wěn)定性能詳細(xì)流程

    BOSHIDA DC電源模塊檢測穩(wěn)定性能詳細(xì)流程 DC電源模塊是電力電子產(chǎn)品中非常常見和重要的設(shè)備。它們被廣泛應(yīng)用于各種公共場所和工業(yè)領(lǐng)域,如通信系統(tǒng)、計(jì)算機(jī)、工業(yè)自動(dòng)化以及醫(yī)療設(shè)備等。為確保電源
    的頭像 發(fā)表于 06-30 11:08 ?847次閱讀
    BOSHIDA DC電源模塊檢測穩(wěn)定性能<b class='flag-5'>詳細(xì)流程</b>
    主站蜘蛛池模板: 太湖县| 襄汾县| 邻水| 万宁市| 贺州市| 连山| 嘉定区| 冕宁县| 教育| 调兵山市| 洛宁县| 荣昌县| 九寨沟县| 长宁县| 哈巴河县| 来安县| 北票市| 新昌县| 缙云县| 祁门县| 财经| 同仁县| 水富县| 岑巩县| 望谟县| 宜良县| 惠东县| 商水县| 永定县| 淮安市| 北宁市| 广西| 连平县| 乐平市| 阿克苏市| 宁强县| 长汀县| 裕民县| 吴川市| 铜山县| 万州区|