在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

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

C2000芯片如何給一個連續(xù)的RAM區(qū)間賦初值?

電子設(shè)計 ? 來源:電子設(shè)計 ? 作者:電子設(shè)計 ? 2020-10-20 18:38 ? 次閱讀

作者:TI FAE – Johnson Chen

在開發(fā)程序的時候,我們經(jīng)常會希望某些全局變量在被使用時已經(jīng)有想要的初始值,我們通常會用下面兩種方法來實現(xiàn)變量的初始值賦值,

方法一:定義帶初始值的全局變量

例如:int temp1 = 0x00;

方法二:定義不帶初始值的全局變量

例如:int temp1;

在main()函數(shù)初始化時給變量寫初值

例如: temp1= 0x00;

但如果很多的變量比如一個RAM section都要賦同一個初值,使用上面提到的兩個方法就會比較繁瑣。本文介紹方法可以快速實現(xiàn)這個功能。

此方法有以下幾個特點:

不影響這個連續(xù)的RAM區(qū)間里的部分變量需要通過前面提到的方法一重新賦初值。

可以避免有時因為編程者的初心大意忘記給某些變量賦值而導致程序運行異常。

解決很多不了解C2000匯編指令用戶實現(xiàn)此功能的困擾。

首先我們要了解C2000上電時的流程,對于C2000 芯片來說程序的執(zhí)行入口是在CMD 文件里面“codestart”這個段定義的,而在”XXXXXX_CodeStartBranch.asm”里面通過“.sect "codestart" ”語句將相應(yīng)的跳轉(zhuǎn)指令分配到了這個段。

通常“XXXXXX_CodeStartBranch.asm”文件內(nèi)容如下:

其中_c_int00 這個函數(shù)本體是在C2000編譯器的RTS library里面,這個函數(shù)實現(xiàn)的功能是把用戶定義的帶初始值的全局變量的初始值的從FLASH搬運到RAM里面,從而實現(xiàn)初始值的傳遞,之后PC就會跳轉(zhuǎn)到用戶的main()入口。

因此我們需要在“LB _c_int00” 語句之前實現(xiàn)RAM section值的初始化。

假設(shè)我們需要對0x00000400為起始地址長度為0x200的RAM 區(qū)間進行初始化,初始值為0x00。

下面為具體實現(xiàn)代碼:

MOV ACC, #00H ; initialed value

MOVL XAR5, #400H ;Dest address

MOVL XAR4, #(200H-1) ;length

RPT @AR4 || MOV *XAR5++, ACC

如果需初始化成其它值,將第一行 “#00H”更改為其它的值即可。

將代碼放入“ XXXXXX_CodeStartBranch.asm ”下面藍色部分位置即可。

注意事項:

1.本方法適用于所有C2000產(chǎn)品,不同芯片“ XXXXXX_CodeStartBranch.asm ”文件名不同,XXXXXX為芯片系列名。

2.因為C2000的看門狗上電時是默認開啟的, 且溢出后會產(chǎn)生復位。為了確保在初始化RAM時不會產(chǎn)生看門狗復位,我們首先要先禁止看門狗,請確保“ WD_DISABLE .set 1 ”。

審核編輯 黃昊宇

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

    關(guān)注

    456

    文章

    51225

    瀏覽量

    427418
  • RAM
    RAM
    +關(guān)注

    關(guān)注

    8

    文章

    1369

    瀏覽量

    115040
