衡阳派盒市场营销有限公司

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

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

3天內不再提示

DSP28335學習筆記(2):啟動原理詳解

CHANBAEK ? 來源:強盛電子廠 ? 作者:高啟強的 ? 2023-07-02 15:46 ? 次閱讀

1.前言

通常了解一款芯片,我們最開始從它的電特性描述出發,隨后看其外設、存儲、時鐘等系統基本框架。我相信大家拿到一款芯片之后第一件事就是去查閱其數據手冊,對芯片特性有個初步了解。

很多芯片開發者在了解芯片特性之后,會直接拷貝官方提供的例程進行調試,之后慢慢熟悉芯片,變成開發者模式。在這過程中,很多開發者往往忽略了一個重要的步驟,那就是熟悉芯片啟動原理,所以我們今天將DSP28335這款芯片的啟動原理與大家分享。

2.上電復位

顛覆我們感性認識的是,芯片上電過程不是一個瞬時過程,而是 爬坡過程 ,也就是說芯片上電也是需要時間的。

在了解芯片基本特性之后,我們清晰的知道一般芯片都有上電復位模塊(POR),也可以稱為上電延時復位,其作用是通過延時器件在上電電壓爬坡過程中把芯片鎖定在復位狀態,保證芯片模擬模塊和數字模塊初始化至已知狀態再啟動芯片。

當電壓逐漸增大,直到達到閾值電壓時,上電復位電路會釋放內部復位信號。在其他必要條件充足的情況下,芯片開始啟動。

3.BOOT ROM

BOOT ROM是芯片內部存儲器中固化好的一塊只讀存儲區,用來存放引導程序。

圖片

BOOT ROM在芯片內部存儲器中地址0x3FE000-x3FFFFF如上圖所示。

圖片

上圖是BOOT ROM中按功能分類的段地址存儲區。

圖片

CPU Vector Table,此功能區在VMAP = 1 ,ENPIE = 0的情況下使用。

圖片

再完成芯片引導程序后,此功能區其他部分被用來存放中斷向量表。

4.啟動過程

芯片上電完成后,開始運行程序。首先PC指針指向CPU Vector Table中的RESET(地址:0xFFFC0)。

圖片

圖片

通過觀察CMD文件中的RESET地址,我們發現此地址存放著.reset,通過訪問存儲區中翻譯成匯編語言的代碼,這里存放著一條跳轉指令。芯片復位后第二步,跳轉到InitBoot函數入口地址,執行InitBoot函數。

圖片

在InitBoot函數中,對器件模式、地址進行選擇,還對某些功能進行初始化。最關鍵的是調用了SelectBootMode這個函數,這個函數通過BOOT引腳狀態來決定通過哪種方式引導程序,接下來我們一起走進SelectBootMode。

DSP28335InitBoot中的SelectBootMode是通過讀取4個IO引腳的狀態決定程序引導方式。

圖片

如上圖所示定義16種狀態。

在引導方式上可以分為兩大類,一類是進行ADC校準,一類是不進行ADC校準。

圖片

SelectBootMode首先依據讀取到的引腳狀態判斷是否是不進行ADC校準,不校準直接跳過后續程序,將讀取到的引導模式的引導函數入口地址返回。

若需要ADC校準,則往下執行ADC校準。

圖片

圖片

校準后再判斷以哪種方式引導,并將引導函數入口地址返回。

返回后在InitBoot中將引導函數入口地址存入ACC,再將ACC賦予PC退出InitBoot,開始運行用戶程序。

圖片

一般我們將程序引導至FLASH(地址:0x33FFF6)。

圖片

圖片

通過工程下的CMD文件可發現0x33FFF6中存放著codestart函數,所以緊接著運行codestart函數。

圖片

codestart函數中禁止看門狗,再調用RTS中的c_int00函數。

圖片

圖片

c_int00函數中為C語言的運行搭建運行環境,然后跳轉至main函數,來到C語言的世界。

圖片

圖片

5.總結

以上是DSP28335芯片上電到運行至main函數的基本過程,其基本流程可查閱芯片技術參考手冊第二章,流程圖如下圖所示。

圖片

以上是本期全部內容,那么現在芯片就可以正常運行、萬事大吉了嗎?

當然不是,芯片啟動后還需對芯片進行一系列初始化配置,那么這又是怎樣一個過程呢?

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

    關注

    456

    文章

    51170

    瀏覽量

    427241
  • 存儲器
    +關注

    關注

    38

    文章

    7528

    瀏覽量

    164342
  • 函數
    +關注

    關注

    3

    文章

    4346

    瀏覽量

    62969
  • Boot
    +關注

    關注

    0

    文章

    150

    瀏覽量

    35944
  • DSP28335
    +關注

    關注

    22

    文章

    59

    瀏覽量

    40769
