日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 單片機 > 單片機
[導(dǎo)讀]我在使用 STM8L052R8 做的一個項目,這顆芯片F(xiàn)LASH應(yīng)該是 64KB,IAR查看 lnkstm8l052r8.icf 文件,有如下定義:define region NearFuncCode = [from 0x8000 to 0xFFFF];define region FarFuncCode = [from 0x8000 to

我在使用 STM8L052R8 做的一個項目,這顆芯片F(xiàn)LASH應(yīng)該是 64KB,IAR查看 lnkstm8l052r8.icf 文件,有如下定義:

define region NearFuncCode = [from 0x8000 to 0xFFFF];

define region FarFuncCode = [from 0x8000 to 0xFFFF]

| [from 0x10000 to 0x17FFF];

define region HugeFuncCode = [from 0x8000 to 0x17FFF];

但是,我在程序中,如果編譯代碼超過 32KB,則編譯出錯,提示:

Error[Lp011]: section placement failed

unable to allocate space for sections/blocks with a total estimated

minimum size of 0x96ee bytes in <[0x008000-0x00ffff]>

(total uncommitted space 0x7f80).

如果調(diào)高優(yōu)化級別,代碼量控制在32KB以內(nèi),則可編譯通過。

在項目設(shè)置, Optione->Target->Device 選擇 stm8l152r8; stm8l152.h 中,選擇 #define STM8L15X_HD

不知道還有什么可能導(dǎo)致此錯誤? 還是會不會我買到的芯片有問題呢?

解決辦法:更改項目配置,General Options->Target中的Code改為Mediue或者Large

Code的small是64K byte尋址范圍,medium是16M byte范圍,但函數(shù)不允許跨越64K byte邊界, large模式下是16M byte尋址范圍,函數(shù)不存在跨界限制,隨便放

Date的small是256 byte尋址范圍,medium是64K byte范圍,large是16M范圍。


本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