0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用CS+ CACX编译RL78系列MCU出现flash空置0XFF错误问题

瑞萨嵌入式小百科 来源:未知 2023-08-16 12:10 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

客户使用IDE CS+ CACX编译瑞萨RL78系列MCU R5F1027A,出现报错信息,code flash无法分配。而实际使用的flash 约10K还远不到16K。为什么R5F1027A(flash空间16K)使用的code flash不到16K就出现添加新代码后编译,提示无法分配的错误?

57c5b706-3bea-11ee-9e74-dac502259ad0.png

分析

1、经过排查没有对IDE编译环境CS+ CACX做特殊的设置,在项目代码比较少的情况下,编译也正常。

2、针对提示的错误信息,尝试屏蔽不同的软件函数,发现需要减少较多的软件代码,编译才恢复正常。

3、多次尝试后发现flash空间在超过8K左右后,会出现编译错误。

4、查看项目的HEX文件。发现flash地址从0x0C57,到0x1FFF的空间都是填充的FF,也就是这段flash空间没有使用到。

580fc602-3bea-11ee-9e74-dac502259ad0.png

5、查看map文件,发现和HEX文件相吻合,@@CODEL代码flash段是从0x20C6开始分配的,也就是代码段分配在16K空间的后面8K。这样前面的flash空间有13A9字节,将近5K没用上。

5888f126-3bea-11ee-9e74-dac502259ad0.png58c73a76-3bea-11ee-9e74-dac502259ad0.png

6、分析确认到原因后,要想办法解决,多次尝试无果,再分析map文件。发现分配的代码段@@CODEL,从0x20C6开始是跟@@CNST 这个常量的段是相邻的。

7、想办法尝试改变@@CNST的地址分配,看看@@CNST的地址改变,是否会影响@@ CODEL代码段的地址分配。

8、把@@CNST这个常量的段,通过添加DR文件,设置到后面地址0x3C00后,发现编译正常了。

58eb9934-3bea-11ee-9e74-dac502259ad0.png

结论

查看生成的HEX文件,发现前面的flash空间0x0C57也用上了,问题得到解决。

通过和同事交流,以及多番查阅IDE的HELP文档,分析了解各个代码段@@XXXX的含义,解决了客户端遇到的问题。

58fa97c2-3bea-11ee-9e74-dac502259ad0.png

59871364-3bea-11ee-9e74-dac502259ad0.jpg


原文标题:使用CS+ CACX编译RL78系列MCU出现flash空置0XFF错误问题

