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

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

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

3天內不再提示

使用高速微控制器作為自舉加載程序

星星科技指導員 ? 來源:ADI ? 作者:ADI ? 2023-03-01 13:57 ? 次閱讀

概述

高速微控制器系列的一些成員集成了內部EPROM或ROM用于程序存儲。但是,某些應用需要程序存儲器的系統內重新編程。使用帶有內部程序存儲器的Maxim高速微控制器重新加載閃存或NV RAM等外部非易失性存儲器,可以輕松實現這種系統。與使用具有內部NV RAM程序存儲器或昂貴的引導塊閃存的設備相比,使用內部程序存儲器作為引導加載程序可以獲得的低成本解決方案。

最常見的引導加載程序配置包含兩個元素:使用引導加載程序或引導加載程序編程的微控制器,以及用于保存用戶應用軟件的外部存儲設備(如NV RAM或閃存)。當系統在上電或外部復位后復位時,它將開始從微控制器的內部程序存儲器中執行指令。微控制器內的引導加載程序代碼首先檢查“加載器/無加載程序”;激勵,例如特定端口引腳上的邏輯低電平、串行端口字符等。這允許系統決定是否應加載新的用戶程序,或者是否應使用現有用戶程序開始執行。如果未收到激勵,表示不需要負載,則器件將通過ROMSIZE功能禁用內部程序存儲器,并從外部存儲器開始執行。如果存在刺激,器件將執行引導加載程序例程并開始重新編程外部存儲器。

本應用筆記將舉例說明設計人員如何使用外部閃存或NV RAM為基于高速微控制器的設計增加系統內可重編程性。介紹了一般的硬件和軟件設計指南。支持本文所述技術的軟件示例可通過Maxim的匿名FTP站點(互聯網)或BBS以電子格式提供。

調用引導加載程序

有幾種方法可以調用加載程序。最簡單的方法是專用于一個通用I/O引腳,作為高速微控制器內部復位例程的一部分進行采樣。本應用筆記中的示例使用P1.7和INT5,因為它對現有8051代碼設計的干擾最小。復位后,器件將開始從內部 EPROM 執行代碼。內部程序將對引腳執行快速測試,以確定是否應調用加載程序。由于此引腳在重置后默認為高狀態,因此建議將此引腳上的低條件用作調用加載器的信號。使用中斷引腳還允許器件在通過中斷服務例程重置以外的時間調用加載程序。用于斷位邏輯低電平的方法可以像專用開關一樣簡單,也可以通過RS-232電纜從主機進行更復雜的連接,在連接時將引腳拉低。

另一種方法是使用串行端口調用引導加載程序。重置后,設備可以連續輪詢串行端口以查找字符。如果在指定的時間段內未收到字符,程序將退出加載程序并開始從外部存儲器執行。這種方法的優點是不需要通用端口引腳。它的主要缺點是,設備在運行用戶應用程序之前每次重置時都會遇到固定的延遲。

退出引導加載程序

將新軟件加載到外部存儲器后,或者如果不需要加載程序操作,系統將需要退出加載程序并開始從外部程序存儲器執行。ROMSIZE 功能提供了一種快速方便的方法。ROMSIZE 寄存器允許軟件“關閉”;內部程序存儲器并強制所有程序在外部執行,類似于將/EA引腳拉低。然后,軟件應在 0000h 對復位矢量執行 LJMP。

必須從內部存儲器存儲器范圍之外的外部存儲器位置修改ROMSIZE寄存器。例如,DS87C520包含16kB的EPROM。修改ROMsize寄存器的指令應位于外部存儲器中4000h或更大的地址。如果不這樣做,如果內存映射在指令中間切換,則可能導致代碼執行失敗。

最簡單的方法是在內存的高端映射一個短例程(~16 字節)。如果使用 64kB 的內存空間,則可能是 FFF0h。這提供了干擾用戶應用程序代碼的最小機會。完成加載程序例程后,軟件將跳轉到外部存儲器(本例中位置FFF0h),修改ROMsize寄存器以禁用內部程序存儲器,然后跳轉到位置0000h。這將模擬用戶應用程序代碼的重置。在修改ROMSIZE寄存器之后,必須包括NOP或其他虛擬指令,以允許存儲器選擇電路的一個機器周期來禁用內部程序存儲器。建議使用以下例程:

CSEG at 0FFF0h MOV TA, #0AAh MOV TA, #55h MOV ROMSIZE, #0h NOP LJMP 0000h

引導加載程序軟件

引導加載程序可以包含許多不同的功能,這些功能因使用的特定存儲設備而異。通常,這些應包括加載、驗證和 CRC 命令。閃存設備將需要芯片擦除命令,NV RAM可能會發現填充命令很有用。

圖 1 說明了引導加載程序的基本操作。軟件首先檢查啟動加載器的信號。如果存在,設備將執行用戶請求的引導加載程序功能。完成后,或者如果未檢測到加載器激勵,器件將跳轉到位置FFF0h,修改ROMsize寄存器以禁用內部EPROM,然后跳回到重新啟動矢量。這模擬設備在重置后在地址 0000h 開始執行。

