完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
你好,
在STM8S003F3U上根据数据表有1024(总ram) - 513(堆栈)= 510字节用于用户应用:零页面中256字节和Ram部分中的(510-256)= 254。 如果使用短堆栈编译选项,所有数据都会在零页面空间中自动加载,如果我使用超过256个字节,则会出错。 如果我使用长堆栈编译数据自动映射在上部页面:Ram页面,如果使用超过254,我有一个错误(正常,因为有结束堆栈重叠) 我没找到任何stm8的cosmic编译器用户指南。如果我尝试使用pragma强制链接器在不同的空间中设置数据,则错误是:pragma错位... 怎么可能使用混合数据映射零页面和ram页面? 非常感谢 regars 约翰 以上来自于谷歌翻译 以下为原文 Hello, on STM8S003F3U according to datasheet there is 1024(total ram) - 513(stack) = 510 bytes for user application: 256 byte in the zero page and (510-256)= 254 in Ram section. If use the short stack compilation option all data are automaticaly maped in the zero page space and i have an error if i use more than 256 bytes. if i use the long stack compilation data are mapped automaticaly in the upper page: the Ram page and i have an error if use more than 254 (normal because there is the end stack overlap) I did'nt find any cosmic compiler user guide for stm8. If i try to use pragma to force linker to set data in different space the error is : pragma misplaced ... How is it possible to use mixed data mapping zero page and ram page ??? thank's a lot regars johan |
|
相关推荐
1个回答
|
|
你好,
用户手册与编译器一起安装在/ doc子目录中。 为了将变量放在所需的内存中,首先选择将决定所有变量默认位置的内存模型,然后使用@tiny和@near关键字覆盖所选变量的标准选项: char var1; //将进入页零或16位寻址,具体取决于内存模型 @tiny char var2; //无论内存模型如何,都将进入第0页 @near char var3; //无论内存模型如何,都将进行16位寻址 问候, 卢卡(宇宙) 以上来自于谷歌翻译 以下为原文 Hello, the user manual is installed together with the compiler, in the /doc subdirectory. In order to put your variables in the memory you want, first choose the memory model that will decide where all the variables go by default, and then override the standard choice for selected variables by using the @tiny and @near keywords: char var1; // will go in page zero or 16-bit addressing, depending on the memory model @tiny char var2; // will go in page zero regardless of the memory model @near char var3; // will go in 16 bit addressing regardless of the memory model Regards, Luca (Cosmic) |
|
|
|
只有小组成员才能发言,加入小组>>
请教:在使用UDE STK时,单片机使用SPC560D30L1,在配置文件怎么设置或选择?里面只有SPC560D40的选项
2599 浏览 1 评论
3200 浏览 1 评论
请问是否有通过UART连接的两个微处理器之间实现双向值交换的方法?
1774 浏览 1 评论
3597 浏览 6 评论
5978 浏览 21 评论
928浏览 4评论
1305浏览 4评论
在Linux上安装Atollic TRUEStudio的步骤有哪些呢?
573浏览 3评论
使用DMA激活某些外设会以导致外设无法工作的方式生成代码是怎么回事
1292浏览 3评论
1346浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-14 19:13 , Processed in 1.105490 second(s), Total 79, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号