收藏 人收藏

    評論

    相關推薦

    DSP28335外部中斷的使用

    處理器的外部中斷主要用于捕抓外部輸入的高低電平。本篇文章將介紹DSP28335的外部中斷的使用。
    的頭像 發表于 07-07 16:41 ?4861次閱讀
    <b class='flag-5'>DSP28335</b>外部中斷的使用

    dsp28335 SPI啟動方式不啟動

    最近一個項目用到DSP28335 SPI啟動方式,現在確認了硬件配置為SPI啟動方式,工程編譯生成的OUT文件轉換成16進制文件,通過燒寫程序將轉換后的文件燒寫到SPI FLASH中,重新上電,用
    發表于 12-12 11:11

    Dsp28335中斷的方法

    Dsp28335中斷的方法Dsp28335中斷的方法
    發表于 01-08 14:17 ?14次下載

    基于DSP28335的三電平SVPWM算法研究

    基于DSP28335的三電平SVPWM算法研究
    發表于 04-15 18:29 ?56次下載

    DSP28335中文手冊

    TI公司 DSP28335中文資料數據手冊
    發表于 05-19 11:17 ?163次下載

    DSP28335研發筆記_ccs5.2

    DSP28335研發筆記
    發表于 12-30 15:04 ?29次下載

    DSP28335串口通信(SCI)的理論,介紹和應用

    DSP28335串口通信(SCI)的理論,介紹和應用
    發表于 09-04 09:28 ?37次下載
    <b class='flag-5'>DSP28335</b>串口通信(SCI)的理論,介紹和應用

    基于DSP28335串口通信(SCI)的理論,介紹和應用

    基于DSP28335串口通信(SCI)的理論,介紹和應用
    發表于 09-04 14:07 ?29次下載
    基于<b class='flag-5'>DSP28335</b>串口通信(SCI)的理論,介紹和應用

    dsp28335如何入門:程序設計步驟

    本文首先介紹了dsp28335的概念,其次介紹了dsp28335電氣特性及特點,最后詳細闡述了關于dsp28335的程序設計步驟。
    發表于 05-23 17:09 ?2w次閱讀

    dsp28335開發板中文資料匯總(dsp28335最小系統_引腳圖_封裝_初始化程序)

    本文主要介紹了dsp28335開發板最小應用系統設計、dsp28335引腳圖功能和dsp28335封裝及dsp28335初始化程序。
    發表于 05-24 17:25 ?6.5w次閱讀
    <b class='flag-5'>dsp28335</b>開發板中文資料匯總(<b class='flag-5'>dsp28335</b>最小系統_引腳圖_封裝_初始化程序)

    使用DSP28335控制電機的資料合集免費下載

    本文檔的主要內容詳細介紹的是使用DSP28335控制電機的資料合集免費下載包括了:電機控制原理圖,硬件手冊,H橋直流電刷電機控制,DSP28335使用程序,DSP28335電機控制開發板測試步驟,
    發表于 05-18 08:00 ?165次下載
    使用<b class='flag-5'>DSP28335</b>控制電機的資料合集免費下載

    DSP28335學習——系統初始化

    近日工作中又涉及到了DSP28335的應用,看來TI的芯片還是得到了公司領導的認可,也直接丟了一份DSP28335的FOC程序給我理解。以前讀書階段較為簡單的接觸過一段時間,對DSP28335
    發表于 12-17 18:20 ?17次下載
    <b class='flag-5'>DSP28335</b><b class='flag-5'>學習</b>——系統初始化

    DSP28335學習筆記(3):InitSysCtrl

    在上一節中,我們講到DSP28335啟動原理,啟動后來到main函數執行用戶代碼。我們現在已經啟動完成,那么啟動后我們如何對芯片進行配置呢
    的頭像 發表于 07-02 15:48 ?4263次閱讀
    <b class='flag-5'>DSP28335</b><b class='flag-5'>學習</b><b class='flag-5'>筆記</b>(3):InitSysCtrl

    DSP28335學習筆記(5):GPIO介紹及使用

    在前面的章節中,我們對DSP28335系統初始化過程有了一個初步的了解,下面的章節我們開始外設的應用。
    的頭像 發表于 07-02 15:52 ?9779次閱讀
    <b class='flag-5'>DSP28335</b><b class='flag-5'>學習</b><b class='flag-5'>筆記</b>(5):GPIO介紹及使用

    研旭DSP28335實用版-硬件測評

    電子發燒友網站提供《研旭DSP28335實用版-硬件測評.pdf》資料免費下載
    發表于 10-09 15:19 ?3次下載
    研旭<b class='flag-5'>DSP28335</b>實用版-硬件測評
    百家乐官网娱乐城提款| 大发888娱乐城下载电脑怎么上乐讯新足球今日比分 | 百家乐牌路图表下| 百家乐电投网址| 棋牌游戏平台排行榜| 大发888怎么注册账号| 网上百家乐官网赌博经历| 赌场百家乐官网赌场| 百家乐官网输了100万| 百家乐官网筛子游戏| 澳门百家乐下注最低| 大发888娱乐城充值lm0| 德州扑克 视频| bet365提款限制| 百家乐官网庄家闲| 电子百家乐官网假在线哪| 真人百家乐官网娱乐场| 上海德州扑克比赛| 百家乐策略网络游戏信誉怎么样| 百家乐官网追号| 民宅24方位| 百家乐在线娱乐网| 网上百家乐真的假| 百家乐最长的缆| 红桃K百家乐娱乐城| 全讯网高手| 百家乐波音平台导航网| 漠河县| 百家乐官网赌场导航| 太阳城申博| 网络博彩| 百家乐官网网络赌博真假| 郧西县| 月华百家乐官网的玩法技巧和规则| 大发888怎么了| 波音网百家乐官网合作| 昆明百家乐装修装潢有限公司| 百家乐园云鼎赌场娱乐网规则| 大发888在线娱乐百家乐| 立博开户| 大发888 备用6222.co|