pYYBAGP-6UqAVx_kAAAlAHJSTeU696.gif

圖1.引導加載程序流程圖。

Maxim提供高速微控制器系列的引導加載程序示例。本應用筆記中引用的所有軟件均可下載(ZIP)。程序集語言源文件HSM_LOAD。ASM 包含可選的包含文件,以支持多種不同的內存類型,包括閃存和 NV RAM。以下是支持的一些命令的列表:

英特爾十六進制文件加載到內存?

根據內存驗證十六進制文件

擦除芯片(僅限閃存)

用數據填充內存范圍(僅限 NV RAM)

計算CRC

修改和讀取端口值

轉儲英特爾十六進制格式的內存內容

出口裝載機

硬件

圖 2 說明了在引導加載程序設計中使用 29F010 5.0V 閃存。盡管此配置旨在與文件HSM_LOAD中顯示的軟件兼容。ASM,它可以很容易地適應其他閃存或NV RAM設備。某些閃存設備(如 28Fxxx 系列)需要外部 12V V聚丙烯用于編程。包含這些器件的設計需要包括電壓源。

poYBAGP-6UuAXXXgAAAWJHj5iTo754.gif

圖2.引導加載程序硬件。

盡管 29F010 是 128kB 設備,但此示例僅通過將 A64 地址線設置為低電平來使用 16kB。這不會影響閃存命令功能,因為大多數設備在其編程算法期間設計為忽略A16。要使用 A16,請將其連接到未使用的通用端口引腳。請注意,端口引腳將默認為邏輯高電平狀態,選擇閃存的上限 64kB??梢栽陂W存器件的端口引腳和A16之間使用逆變器,使其在上電時選擇較低的64kB。這將簡化代碼放置?!癙”;引導加載程序的命令可用于在加載過程中操縱閃存的 A16 引腳,以加載器件的上部和下部 64kB 組。有關組切換的更多信息,請參見應用筆記81:“高速微控制器系列的存儲器擴展”。

DS87C520和DS87C530器件版本A4及更早版本包含與/PSEN信號有關的勘誤表,需要對上述硬件進行細微更改。在這些器件上,無論器件是使用內部還是外部程序存儲器工作,/PSEN信號都會切換。這將在寫入閃存設備期間導致沖突。圖 3 說明了一種臨時解決方法。此配置限制在從外部存儲器開始操作之前必須刪除 P1.7 上的負載信號。這是一個小問題,因為大多數應用程序將在單獨的步驟中對閃存進行編程,重置設備,然后開始操作。此錯誤將在設備的后續修訂版中得到糾正。

pYYBAGP-6UyAEOvNAAAZ-tzUp-g994.gif

圖3.DS87C520/DS87C530 修訂版 A4 的引導加載程序硬件。

審核編輯:郭婷

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

    關注

    48

    文章

    7566

    瀏覽量

    151614
  • 存儲器
    +關注

    關注

    38

    文章

    7513

    瀏覽量

    163987
  • EPROM
    +關注

    關注

    3

    文章

    129

    瀏覽量

    54445