收藏 人收藏

    評論

    相關(guān)推薦

    C2000常見問題解答

    電子發(fā)燒友網(wǎng)站提供《C2000常見問題解答.pdf》資料免費下載
    發(fā)表于 12-06 16:04 ?0次下載
    <b class='flag-5'>C2000</b>常見問題解答

    C2000微控制器用戶培訓手冊

    電子發(fā)燒友網(wǎng)站提供《C2000微控制器用戶培訓手冊.pdf》資料免費下載
    發(fā)表于 12-05 14:13 ?0次下載
    <b class='flag-5'>C2000</b>微控制器用戶培訓手冊

    C2000? MCU在有器件復位時的實時固件更新

    電子發(fā)燒友網(wǎng)站提供《C2000? MCU在有器件復位時的實時固件更新.pdf》資料免費下載
    發(fā)表于 11-25 14:16 ?0次下載
    <b class='flag-5'>C2000</b>? MCU在有器件復位時的實時固件更新

    請問SM73201如何與C2000配合使用SPISOMIA?

    的數(shù)字信號嗎,還需要在tms320f28033編程驅(qū)動它嗎,目前只接觸了C2000芯片內(nèi)部ADC轉(zhuǎn)換,不大懂這種外部ADC芯片
    發(fā)表于 11-25 06:16

    C2000實時控制外設(shè)參考指南

    電子發(fā)燒友網(wǎng)站提供《C2000實時控制外設(shè)參考指南.pdf》資料免費下載
    發(fā)表于 11-12 15:38 ?0次下載
    <b class='flag-5'>C2000</b>實時控制外設(shè)參考指南

    C2000實時控制MCU外設(shè)

    電子發(fā)燒友網(wǎng)站提供《C2000實時控制MCU外設(shè).pdf》資料免費下載
    發(fā)表于 11-09 14:55 ?0次下載
    <b class='flag-5'>C2000</b>實時控制MCU外設(shè)

    C2000? MISRA-C策略

    電子發(fā)燒友網(wǎng)站提供《C2000? MISRA-C策略.pdf》資料免費下載
    發(fā)表于 10-11 11:43 ?0次下載
    <b class='flag-5'>C2000</b>? MISRA-<b class='flag-5'>C</b>策略

    支持C2000的開發(fā)工具版本

    電子發(fā)燒友網(wǎng)站提供《支持C2000的開發(fā)工具版本.pdf》資料免費下載
    發(fā)表于 10-10 11:06 ?0次下載
    支持<b class='flag-5'>C2000</b>的開發(fā)工具版本

    C2000 CPU內(nèi)存內(nèi)置自檢功能

    電子發(fā)燒友網(wǎng)站提供《C2000 CPU內(nèi)存內(nèi)置自檢功能.pdf》資料免費下載
    發(fā)表于 10-10 09:27 ?0次下載
    <b class='flag-5'>C2000</b> CPU內(nèi)存內(nèi)置自檢功能

    C2000系統(tǒng)配置應(yīng)用說明

    電子發(fā)燒友網(wǎng)站提供《C2000系統(tǒng)配置應(yīng)用說明.pdf》資料免費下載
    發(fā)表于 09-14 10:12 ?0次下載
    <b class='flag-5'>C2000</b>系統(tǒng)配置應(yīng)用說明

    C2000 MCU JTAG 連接調(diào)試

    電子發(fā)燒友網(wǎng)站提供《C2000 MCU JTAG 連接調(diào)試.pdf》資料免費下載
    發(fā)表于 09-09 09:30 ?0次下載
    <b class='flag-5'>C2000</b> MCU JTAG 連接調(diào)試

    C2000?硬件內(nèi)置自檢

    電子發(fā)燒友網(wǎng)站提供《C2000?硬件內(nèi)置自檢.pdf》資料免費下載
    發(fā)表于 09-03 11:33 ?0次下載
    <b class='flag-5'>C2000</b>?硬件內(nèi)置自檢

    C2000?器件中的CRC引擎

    電子發(fā)燒友網(wǎng)站提供《C2000?器件中的CRC引擎.pdf》資料免費下載
    發(fā)表于 08-30 10:38 ?1次下載
    <b class='flag-5'>C2000</b>?器件中的CRC引擎

    C2000 DCSM ROM代碼片段/ROP漏洞

    電子發(fā)燒友網(wǎng)站提供《C2000 DCSM ROM代碼片段/ROP漏洞.pdf》資料免費下載
    發(fā)表于 08-28 09:39 ?0次下載
    <b class='flag-5'>C2000</b> DCSM ROM代碼片段/ROP漏洞

    使用C2000 I2C模塊連接EEPROM

    電子發(fā)燒友網(wǎng)站提供《使用C2000 I2C模塊連接EEPROM.pdf》資料免費下載
    發(fā)表于 08-27 09:53 ?0次下載
    使用<b class='flag-5'>C2000</b> I2<b class='flag-5'>C</b>模塊連接EEPROM
    主站蜘蛛池模板: www.你懂的| 美女又黄又免费 | 国产亚洲综合一区 柠檬导航 | 黄色一级毛片在线观看 | 日日干夜夜草 | 日本免费黄色录像 | 狠狠操天天 | 看视频免费| 日本韩国三级视频 | 亚洲经典乱码在线播 | 国模私拍福利一区二区 | 手机看片1024免费视频 | 国产福利2021最新在线观看 | 欧美成人影院免费观 | 午夜视频在线观看免费观看在线观看 | 岛国午夜 | 四虎tv在线观看884aa | 在线天堂bt种子 | 女人夜夜春 | 国产精品久久国产三级国不卡顿 | 天天插天天射天天干 | 国产一级特黄aa大片免费 | 亚洲国产成人精品久久 | 欧美伦理一区 | 在线播放一区二区三区 | 欧美性生活一级 | 九九热国产在线 | 免费午夜在线视频 | 成人a在线观看 | 欧美黄色片免费观看 | 精品一区二区三区免费毛片爱 | a级毛片网站 | 视频在线h | 福利在线看片 | 黄页网站在线播放 | 国产ccc | 欧美视频精品一区二区三区 | 狠狠的日视频 | 香蕉成人999视频 | 网色| 亚洲日本三级 |