STM32Stamp项目DEBUG后代码区域超界

编译错误信息:

“C:\PK\Solutions\STM32Stamp\dotNetMF.proj”(build 目标) (1) ->
“C:\PK\Solutions\STM32Stamp\TinyCLR\TinyCLR.proj”(Build 目标) (2) ->
(BuildAXF 目标) ->
  EXEC : error : L6220E: Load region LR_FLASH size (290020 bytes) exceeds limit
 (262144 bytes). Region contains 407 bytes of padding and 0 bytes of veneers (t
otal 407 bytes of linker generated content). [C:\PK\Solutions\STM32Stamp\TinyCL
R\TinyCLR.proj]
  EXEC : error : L6221E: Load region LR_FLASH with Load range [0x08000000,0x080
46ce4) overlaps with Load region LR_CONFIG with Load range [0x08040000,0x080409
0c). [C:\PK\Solutions\STM32Stamp\TinyCLR\TinyCLR.proj]
  EXEC : error : L6221E: Execution region ER_FLASH with Execution range [0x0800
0000,0x08046980) overlaps with Execution region ER_CONFIG with Execution range
[0x08040000,0x0804090c). [C:\PK\Solutions\STM32Stamp\TinyCLR\TinyCLR.proj]
  C:\PK\tools\targets\Microsoft.SPOT.System.MDK.targets(307,5): error MSB3073:
命令“"C:\Keil\ARM\bin40\armlink.exe"  --keep *(.init_array) --no_keep_init_arra
ys
 --feedback C:\PK\..\MFBin\THUMB2\MDK4.54\le\FLASH\debug\STM32Stamp\bin\tinyclr
_STM32Stamp_FLASH_debug_MDK4.54.feedback  --debug --remove --unmangled --info s
izes,totals,veneers,unused,libraries --map  --xref --symbols --callgraph --user
libpath C:\PK\..\MFBin\THUMB2\MDK4.54\le\FLASH\debug\STM32Stamp\lib --userlibpa
th C:\PK\..\MFBin\THUMB2\MDK4.54\le\ANY_MEDIA\debug\lib --libpath "C:\Keil\ARM\
RV31\LIB"  --entry EntryPoint  --symdefs C:\PK\..\MFBin\THUMB2\MDK4.54\le\FLASH
\debug\STM32Stamp\bin\tinyclr.symdefs --list C:\PK\..\MFBin\THUMB2\MDK4.54\le\F
LASH\debug\STM32Stamp\bin\tinyclr.map --output C:\PK\..\MFBin\THUMB2\MDK4.54\le
\FLASH\debug\STM32Stamp\bin\tinyclr.axf --scatter C:\PK\..\MFBin\THUMB2\MDK4.54
\le\FLASH\debug\STM32Stamp\bin\tinyclr_scatterfile.txt C:\PK\..\MFBin\THUMB2\MD
K4.54\le\FLASH\debug\STM32Stamp\obj\Solutions\STM32Stamp\TinyCLR\tinyclr_dat.ob
j C:\PK\..\MFBin\THUMB2\MDK4.54\le\FLASH\debug\STM32Stamp\obj\Solutions\STM32St
amp\TinyCLR\allocator.obj C:\PK\..\MFBin\THUMB2\MDK4.54\le\FLASH\debug\STM32Sta
mp\obj\Solutions\STM32Stamp\TinyCLR\tinyclr.obj C:\PK\..\MFBin\THUMB2\MDK4.54\l
e\FLASH\debug\STM32Stamp\lib\InteropAssembliesTable.lib LargeBuffer_hal_stubs.l
ib virtualkey_hal_stubs.lib Crypto_stub.lib GlobalLock_hal_Cortex.lib TinyHal_C
ortex.lib cpu_prestackinit_stubs.lib STM32_bootstrap.lib batterycharger_hal_stu
bs.lib batterymeasurement_hal_stubs.lib STM32_GPIO.lib STM32_Power.lib STM32_ti
me.lib cpu_watchdog_stubs.lib system_initialization_hal.lib Watchdog_pal_stubs.
lib asyncproccall_pal.lib blockstorage_pal.lib Buttons_pal.lib config_pal.lib h
eap_pal.lib piezo_pal_stubs.lib SimpleHeap_stubs.lib SimpleHeap_config_stubs.li
b tinycrt_pal.lib fs_pal_stubs.lib Ink_pal_stubs.lib Gesture_pal_stubs.lib pale
vent_pal.lib Time_pal.lib FS_Config_stubs.lib TimeService_pal_stubs.lib backlig
ht_hal_stubs.lib lcd_hal_stubs.lib cpu_cache_stubs.lib cpu_LCD_stubs.lib STM32_
Flash.lib STM32_blconfig_STM32Stamp.lib BlockStorage_AddDevices_STM32Stamp.lib
IO_Init_STM32Stamp.lib STM32_SPI.lib STM32_I2C.lib STM32_USART.lib STM32_USB.li
b STM32_IntC.lib STM32_PWM.lib STM32_Analog.lib STM32_DA.lib COM_pal.lib Debugg
erPort_SSL_config_stubs.lib events_pal.lib sockets_pal_stubs.lib usart_pal.lib
usb_pal.lib i2c_pal.lib usb_pal_config_stub.lib MFUpdate_PAL_stub.lib ssl_pal_s
tubs.lib C:\PK\..\MFBin\THUMB2\MDK4.54\le\FLASH\debug\STM32Stamp\lib\tmp_tinycl
r.lib”已退出,代码为 1。 [C:\PK\Solutions\STM32Stamp\TinyCLR\TinyCLR.proj]

    11 个警告
    4 个错误

