打印

求助:STM8的 “32K” 门槛如何跨过?

[复制链接]
5141|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ygoss|  楼主 | 2010-3-20 12:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
STM8, TE, UG, BUG, rc
本帖最后由 ygoss 于 2010-3-20 14:24 编辑

我用的编译器是COSMIC。程序一旦超过32K就会提示以下错误。之前有网友遇到过此问题,但贴子总是不了了之,不知有没有解决。我将所有的函数都加了@far,依然会出错。
怀疑是LINK程序问题,但又不知如何设置。


Running Linker
clnk -l"C:\Program Files\COSMIC\CXSTM8\Lib"  -o Debug\stm8.sm8 -mDebug\stm8.map Debug\stm8.lkf
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
#error clnk Debug\stm8.lkf:84 Debug\stm8_interrupt_vector.o: section 0 expected (.text:0000)
The command: "clnk -l"C:\Program Files\COSMIC\CXSTM8\Lib"  -o Debug\stm8.sm8 -mDebug\stm8.map Debug\stm8.lkf " has failed, the returned value is: 1
exit code=1.

stm8.elf - 28 error(s), 0 warning(s)
沙发
zwll| | 2010-3-20 15:20 | 只看该作者
我也感觉像LINK程序问题

使用特权

评论回复
板凳
yybj| | 2010-3-20 20:58 | 只看该作者
不可能是ST的问题,就只能怀疑编译器了

使用特权

评论回复
地板
有意思| | 2010-3-21 10:35 | 只看该作者
没有问题,我的程序都快100K楼
要选择long stack+modsl

使用特权

评论回复
5
txcy| | 2010-3-21 19:33 | 只看该作者
也就是说是模式配置的问题?

使用特权

评论回复
6
ygoss|  楼主 | 2010-3-21 20:32 | 只看该作者
我用的也是“long stack+modsl”。我的情况与下面这个帖子所遇到的问题是一样的

https://bbs.21ic.com/viewthread.p ... mp;highlight=cosmic

使用特权

评论回复
7
有意思| | 2010-3-25 00:59 | 只看该作者
it.h中的 //void _stext(void); /* RESET startup routine */
屏蔽掉,
还要保证所有的const变量在32K范围内,我是强制把const放在16K之类

使用特权

评论回复
8
woldcow| | 2012-3-28 15:47 | 只看该作者
我与楼主同样的问题,选择long stack+modsl也不行,求解

使用特权

评论回复
9
lyn3210| | 2012-3-28 16:29 | 只看该作者
需用附费的开发软件。

使用特权

评论回复
10
wenzj12345| | 2012-3-29 08:26 | 只看该作者
未见过···

使用特权

评论回复
11
yinyangdianzi| | 2012-3-29 09:20 | 只看该作者
有人引用这个BUG来使用对芯片加密

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

4

帖子

1

粉丝