chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

HC32L110系列的IAP控制模塊基本功能

沈陽(yáng)芯碩科技 ? 來源:jetson024 ? 作者:jetson024 ? 2022-05-10 14:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

通常實(shí)現(xiàn)IAP功能時(shí),需要在設(shè)計(jì)固件程序時(shí)編寫兩個(gè)項(xiàng)目代碼,第一個(gè)項(xiàng)目程序即BOOT程序不執(zhí)行正常的功能操作,而只是通過某種通信方式(如USB、USART)接收程序或數(shù)據(jù),執(zhí)行對(duì)第二部分代碼的更新;第二個(gè)項(xiàng)目程序即APP程序用戶真正的功能代碼。這兩部分項(xiàng)目代碼同時(shí)燒錄在Flash中,當(dāng)芯片上電后,首先是第一個(gè)項(xiàng)目程序BOOT開始運(yùn)行,它主要實(shí)現(xiàn)如下功能。
1)檢查是否需要對(duì)第二部APP程序代碼進(jìn)行更新
2)如果不需要更新則轉(zhuǎn)到4)
3)執(zhí)行更新操作
4)跳轉(zhuǎn)到第二部分代碼執(zhí)行
第一部分BOOT代碼可以通過SWD或者離線編程器下載到芯片F(xiàn)lash內(nèi)部,第二部分APP和第一部分BOOT一起燒入芯片內(nèi)部,以后需要程序更新再通過第一把BOOT代碼更新。根據(jù)芯片系列的Flash存放不同地址范圍,從最低地址區(qū)域開始存放BOOT,緊跟其后的就是APP程序,本篇筆記受限于芯片內(nèi)部Flash容量,只是存放一個(gè)APP程序。即在芯片內(nèi)部有兩個(gè)程序即BOOT和APP程序。
IAP功能具體實(shí)現(xiàn)
芯片程序一般從Flash地址0x0000_0000開始執(zhí)行,基于Cortex-M0+內(nèi)核特性,內(nèi)部通過中斷向量表來響應(yīng)中斷,程序從中斷向量表取出復(fù)位中斷向量執(zhí)行中斷程序,當(dāng)中斷產(chǎn)生,芯片內(nèi)部PC指針定位到中斷向量表來取出對(duì)應(yīng)的中斷服務(wù)程序執(zhí)行。如果沒有中斷產(chǎn)生,在芯片執(zhí)行完復(fù)位中斷服務(wù)程序后,跳轉(zhuǎn)到main函數(shù)順序執(zhí)行死循環(huán)。如果有中斷產(chǎn)生,通過中斷向量表執(zhí)行對(duì)應(yīng)的中斷服務(wù)程序。
當(dāng)加入IAP后,芯片還是從中斷向量表取出復(fù)位中斷向量執(zhí)行中斷程序,如果沒有中斷產(chǎn)生,在芯片執(zhí)行完復(fù)位中斷服務(wù)程序后,跳轉(zhuǎn)到main函數(shù)。在執(zhí)行完IAP后,新程序的復(fù)位中斷向量地址為0x0000_0004 + BOOT程序大小,跳轉(zhuǎn)到APP程序的復(fù)位向量表,執(zhí)行APP的復(fù)位中斷服務(wù)程序,隨后跳轉(zhuǎn)到APP程序的main函數(shù)執(zhí)行。
其中:BOOT程序大小3.5KB
Para區(qū)域存放IAP升級(jí)期間參數(shù)和標(biāo)志占用0.5KB
APP程序大小為24KB
Demo程序,操作流程如下:
先將APP工程HEX下載到芯片內(nèi)部
打開BOOT工程HEX下載到芯片,或者可以使用工具將兩個(gè)HEX文件合并在一起下載到芯片內(nèi)部。
使用上位機(jī)演示程序,打開串口波特率固定為9600。按照協(xié)議將APP工程的bin文件下載到0x1000開始的芯片內(nèi)部,其中要求APP的bin文件小于28KB。
參考樣例及驅(qū)動(dòng)
通過上述介紹,使用演示Demo程序IAP需要特定協(xié)議。
通信協(xié)議格式如下:
///*frame:68A0A1CPage L0L1D0... DN-1 CRC0CRC1 16*///
///*offset :0 1 2 3 4 5 6 7 8+N 9+N 10+N 11 +N*///
頭字符: 固定字符為0x68一個(gè)字節(jié)
地址: A0 A1兩個(gè)字節(jié)
控制碼C:讀地址為0x15 寫地址為0x25
頁(yè)地址page:一個(gè)字節(jié)代表現(xiàn)在要操作的那個(gè)頁(yè)
長(zhǎng)度L0 L1: 兩個(gè)字節(jié) L0代表高字節(jié),L1代表低字節(jié),此處長(zhǎng)度僅代表數(shù)據(jù)區(qū)域長(zhǎng)度
數(shù)據(jù)域D0…DN-1:代表讀出或者寫入的數(shù)據(jù)
數(shù)據(jù)校驗(yàn)CRC:采用CRC-16方式,代表數(shù)據(jù)域數(shù)據(jù)的校驗(yàn)。
結(jié)束符號(hào):固定字符為0x16一個(gè)字節(jié)
讀指令如下:
68 A0 A1 15 Page 0x00 0x00 CRC0 CRC1 16
正確回復(fù):68 A0 A1 95 Page 0x04 0x00 D0 ………… D1023 CRC0 CRC1 16
錯(cuò)誤回復(fù) 68 A0A1D5 Page 0x00 0x00CRC0CRC1 16
Page選擇(0 -- 27)
每次讀取1K字節(jié)數(shù)據(jù)
寫指令如下:
68 A0 A1 25 Page 04 00 D0 ………… D1023 CRC0 CRC1 16
正確回復(fù):68 A0 A1 A5 Page 04 00 CRC0 CRC1 16
錯(cuò)誤回復(fù) 68 A0 A1 E5 Page 00 00 CRC0CRC1 16
Page選擇(0 -- 27)
每次寫1K字節(jié)數(shù)據(jù)
開始IAP升級(jí)指令
68 A0 A1 36 00 00 00 00 00 16
正確回復(fù)68A0 A1 B6 00 000000 00 16
錯(cuò)誤回復(fù)68A0 A1 F6 00 000000 00 16
結(jié)束IAP升級(jí)指令
68 A0 A1 49 00 00 00 00 00 16
正確回復(fù)68A0 A1 C9 00 000000 00 16
錯(cuò)誤回復(fù)68A0 A1 09 00 000000 00 16
發(fā)送數(shù)據(jù)幀如果發(fā)送結(jié)束到接收小于2s,如果超過說明IAP升級(jí)通信錯(cuò)誤。
以下部分簡(jiǎn)要介紹IAP實(shí)現(xiàn)關(guān)鍵代碼:
1)BOOT實(shí)現(xiàn)跳轉(zhuǎn)到APP代碼:
if(((*(__IO uint32_t*)appxaddr)&0x2FFE0000)==0x20000000) //檢查棧頂?shù)刂肥欠窈戏?/span>
{
jump2app=(iapfun)*(__IO uint32_t*)(appxaddr+4);//APP程序復(fù)位地址
MSR_MSP(*(__IO uint32_t*)appxaddr); //初始化APP堆棧指針
jump2app(); //跳轉(zhuǎn)到APP程序
}
2)APP程序中斷向量偏移:
new_vect_tableEQU 0x00001000 ;中斷向量偏移長(zhǎng)度
; reset Vector table address.
LDR R0, =0xE000ED08
LDR R2, =new_vect_table
STR R2, [R0] ;向量表重定義點(diǎn)擊并拖拽以移動(dòng)
總結(jié)
以上章節(jié)簡(jiǎn)要介紹了HC32L110系列的IAP控制模塊基本功能,詳細(xì)說明了該模塊的各個(gè)功能及操作步驟,用戶在實(shí)際的應(yīng)用開發(fā)過程中,如果需要更深一步了解該模塊的使用方法及操作事項(xiàng),應(yīng)以HC32L110的用戶手冊(cè)為準(zhǔn)。本章中提到的樣例既可以作為用戶進(jìn)一步的實(shí)驗(yàn)與學(xué)習(xí),也可以在實(shí)際開發(fā)中直接應(yīng)用。

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

    關(guān)注

    463

    文章

    54412

    瀏覽量

    469177
  • 控制模塊
    +關(guān)注

    關(guān)注

    2

    文章

    148

    瀏覽量

    19870
  • IAP
    IAP
    +關(guān)注

    關(guān)注

    2

    文章

    169

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    MC68HC908QYA/QTA系列控制器的深度剖析與應(yīng)用指南

    MC68HC908QYA/QTA系列控制器的深度剖析與應(yīng)用指南 在電子工程師的日常工作中,選擇一款合適的微控制器(MCU)至關(guān)重要。MC68HC
    的頭像 發(fā)表于 04-09 13:20 ?166次閱讀

    探秘MC68HC908QYA/QTA系列控制器:特性、功能與應(yīng)用解析

    探秘MC68HC908QYA/QTA系列控制器:特性、功能與應(yīng)用解析 在電子工程領(lǐng)域,一款性能卓越、功能豐富的微
    的頭像 發(fā)表于 04-09 13:15 ?165次閱讀

    Freescale HC08 QC 系列 8 位微控制器:低成本解決方案的首選

    08 QC 系列基于流行的 HC08 內(nèi)核,是面向通用市場(chǎng)的小封裝 8 位微控制器家族。該系列成員具備強(qiáng)大的模擬能力、完整的串行模塊
    的頭像 發(fā)表于 04-09 13:10 ?195次閱讀

    探索MC68HC908QY/QT系列控制器:功能、特性與應(yīng)用全解析

    探索MC68HC908QY/QT系列控制器:功能、特性與應(yīng)用全解析 概述 在電子工程師的日常工作中,微控制器(MCU)是不可或缺的核心組件
    的頭像 發(fā)表于 04-09 11:30 ?155次閱讀

    深入解析MC68HC908LB8微控制器:特性、功能與應(yīng)用

    的MC68HC908LB8微控制器,詳細(xì)了解它的特性、功能以及在實(shí)際應(yīng)用中的表現(xiàn)。 文件下載: MC68HC908LB8VDWE.pdf 一、概述 MC68
    的頭像 發(fā)表于 04-09 11:30 ?178次閱讀

    深入解析MC68HC908JB8系列控制器:特性、功能與應(yīng)用

    深入解析MC68HC908JB8系列控制器:特性、功能與應(yīng)用 在電子工程領(lǐng)域,微控制器是眾多電子設(shè)備的核心組件,它們的性能和
    的頭像 發(fā)表于 04-09 11:15 ?214次閱讀

    深入剖析MC68HC(7)05L5微控制器:功能、特性與應(yīng)用全解析

    深入剖析MC68HC(7)05L5微控制器:功能、特性與應(yīng)用全解析 在電子工程師的日常工作中,微控制器是不可或缺的核心器件。今天,我們就來詳
    的頭像 發(fā)表于 04-09 11:05 ?257次閱讀

    MC68HC705KJ1系列控制器深度解析

    MC68HC705KJ1系列控制器深度解析 引言 在電子設(shè)計(jì)領(lǐng)域,微控制器是眾多項(xiàng)目的核心組件。MC68HC705KJ1
    的頭像 發(fā)表于 04-09 11:05 ?285次閱讀

    深入解析MC68HC705JJ7/MC68HC705JP7微控制器:特性、功能與應(yīng)用指南

    ,我們將深入探討MC68HC705JJ7和MC68HC705JP7這兩款微控制器,它們屬于MC68HC05JJ/JP系列,具有豐富的特性和強(qiáng)
    的頭像 發(fā)表于 04-09 11:05 ?182次閱讀

    M68HC11K 系列控制器技術(shù)解析

    M68HC11K 系列控制器技術(shù)解析 在電子工程領(lǐng)域,微控制器是眾多設(shè)備的核心大腦,而 M68HC11K
    的頭像 發(fā)表于 04-09 11:05 ?240次閱讀

    深入解析MC68HC705C9A微控制器:功能特性與應(yīng)用指南

    深入解析MC68HC705C9A微控制器:功能特性與應(yīng)用指南 在電子工程師的日常工作中,選擇合適的微控制器是項(xiàng)目成功的關(guān)鍵。今天,我們將深入探討MC68
    的頭像 發(fā)表于 04-09 10:50 ?179次閱讀

    110W 雙輸出開關(guān)電源 PD - 110 系列:性能與設(shè)計(jì)解析

    系列,看看它在性能、設(shè)計(jì)和應(yīng)用方面有哪些值得關(guān)注的地方。 文件下載: PD-110A.pdf 一、產(chǎn)品特性 1. 輸入與保護(hù) PD - 110 系列采用通用交流輸入,全范圍適應(yīng),能滿
    的頭像 發(fā)表于 04-05 15:15 ?654次閱讀

    【飛凌嵌入式RV1126B開發(fā)板】+基本功能測(cè)試篇(1)

    基本功能的測(cè)試。 1.內(nèi)核性能測(cè)試 1)查看內(nèi)核和cpu信息 實(shí)現(xiàn)該測(cè)試功能的指令為:uname -a 圖1 操作及內(nèi)容 2)查看CPU頻率 圖2 操作及結(jié)果 3)查看環(huán)境變量信息 圖3 操作及結(jié)果 4
    發(fā)表于 03-05 12:25

    小華HC32L低功耗額溫槍開源方案

    1,本方案采用小華超低功耗MCU設(shè)計(jì);適用HC32L136,HC32L176,HC32L166,HC32L196,HC32L186等
    發(fā)表于 02-12 17:40 ?0次下載

    單片機(jī)基本功能

    必須考慮其外部的連接情況,應(yīng)保證在Standby或靜態(tài)狀態(tài)下不存在拉電流或灌電流。 3、外部中斷:外部中斷也是絕大多數(shù)MCU所具有的基本功能,一般用于信號(hào)的實(shí)時(shí)觸發(fā),數(shù)據(jù)采樣和狀態(tài)的檢測(cè),中斷的方式由
    發(fā)表于 01-13 07:20