文章出处:【微信公众号:瑞萨MCU小百科】欢迎添加关注!文章转载请注明出处。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • mcu
    mcu
    +关注

    关注

    147

    文章

    18604

    浏览量

    386855
  • 瑞萨
    +关注

    关注

    36

    文章

    22429

    浏览量

    89740
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    把qspi0配置成了普通的fifo模式,读什么都返回0xff,这是怎么回事?

    我把qspi0配置成了普通的fifo模式,不是xip模式,但是现在读什么都返回0xff,读id也返回0xff,也不是没有数据,RXDATA寄存器里是有数据的,但是就是0xff,这是怎么
    发表于 11-06 06:57

    下载模式的切换之后,会出现编译错误的解决办法

    一、队伍介绍 本篇为蜂鸟E203系列分享第一篇,本篇介绍的内容是解决下载模式的切换之后出现编译错误问题。 二、问题提出 在进行下载模式切换之后,进行编译,提示如下图所示的
    发表于 10-30 08:11

    瑞萨电子RA4L1的表计应用解析(下)

    RA4L1就是电表分离架构中的主控MCURL78/I1C和RA2A2就是电表集成架构中的SoC。
    的头像 发表于 05-13 10:50 2498次阅读
    瑞萨电子RA4L1的表计应用解析(下)

    MCU片上Flash

        MCU片上Flash是微控制器内部集成的非易失性存储器,主要用于存储程序代码、常量数据及系统配置信息。其核心特性与功能如下: 一、定义与类型‌ 片上Flash采用浮栅晶体管技术,具备断电数据
    的头像 发表于 05-06 14:26 859次阅读

    AD7771 SPI读出内部寄存器全是0xFF的原因?

    的全是0xFF, Dout0~3,DCLK,DRDY也没有任何输出. 这是什么原因? 另外,START引脚在AD7771数据手册是:If not in use, tie this pin to DGND
    发表于 04-25 06:55

    如何在VS Code中使用瑞萨RL78系列MCU

    RL78家族系列MCU,以其业界领先的低功耗和各种内置的高性能外围功能,极大地提高了电源效率,降低了BOM成本,实现了设备的小型化。
    的头像 发表于 04-23 13:49 3842次阅读
    如何在VS Code中使用瑞萨<b class='flag-5'>RL78</b><b class='flag-5'>系列</b><b class='flag-5'>MCU</b>

    通过Boot swap实现瑞萨RL78/F24 MCU固件升级

    本文主要说明如何使用已有的程序更新flash中的固件。使用这种方法代码闪存分为两个区域:执行区域和临时区域。瑞萨flash驱动程序RL78 RFD Type02用于对flash进行重新
    的头像 发表于 02-26 09:25 2175次阅读
    通过Boot swap实现瑞萨<b class='flag-5'>RL78</b>/F24 <b class='flag-5'>MCU</b>固件升级

    ADS1115在模拟信号输入为0时,数字量输出不为0,而是0XFF,255,为什么?

    ADS1115在模拟信号输入为0时,数字量输出不为0,而是0XFF,255
    发表于 02-12 07:54

    芯海科技推出全新CS8M321与CS8M326系列经济型MCU

    近期,芯海科技在MCU领域迈出了重要的一步,全新推出了CS8M321(简称M321)与CS8M326(简称M326)系列ADC模块经济型MCU
    的头像 发表于 02-06 17:49 1654次阅读

    ADS1115第八位读取值一直都是0xFF,是什么原因?

    result; } else { return 0; } } else { return 0; } } 以上是核心部分,高八位读取是正确的,说明配置应该没问题,可是第八位一直都是0xFF,希望找找原因,谢谢
    发表于 02-05 09:54

    芯海科技CS8M321/326系列经济型MCU全新上市

    近期,芯海科技(股票代码:688595)全新推出了CS8M321(简称M321)、CS8M326(简称M326)系列ADC模块经济型MCU。该系列
    的头像 发表于 01-10 18:05 1095次阅读
    芯海科技<b class='flag-5'>CS</b>8M321/326<b class='flag-5'>系列</b>经济型<b class='flag-5'>MCU</b>全新上市

    ads1110读取数据,为什么读出都是0xff啊?

    下面是波形图,黄线是sda,蓝线是sck,各位看看有啥问题,为什么读出都是0xff啊?
    发表于 12-24 07:36

    ADS1299读寄存器返回0xff,测了下VCAP1电压不到1.1V,是器件没有正常工作吗?

    尝试读寄存器,返回0xff,测了下VCAP1电压不到1.1V,是器件没有正常工作吗,感谢各位前辈给出意见
    发表于 12-16 08:30

    ADS1299初始化完毕后直接读ID结果读出来的值全是0x80或0xff0xaa这样数值,为什么?

    这是我的初始化代码,初始化完毕后直接读ID结果读出来的值全是0x80或0xff0xaa这样数值,实际1299的ID是0x3e,帮忙看一下,有什么问题?? void
    发表于 12-16 07:17

    SPI驱动ADS7953,配置成手动模式收的的数据全是0xff,怎么解决?

    没有问题 观看示波器MISO有数据的,但是SPI收的数据全是0xff 请专家看看我的SPI配置是否正确,谢谢
    发表于 12-09 07:41