从红字处可以得知是因为TinyCLR项目的散列文件配置代码块的时候太小了,因此打开:C:\PK\Solutions\STM32Stamp\TinyCLR\scatterfile_tinyclr_mdk.xml

    <If Name="TARGETLOCATION" In="FLASH">
        <Set Name="Config_BaseAddress"  Value="0x08060000"/>  <!--Release 模式 0x08040000 -->
        <Set Name="Config_Size"         Value="0x00002000"/>
        <Set Name="Code_BaseAddress"    Value="0x08000000"/>
        <Set Name="Code_Size"           Value="%Config_BaseAddress - Code_BaseAddress%" />
        <Set Name="Valid"               Value="true"/>
    </If>

但是在Debug模式下编译代码,在烧录进机子里的时候估计会出错(没有试过),为全安起见再重新改回 0x08040000 .

时间: 2024-11-06 10:22:37

STM32Stamp项目DEBUG后代码区域超界的相关文章

做web项目时对代码改动后浏览器端不生效的应对方法(持续更新)

做web项目时,常常会遇到改动了代码,但浏览器端没有生效,原因是多种多样的,我会依据我遇到的情况逐步更新解决的方法 1.执行的时候採用debug模式,普通情况下使用项目部署button右边那个button下的tomcat7中的run即可,假设使用的是serves中的run serves,这样的情况貌似不会自己主动编译 2.点击project菜单下的clean选项,在打开的窗体中选择你使用的项目,ok,这样会删除tomcat容器中关于该项目的一些信息,然后又一次部署,执行 3.删除电脑中tomca

做web项目时对代码修改后浏览器端不生效的应对方法(持续更新)

做web项目时,经常会遇到修改了代码,但浏览器端没有生效,原因是多种多样的,我会根据我遇到的情况逐步更新解决办法 1.运行的时候采用debug模式,一般情况下使用项目部署按钮右边那个按钮下的tomcat7中的run就行,如果使用的是serves中的run serves,这种情况貌似不会自动编译 2.点击project菜单下的clean选项,在打开的窗口中选择你使用的项目,ok,这样会删除tomcat容器中关于该项目的一些信息,然后重新部署,运行 3.删除电脑中tomcat文件夹,重新解压,然后在

如何在github上fork一个项目来贡献代码以及同步原作者的修改

