完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
您好,我们项目的XC8编译器的评估似乎还是有些麻烦。目前我有以下问题:编译器XC8 v1.38VersionPRO(还剩13天)(还设置了)控制器PIC18F26K22在激活代码段之后,要么出现此错误消息,要么出现此错误消息,即使有足够的RAM和程序内存可用(参见附图)。我想把在激活发生错误的代码之前生成的映射文件附加到这个线程上,但是我得到没有权限的消息。也可以交换。我们的代码已经成功地使用Microsoft编译器for Windows,gcc for Linux,Keil编译器for ARM,以及几个带有C18的PIC控制器进行了翻译。我们的代码肯定不完美,但是上面所有的编译器都只能使用f我希望能得到一些帮助。谢谢你的帮助。
|
|
相关推荐
2个回答
|
|
第一个错误是:把一个“太复杂”的表达式分成2个可能会有帮助。如果没有代码,这很难决定。第二个:也可以是“逻辑部分”的末尾(dg)。堆栈“-区域-即使总内存是可以的。检查有关RAM内存段和分段的设置。并且:与其他编译器相比,这很好,但不够:Windoofs、Linux和“大”控制器有丰富的资源。即使你真的使用你的PIC的整个RAM,这在大多数武器上是可以忽略的(除了M0/M0+之外)。与C18相比效果更好,但与XC8相比,编程模型仍有很大的差异。
|
|
|
|
它也解决了我的问题。切换到混合堆栈是可以的。但是,我不能再观察局部变量,因为它们存储在“sw堆栈”的某个地方,调试器不知道在哪里。因此,这似乎是一个半解决方案。究竟有没有办法以适当的方式解决这个问题,并使用编译的堆栈?是什么引起了这个问题?更新(问题解决):看来我已经解决了一个解决方案。编译后的一个对象文件中似乎包含太多的ram数据和链接器,试图将所有内容放入一个内存段,就像在一个.c文件中一样。我分别使用fit to data部分的每个数组,但是将它们放在一起(因为它们在一个.c文件中)不适合,这就是问题。因为我在一些数组中添加了“x”段(“Novivyn”)(其中n是一些计数器或字母),代码编译和正确构建。我想我们应该明确地告诉编译器,我们需要这些数组到不同的内存部分。六羟甲基三聚氰胺六甲醚。。。我非常确信编译器应该处理这个问题,并且单独考虑数据块,而不是在每个.c文件中组合数据。第二部分(“BigBSS”)。这覆盖了整个数据存储区域。OR:将大数据数组放入单独的.c文件中,这并非总是一个好的解决方案,但是可以工作。UPDATE:看起来它是一个临时解决方案,因为向代码中添加了更多的内容问题又出现了。“C:Program Files(x86)Micro.xc8v1.42source.Umul16.c:5”3:错误:(4)XC8遇到内部错误,必须退出;请与Microchip支持部门联系,详细说明“这个文件总是引发的问题。有什么想法吗?”
|
|
|
|
只有小组成员才能发言,加入小组>>
5242 浏览 9 评论
2031 浏览 8 评论
1955 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3207 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2256 浏览 5 评论
778浏览 1评论
669浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
597浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
679浏览 0评论
577浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-24 05:04 , Processed in 1.310892 second(s), Total 78, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号