收藏 人收藏

    評論

    相關推薦

    如何在I2C上從外部微控制器運行引導加載程序

    編程部分。我還沒有找到任何關于如何使用外部微控制器作為引導加載程序的文檔。我只能在HSSP編程接口上找到文檔,如果它壞了,可能會擦除引導加載
    發表于 07-12 09:09

    高速8位微控制器的用武之地

    本文主要介紹的是高速8位微控制器的用武之地。
    發表于 04-23 14:05 ?13次下載

    高速微控制器系列向超高速閃存微控制器的升級

    高速微控制器系列向超高速閃存微控制器的升級 Porting Applications from the High-Speed Micro Family to
    發表于 07-27 23:26 ?962次閱讀

    高速微控制器系列向超高速閃存微控制器的升級

    高速微控制器系列向超高速閃存微控制器的升級 摘要:多種原
    發表于 08-13 13:29 ?736次閱讀

    高速微控制器系列向超高速閃存微控制器的升級

    摘要:多種原因會促使我們把以前使用高速微控制器(DS80C310/DS80C320/DS80C323/DS8xC520)的8051設計升級到新的超高速閃存微控制器(DS89C430/D
    發表于 04-23 10:32 ?526次閱讀

    實現MAXQ2000微控制器的JTAG加載主機

    摘要:MAXQ®微控制器提供的JTAG啟動加載程序使外部JTAG主機能夠利用一組標準命令,輕松地識別MAXQ微控制器,并對其進行編程。本應用筆記中的代碼可以用作構建全功能JTA
    發表于 04-23 16:22 ?1540次閱讀
    實現MAXQ2000<b class='flag-5'>微控制器</b>的JTAG<b class='flag-5'>加載</b>主機

    如何在STM32微控制器引導加載中使用USART協議的詳細資料說明

    本應用程序說明描述了STM32微控制器引導加載中使用的USART協議。它詳細描述了每個支持的命令。有關USART硬件資源和設備引導加載
    發表于 12-13 15:20 ?4次下載
    如何在STM32<b class='flag-5'>微控制器</b>引導<b class='flag-5'>加載</b><b class='flag-5'>器</b>中使用USART協議的詳細資料說明

    什么是微控制器?如何編程微控制器?

    微控制器進行編程或刻錄意味著“將程序從編譯傳輸到微控制器的存儲”。微控制器
    的頭像 發表于 08-21 15:40 ?1w次閱讀

    如何使用NYASM微控制器應用程序

    這份文件主要介紹如何使用NYASM來開發九齊科技的微控制器應用程序
    發表于 06-15 16:13 ?4次下載
    如何使用NYASM<b class='flag-5'>微控制器</b>應用<b class='flag-5'>程序</b>

    AN5405_STM32H7和STM32L5系列微控制器加載程序時使用的FDCAN協議

    AN5405_STM32H7和STM32L5系列微控制器加載程序時使用的FDCAN協議
    發表于 11-21 17:06 ?1次下載
    AN5405_STM32H7和STM32L5系列<b class='flag-5'>微控制器</b><b class='flag-5'>加載</b><b class='flag-5'>程序</b>時使用的FDCAN協議

    為MAXQ2000微控制器實現JTAG自舉加載程序主控

    通過使用一組標準化命令,MAXQ微控制器提供的JTAG引導加載程序允許外部JTAG主機輕松識別和編程任何MAXQ微控制器。
    的頭像 發表于 02-21 11:22 ?1161次閱讀
    為MAXQ2000<b class='flag-5'>微控制器</b>實現JTAG<b class='flag-5'>自舉</b><b class='flag-5'>加載</b><b class='flag-5'>程序</b>主控

    使用高速微控制器系列進行內存擴展

    高速微控制器系列的所有成員都設計用于直接處理高達 64kB 的 程序和數據存儲。但是,有時應用程序需要比現在更多的內存 可在片上使用,也可
    的頭像 發表于 03-01 13:51 ?940次閱讀
    使用<b class='flag-5'>高速</b><b class='flag-5'>微控制器</b>系列進行內存擴展

    使用微控制器上的引導加載程序使您的嵌入式設計面向未來

    引導加載程序是一個程序,允許您通過許多方便的接口加載應用程序固件,如UART,CAN/CAN FD,LIN,I 2C等。當您打開或重置
    的頭像 發表于 05-06 10:55 ?1370次閱讀

    用于Hercules微控制器的CAN總線引導加載程序

    電子發燒友網站提供《用于Hercules微控制器的CAN總線引導加載程序.pdf》資料免費下載
    發表于 09-19 10:52 ?0次下載
    用于Hercules<b class='flag-5'>微控制器</b>的CAN總線引導<b class='flag-5'>加載</b><b class='flag-5'>程序</b>

    用于Hercules微控制器的CAN總線引導加載程序

    電子發燒友網站提供《用于Hercules微控制器的CAN總線引導加載程序.pdf》資料免費下載
    發表于 09-19 10:55 ?0次下載
    用于Hercules<b class='flag-5'>微控制器</b>的CAN總線引導<b class='flag-5'>加載</b><b class='flag-5'>程序</b>
    主站蜘蛛池模板: 免费无码一区二区三区蜜桃大| 免费人成视频19674不收费| china中国gay偷拍| 18美女腿打开无遮软件| 日本人的xxxxxxxxx69| 强开乳罩摸双乳吃奶视频| 殴美黄色网| 日产久久视频| 网友自拍偷拍| 亚洲第一免费播放区| 亚洲欧洲免费三级网站| 夜夜国产亚洲视频香蕉| 70岁妇女牲交色牲片| mm625亚洲人成电影网| 超碰在线视频人人AV| 国产 亚洲 中文字幕 久久网| 国产精人妻无码一区麻豆 | 两个客户一起吃我的奶| 男女边吃奶边做边爱视频| 日韩亚洲欧美中文在线| 亚洲精品动漫免费二区| 最新国产成人综合在线观看| xx在线观看| 国内精品久久久久久西瓜色吧| 久久精品视频在线看99| 欧美日韩精品一区二区三区四区| 色欲午夜无码久久久久久| 亚洲无遮挡无码A片在线| 99爱免费视频| 国产精品色欲AV亚洲三区软件| 久久久久久久尹人综合网亚洲| 欧美日韩亚洲一区视频二区| 乡村教师电影版| 5G年龄确认我已满18免费| 国产成人刺激视频在线观看| 久久国语露脸精品国产| 日本老人oldmantv乱| 一边亲着一面膜下的免费过程| 扒开美女嫩bbb| 精品一品国产午夜福利视频 | 国产精品手机在线视频|