如何在github上fork一个项目来贡献代码以及同步原作者的修改 作为一个IT人,通过github进行学习是最快的成长手段.我们可以浏览别人的优秀代码.但只看不动手还是成长得很慢,因此为别人贡献代码才是明智之举.比如我们看下片看,许多大片都是由字幕组免费翻译压制的.为什么他们要这样做呢?因为他们都是聪明的大学生,为了提高听力水平,提高笔译水平才这样干的!中国人都是非常实务的!因此贡献代码,参与开源项目都是有益无害的!好了,让我们开始吧! 如何贡献自己的力量 首先你总得有自己的github帐号吧

[email&#160;protected]中协作开发、复制项目、贡献代码

git@osc可以让我们托管代码,进行版本控制,同svn等类似平台一样,可以帮助我们实现团队协作开发,无论你是否是项目团队成员.本教程完全适用GitHub 1. 概念 协作开发:顾名思义,就是由多个项目成员共同开发一个项目. fork:GitHub提供非常方便功能,可以一键将其他人的项目复制到自己账号下. pull request:非项目成员贡献代码一种方式. 2. [email protected]如何协作开发 由项目创建者进入指定项目,在菜单栏上点击"设置",会看到如下界面 然后点

[BI项目记]-搭建代码管理环境之服务端

 上一篇介绍如何搭建环境进行文档版本的管理,这篇主要介绍搭建环境进行代码版本的管理. 即使是BI项目也要进行代码版本管理.代码版本管理的工具有很多,VSS, SVN等都是当下大家经常提起的,这里主要介绍TFS Express. 在像我们这一代屌丝程序员中,TFS一直被认为是很复杂很臃肿的,还记得有人写过类似笔记,文档中一步一步都需要装什么,基本上,某一步失败了,那么就从安装操作系统开始重新安装就可以了.不过事情是在变的,不得不说后续的TFS安装体验提升了不少,而且也有了相对免费的版本(五用户

[BI项目记]-搭建代码管理环境之签入代码

 此篇主要介绍如何基于TFS环境创建进行BI项目最简单的代码签入和签出工作. 首先介绍BI项目中的SSAS项目.SSAS项目主要包含Cube多维数据集和数据挖掘模型,是在微软BI产品体系中重要的一个组件.这里使用微软官方SQL Server的示例项目. 打开项目,项目的文件结构如下. 第一次将项目加入到代码管理中,可以直接将其拖拽到Source Control Explorer中. 接下来会弹出对话框提示要被加入到版本管理的文件,部分文件会被列入到Excluded下,主要是编译文件等,比如c

tomcat项目更新后js效果没有作用

项目更新后有一小段js一直没有起作用,最后把tomcat缓存清理后并重启tomcat还是没有效果.最终把浏览器缓存清除一下,问题解决了. 虽然问题解决了,但是无法确认tomcat的缓存和该段代码无效是否有效. 问题的教训是:将浏览器设置为"退出时清除历史记录",然后工具---internet选项----浏览历史记录(设置)"每次访问网页时". 截图为: tomcat项目更新后js效果没有作用,布布扣,bubuko.com

ssh项目搭建后的简化

SSH项目搭建后的简化 上次说完ssh框架的搭建,这个框架本身没什么问题,但可以通过使用spring注解来使代码更加简洁.提高阅读性. 一.在原来的框架上简化了以下几点: 1. 原来的属性set注入改为注解 2. 原来的Connection(连接数据库)包改为jdbc.properties文件配置 3.由于加入hibernate之后我们不需要创建数据库,但是向数据库里插入数据还是得自己写,以下就是插入语句: insert into news(title,content,begintime,use

设定MyEclipse编辑代码区域文字的大小及非关键字的字体、字形和颜色

设定MyEclipse编辑代码区域文字的大小及非关键字的字体.字形和颜色: Window-->Preferences-->点击General节点-->点击Appearance节点-->Colorsand Font-->点击Basic节点-->选中TextFont-->点击Edit(有的是Change)(或直接双击TextFont)-->设置完毕后点击"确定"-->Apply-->OK操作完成. 实践证明将字体设置为Courie