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

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

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

3天內不再提示

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

電子設計 ? 來源:電子設計 ? 作者:電子設計 ? 2022-01-19 15:15 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

作者:TI FAE – Johnson Chen

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

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

例如:int temp1 = 0x00;

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

例如:int temp1;

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

例如: temp1= 0x00;

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

此方法有以下幾個特點:

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

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

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

首先我們要了解C2000上電時的流程,下圖為C2000 上電時從RAM或者FLASH 引導的流程圖。

對于C2000 芯片來說程序的執(zhí)行入口是在CMD 文件里面“codestart”這個段定義的,而在”XXXXXX_CodeStartBranch.asm”里面通過“.sect "codestart" ”語句將相應的跳轉指令分配到了這個段。

通常“XXXXXX_CodeStartBranch.asm”文件內容如下:

pYYBAGGKTZqARho2AADHH99Wdoc656.png

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

因此我們需要在“LB_c_int00” 語句之前實現RAM section值的初始化。

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

下面為具體實現代碼:

MOV ACC, #00H ; initialed value

MOVL XAR5, #400H ;Dest address

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

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

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

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

poYBAGGKTZyAWGOdAAEwkRVQHPk713.png

注意事項:

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

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

審核編輯:金巧

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

    關注

    0

    文章

    341

    瀏覽量

    10297
  • 函數
    +關注

    關注

    3

    文章

    4379

    瀏覽量

    64758
  • 編譯器
    +關注

    關注

    1

    文章

    1661

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    C2000微控制器用戶培訓手冊

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

    C2000 Position Manager PTO API參考指南

    電子發(fā)燒友網站提供《C2000 Position Manager PTO API參考指南.pdf》資料免費下載
    發(fā)表于 11-26 14:20 ?0次下載
    <b class='flag-5'>C2000</b> Position Manager PTO API參考指南

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

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

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

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

    C2000實時控制外設參考指南

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

    C2000實時控制MCU外設

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

    LED照明和DC-DC轉換控制集成在C2000微控制器上

    電子發(fā)燒友網站提供《LED照明和DC-DC轉換控制集成在C2000微控制器上.pdf》資料免費下載
    發(fā)表于 10-12 11:07 ?0次下載
    LED照明和DC-DC轉換控制集成在<b class='flag-5'>一</b><b class='flag-5'>個</b><b class='flag-5'>C2000</b>微控制器上

    C2000? MISRA-C策略

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

    C2000系統配置應用說明

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

    C2000 MCU JTAG 連接調試

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

    C2000?硬件內置自檢

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

    C2000?器件中的CRC引擎

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

    C2000 DCSM ROM代碼片段/ROP漏洞

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

    使用C2000 I2C模塊連接EEPROM

    電子發(fā)燒友網站提供《使用C2000 I2C模塊連接EEPROM.pdf》資料免費下載
    發(fā)表于 08-27 09:53 ?1次下載
    使用<b class='flag-5'>C2000</b> I2<b class='flag-5'>C</b>模塊連接EEPROM
    主站蜘蛛池模板: 久久99热久久精品 | 深爱激情小说网 | 色多多高清在线观看视频www | 国产性猛交xx乱 | 色宅男午夜电影在线观看 | 午夜视频在线观看www中文 | 久久夜色精品 | 欧美一级高清片欧美国产欧美 | 全免费一级毛片在线播放 | 天天摸夜夜摸夜夜狠狠摸 | 性欧美护士18xxxxhd视频 | 日本小视频免费 | 男女性高爱潮免费的国产 | 女人的天堂网站 | 久久久噜久噜久久gif动图 | 永久精品免费影院在线观看网站 | 毛片小视频 | 播放毛片 | 亚洲综合丁香 | 亚洲女同一区二区 | 99久久综合狠狠综合久久男同 | 久久噜国产精品拍拍拍拍 | 啪啪午夜免费 | 毛片网页 | 性欧美大胆高清视频 | 手机看片1024手机在线观看 | 黄色亚洲| 欧美18xxoovideos| 男人的天堂一区二区视频在线观看 | 天天干天天草天天 | 日本19xxxxxxxxx69| 欧美性淫爽www视频播放 | 四虎永久在线观看视频精品 | 欧美色图日韩 | 成 人 在 线 免费 8888 www | 久久国产成人午夜aⅴ影院 久久国产福利 | 国产午夜精品久久久久 | 两性色午夜视频自由成熟的性 | 在线观看午夜 | 欧美色人阁 | 国产精品福利午夜一级毛片 |