【经验】RL78实现OTA时,CS+中使用指针读取数据为什么不正确?
嵌入式系统开发时,OTA升级现在已经成为必备的设计功能,无论是消费电子,工业电子还是汽车电子,OTA功能可以非常简单快捷的进行产品的功能维护,一定程度上节约了售后服务的成本,提升了维护的效率。
而在进行OTA开发时,一般使用专用的库进行数据的写入和校验,但一般校验仅校验的是标志位,如果想要校验写入的数据是否正确,很多工程师会采用回读的方式将数据读出来,然后通过比较判断数据的正确性和有效性。
我们以瑞萨电子的16bit MCU RL78为例,这是一款瑞萨电子自有内核,集成度高,超低功耗,性价比优良的一系列MCU,这个MCU本身是禁止读操作的,在实现OTA的时候,需要使用专用的flash program库文件FSL来实现code flash的擦除,写入和校验。
那么,如果要对写入的数据进行回读校验,该如何操作呢?前面有说到RL78是禁止读操作。
其实是这样的,RL78的禁止读操作是无法通过仿真器或编程器来进行的回读或upload操作,这个命令是在program里是禁止的。
而我们在编写MCU程序的时候,则是通过内部代码可以以指针的方式,指向flash地址来进行数据读取核对的,这个其实也是OTA功能实现的一部分。
但是使用了指针读取,读回来的数据却是不对的,具体是什么情况呢?
首先通过CS+的memory窗口查看写入的数据,如下图:
图一,实际写入flash的数据
而实际读出来的数据却是如下图:
图二,指针回读数据
通过以上截图可以得知,写入的数据和读出的数据不一致,无法对比验证通过。
通过确认,因为此次回读的数据地址超过了FFFF(64k)的区间限制,在定义使用指针寻址属于远端寻址,需要在前面加上关键字far,如下操作:
__far unsigned char *fsl_point;
fsl_point = (__far unsigned char*)0x20c00;
tmbuf[nn]= *fsl_point;
按照如上操作,重新进行读取数据则是正确的。
- |
- +1 赞 0
- 收藏
- 评论 0
本文由落叶萧萧提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。
相关推荐
【经验】16bit MCU RL78仿真调试连接时Incorrect ID Code是什么状况?如何解决?
为了保护开发成果,开发人员一般在设计嵌入式软件时,会利用对应的嵌入式MCU并结合其工具链来实现加密,使得产品不被轻易破解。本文介绍瑞萨16bit MCU RL78仿真调试连接时Incorrect ID Code的具体情况及解决办法。
How to Make a Game by Using a Microcontroller - Part 2
This blog introduces the components and circuit diagram used in the hardware design to build a Tetris game with an RL78 icrocontroller. The source code is also available.
【经验】基于CS+开发RL78编译优化选项设置
CS+是瑞萨MCU常用的开发工具,近期有客户在使用CS+开发RL78时出现代码选择优化后,一些代码就会被优化掉,不选择优化时,代码是可以正常执行的,结合客户问题实际测试这部分代码。本文介绍基于CS+开发RL78编译优化选项设置。
【应用】高度集成的3相BLDC驱动芯片MLX81332用于汽车电子水阀,小封装设计节省PCB空间
MELEXIS推出的MLX81332是一颗高度集成的3相BLDC驱动芯片,该芯片内部集成了16bit MCU,输出驱动电流最大1A,电源输入5.5V~20V,封装小,不需要太多的额外器件,节省PCB布局空间,非常适合应用于汽车水阀。
【产品】最高主频24MHz的工业级MCU MC51F7424,温度耐受范围-40℃~+105℃
MC51F7424是晟矽微电子针对电机驱动中高端电子产品研发的工业级MCU,具有高抗干扰性,性能稳定,性价比高等特点;最高主频24MHz,片上集成了单周期16×16bit硬件乘法器、8周期32/16bit硬件除法器以及1周期32bit硬件移位单元。
工业应用手册
描述- ROHM公司提供高质量的半导体和电子元件,致力于支持工业设备的技术创新。公司通过垂直整合的生产系统,确保产品的高质量、高可靠性和稳定供应。ROHM的产品涵盖从消费电子和IT设备到汽车和工业系统的广泛市场。公司还提供产品长期供应计划,以满足工业设备市场对长期供应的需求。ROHM通过结合电路设计、布局和制造工艺技术,开发出具有卓越性能的产品,并提供全面的设计支持和服务。
型号- BD52W04G-C,SH8KXX SERIES,BD900N1W,QH8KXX SERIES,BM2SCQ123T-LBZ,R6007RND3,BD900N1G-C,BD2311NVX-C,RBR2VWM60A,BD9XXN1 SERIES,BD933N1,RFS SERIES,RBR1VWM40A,BM2SC12XFP2-LBZ,CSL1901,BP3622,BD14210G-LA,BP3621,SCT4013DW7,BM2P06XMF-LBZ,R6035VNX3,RB068VWM150,R60XXRNX SERIES,CSL1901DW,BD950N1WG-C,BM2P060LF-Z,BM2LE160FJ-C,BV1LE080EFJ-C,BM2SC123FP2-LBZ,SH8MC5,SCT4018KW7,RB168VWM-40,RFL SERIES,SCT4018KE,BD52W03G-C,SCT4026DE,BM2SCQ121T-LBZ,LTR10 SERIES,RB168VWM-60,BD48W00G-C,RBR1VWM30A,SH8MB5,SCT4018KR,SCT4026DR,R6035VNX,BM2P061MF-Z,BM6437X,CSL1901UW,BM64378S-VA,BD900N1EFJ-C,D950N1EFJ-C,SCT4013DE,BM2P063MF-Z,R6024VNX3,SCT4013DR,BD7XXL05G-C,R60XXVNX SERIES,BD950N1,RB068VWM100,RFL,SH8KXX,CSL1901VW,RFS,BD14215FVJ-LA,BM6437X SERIES,PSR,RB168VWM-30,SCT4036KW7,R6004RND3,BM2LE040FJ-C,RF05VAM2S,BD750L05G-C,BM2SC122FP2-LBZ,BD933N1G-C,BD900N1,BM2P061LF-Z,BD52W02G-C,BM64377S-VA,BD933N1EFJ-C,QH8MB5,REFLD002,R60XXRNX,RBLQ2VWM10,PSR500,SCT4026DW7,BV1LE040EFJ-C,RFS30TZ6S,BD900N1WG-C,CSL1901 SERIES,QH8MC5,CSL1901YW,BV1LEXXXEFJ-C,RFL60TZ6S,R6013VND3,PSR SERIES,R6009RND3,R6077VNZ,BM2SCQ122T-LBZ,RFL60TS6D,S WAVE B-01,PSR400,BD933N1WG-C,BD52W01G-C,RB068VWM-60,R WAVE B-01,REFPDT007-EVK-001B,REFPDT007-EVK-001A,REFPDT007-EVK-001C,RFS30TS6D,LTR10,BD950N1WEFJ-C,BM2SC124FP2-LBZ,QH8MX5 SERIES,QH8KB5,R6013VNX,QH8KB6,RBR2VWM30A,BM2LE250FJ-C,BD2311NVX-LB,RGWXX65C SERIES,RGW00TS65CHR,SH8MX5 SERIES,SCT4045DW7,BV1LE250EFJ-C,SCT4036KE,QH8MX5,SCT4045DE,R6024VNX,BM2SCQ124T-LBZ,R6055VNX,R6018VNX,R6055VNZ,SCT4045DR,RGW80TS65CHR,QH8KC6,CSL1901MW,QH8KC5,R60A4VNZ4,RB168VWM150,BD7XXL05G-C SERIES,BD52W06G-C,SCT4062KR,BD48HW0G-C,RBR2VWM40A,BD1421X-LA SERIES,BD9XXN1,R6077VNZ4,BM1390GLV-Z,RGWXX65C,RBR1VWM60A,REFLD002-1,QH8KXX,REFLD002-2,R6055VNX3,BD52W05G-C,BM2P06XMF-LBZ SERIES,SCT4036KR,RFL30TS6D,BD900N1WEFJ-C,BM2LEXXXFJ-C,RFS60TS6D,BD733L05G-C,BD933N1WEFJ-C,SCT4062KE,BM2SC12XFP2-LBZ SERIES,BM64374S-VA,GNE1040TB,BD950N1W,BD725L05G-C,BD933N1W,BD730L05G-C,BM2SC121FP2-LBZ,PSR350,SH8KC6,BM64375S-VA,SH8KC7,BM2LE080FJ-C,SH8MX5,SCT4062KW7,R60XXVNX,PSR100,BV1LEXXXEFJ-C SERIES,RB168VWM100,BD950N1G-C,RGW60TS65CHR,R6055VNZ4,BM2P060MF-Z,RLD90QZWJ,RFS60TZ6S,RLD90QZWD,RLD90QZWC,SH8KB7,RLD90QZWB,SH8KB6,RB068VWM-40,RLD90QZWA,RB068VWM-30,BV1LE160EFJ-C,RLD90QZW8,RFL30TZ6S,BM2LEXXXFJ-C SERIES,RLD90QZW5,BD1421X-LA,PSR330,RLD90QZW3
CS32F035/F036 32-bit ARM®M0-based MCU数据手册
描述- 该资料介绍了芯海科技的CS32F035/F036系列32位ARM® Cortex®-M0内核微控制器。该系列具备32Kbytes的Flash存储器和4Kbytes的SRAM,最高工作频率为48MHz。芯片提供标准通信接口、1路12bit ADC、5个16bit定时器和一个增强控制型PWM定时器。支持多种电源工作模式,适应各种低功耗应用,广泛应用于智能家居、手持设备、消费类电子等领域。
型号- CS32F036,CS32F035F6PX,CS32F035F6P7,CS32F035K6U6,CS32F036F6P7,CS32F036F6PX,CS32F035,CS32F036K6T7,CS32F036K6U7,CS32F036G6U7
ROHM(罗姆)ML62Q1000系列低功耗16bit坚强微控制器
描述- ML62Q1000系列是EPSON推出的一款高性能、低功耗的16位微控制器。该系列具备高噪声抵抗和高温度运行能力(105°C),适用于家电、工业设备、消费电子等领域。产品阵容包括多个型号,支持多种安全功能,如RAM保护、错误检测等。该系列具有丰富的外围功能,包括多种串行接口、定时器、比较器等,并提供多种封装选项。
【选型】Renesas(瑞萨电子) RL78系列16位MCU选型指南
目录- RL78家族特点 通用型MCU LCD MCU ASSP 智能模拟 汽车 开发环境&开发工具 解决方案 产品一览表 封装
型号- R5F104PFAFA,R5F101PHAFB,R5F104PFAFB,R5F10BAFLSP,R5F101PHAFA,R5F113TJLFB,R5F110MEAFB,R5F10JGCAFB,R5F10AACLSP,R5F10AGCLNA,R5F111MHAFB,R5F10WMGAFA,R5F10WMGAFB,R5F101ACASP,R5F104JHAFA,R5F101JJAFA,R5F104BDANA,R5F101BFANA,R5F10PADLSP,R5F1006EASP,R5F101FDAFP,R5F100LJAFA,R5F100LJAFB,R5F100JGAFA,R5F101LCABG,R5F104CFALA,R5F1018CALA,R5F100BCANA,R5F10Y14ASP,R5F100FLAFP,RL78-S2,R5F100EHANA,R5F11MMDAFB,R5F10PGFLFB,R5F100MKAFB,R5F100MKAFA,R5F100CEALA,R5F10BLELFB,R5F100FAAFP,R5F104AAASP,R5F100SJAFB,RL78/F1X,R5F113GLLFB,R5F10BGFLNA,R5F10WLEAFB,R5F104GCAFB,R5F10KGCANA,R5F10WLEAFA,R5F101GCANA,R5F110PJAFB,R5F11BGEAFB,R5F10369ASP,R5F10BMFLFB,R5F100EGANA,R5F113MKLFB,R5F104LJAFP,R5F100GJANA,R5F10278ANA,R5F100MLAFB,R5F1176AGSP,R5F11FLLANA,R5F100FKAFP,R5F100CFALA,R5F10AGELFB,R5F111NGALA,R5F104LJAFA,R5F104LJAFB,R5F10JBCANA,R5F104LHALA,R5F100MLAFA,R5F101SLAFB,R5F101GFAFB,R5F10ALCLFB,R5F10WLFAFB,R5F104BFAFP,R5F104GDAFB,R5F10WLFAFA,R5F11EF8AFP,R5F10PPHLFB,R5F104GLANA,R5F10BGGLNA,R5F1017AANA,R5F10AADLSP,R5F10RFCAFP,R5F110MFAFB,R5F101LLAFA,R5F104JGAFA,R5F104BCANA,R5F1006DASP,R5F10NLE/G,R5F1008AALA,R5F101FEAFP,R5F110NEALA,R5F100AAASP,R5F104GAANA,R5F10RF8AFP,R5F11EAAASP,R5F100JHAFA,R5F10MPEDFB,R5F100BDANA,R5F104CEALA,R5F104MKAFA,R5F10MPGDFB,R5F104MKAFB,R5F10PGELFB,R5F113GKLNA,R5F11MMEAFB,R5F100GLANA,R5F10367ASP,R5F100MJAFA,R5F100MJAFB,R5F10AGGLFB,R5F117BAGFP,R5F10NPJDFB,R5F100LJABG,R5F100GDAFB,R5F104LLAFB,R5F104LLAFA,R5F104LJALA,R5F100SKAFB,R5F101GDANA,R5F10PPJLFB,R5F101PGAFA,R5F10277ANA,R5F10BAELSP,R5F113TKLFB,R5F101PGAFB,R5F101LEABG,R5F10AGDLNA,R5F100GAANA,R5F10NMJ/G,R5F107AEMSP,RL78/G10,R5F101BEANA,RL78/G11,R5F10PMFLFB,RL78/G12,RL78/G13,RL78/G14,R5F101GGAFB,R5F104BEAFP,R5F104FCAFP,R5F101CGALA,R5F100JFAFA,R5F113TLLFB,R5F101LDABG,R5F10BADLSP,R5F11BLCAFB,RL78/G1A,RL78/G1C,RL78/G1D,RL78/G1E,RL78/G1F,RL78/G1G,RL78/G1H,R5F117GAGFB,R5F10BLFLFB,R5F101AAASP,R5F10PMELFB,R5F101BDANA,R5F10RLAAFB,R5F101FFAFP,R5F10AAELSP,R5F10EGAAFB,R5F100BEANA,R5F101CFALA,R5F104FDAFP,R5F10RLAAFA,R5F10Y16ASP,R5F104CDALA,R5F10368ASP,R5F10PGDLFB,R5F104MLAFB,R5F10BMGLFB,R5F11MMFAFB,R5F100GKANA,R5F104MLAFA,R5F101JKAFA,R5F101LCAFA,R5F11768GSP,R5F101LCAFB,R5F100CGALA,R5F10AGFLFB,R5F111NHALA,R5F101GEANA,R5F110PHAFB,R5F100GCAFB,R5F104LKAFB,RL78/F12,RL78/F13,R5F101SKAFB,R5F11B7CANA,R5F11CBCGNA,RL78/F14,R5F104LKAFA,RL78/F15,R5F100SLAFB,R5F1018DALA,R5F104GEAFB,RL78/G1X,R5F10WLGAFA,R5F10WLGAFB,R5F11BGCAFB,R5F101EHANA,R5F101LFABG,R5F104LHAFP,R5F10FMCAFB,R5F10Y46ASP,R5F11BLEAFB,R5F100LCABG,R5F104BGANA,R5F10AGCLFB,R5F10JGCANA,R5F104JEAFA,R5F110PGAFB,R5F104LHAFB,R5F104LHAFA,R5F100PHAFA,R5F100PHAFB,R5F101GHAFB,R5F104LFALA,R5F10PPFLFB,R5F10268ASP,R5F113TGLFB,R5F10BGCLNA,R5F104FJAFP,R5F100JJAFA,R5F113GLLNA,R5F104MJAFA,R5F100ACASP,R5F104MJAFB,R5F10ABDLNA,R5F102A8ASP,R5F1016EASP,R5F101LEAFB,R5F101LEAFA,R5F101PKAFA,R5F101PKAFB,R5F100FDAFP,R5F111NEALA,R5F10PGFLNA,R5F101FGAFP,R5F100GEAFB,R5F10BGFLFB,R5F101MFAFA,R5F104EFANA,R5F101MFAFB,R5F11MPFAFB,R5F100BFANA,R5F104GKAFB,R5F10E8DALA,R5F10AAALSP,RL78/I1A,RL78/I1B,RL78/I1C,RL78/I1D,R5F101LDAFA,RL78/I1E,R5F104ACASP,R5F101LDAFB,R5F101JLAFA,R5F101GFANA,R5F101EGANA,R5F11MPEAFB,R5F104GLAFB,R5F104GAAFB,R5F104LGAFP,R5F10RBAAFP,R5F10WLCAFA,R5F10WLCAFB,R5F111MEAFB,R5F10PGHLFB,R5F113LLLFB,R5F101BCANA,R5F104LGAFB,R5F107ACMSP,R5F104BFANA,R5F10WMDAFB,R5F11CBCMNA,R5F100FCAFP,R5F104LGAFA,R5F10WMDAFA,R5F100PGAFA,R5F100SHAFB,R5F104LEALA,R5F100PGAFB,R5F10PPELFB,R5F101CEALA,R5F10BGDLNA,R5F113THLFB,RL78/I1X,R5F100ADASP,R5F10ABELNA,R5F10WLDAFB,RL78/L1A,R5F100GDANA,R5F11FLJANA,R5F101LFAFB,RL78/L1C,R5F100FEAFP,R5F100EAANA,R5F101LFAFA,R5F10PGELNA,R5F101FHAFP,R5F10BGGLFB,R5F117BAGNA,R5F101CDALA,R5F11MPGAFB,R5F10RLCAFA,R5F104EGANA,R5F10RLCAFB,R5F10WLDAFA,R5F100BGANA,R5F11EFAAFP,R5F100LKAFA,R5F11EA8ASP,R5F111MGAFB,R5F104GJANA,R5F10AGDLFB,R5F10EGCAFB,R5F10WMFAFA,R5F10WMFAFB,RL78/L1E,R5F10MMEDFB,R5F10BLDLFB,R5F111NFALA,R5F101GGANA,R5F11BCEALA,R5F104LGALA,R5F1007EANA,R5F10267ASP,R5F100LKAFB,R5F110PFAFB,R5F104CGALA,R5F10BMELFB,R5F10PPGLFB,RL78/L1X,R5F101EFANA,R5F10PAELSP,R5F100LLAFB,R5F10AGALNA,R5F10PGGLFB,R5F111MFAFB,R5F100LLAFA,R5F104EHANA,R5F104GKANA,R5F102A9ASP,R5F113LKLFB,RY7011A0000DZ00,R5F10EGDAFB,R5F101PJAFA,R5F101PJAFB,R5F10A6ALSP,R5F10KBCAFP,R5F10WMEAFA,R5F104JFAFA,R5F10BLCLFB,R5F117BCGFP,R5F104BEANA,R5F1006CASP,R5F100GFAFB,R5F101GJAFB,R5F10WMEAFB,R5F100PFAFB,R5F101MGAFB,R5F10BGELNA,R5F100PFAFA,R5F10266ASP,R5F10RLAANB,R5F110PEAFB,R5F1018AALA,R5F101MGAFA,R5F100AEASP,R5F10EGAANA,R5F101LGABG,R5F10E8EALA,R5F10FMDAFB,R5F10Y47ASP,R5F104BGAFP,R5F10279ANA,R5F10BAGLSP,R5F113MLLFB,R5F10PGDLNA,R5F100GCANA,R5F111PJAFB,R5F11FLKANA,R5F11BBEAFP,R5F101JCAFA,R5F1026AASP,R5F10RJAAFA,R5F104FAAFP,R5F10NMJDFB,R5F107DEMSP,R5F110NJALA,R5F100MFAFB,R5F100MFAFA,R5F1037AANA,R5F1007CANA,R5F111PGAFB,R5F10A6CLSP,R5F10PMJLFB,R5F100GHAFB,R5F10BBDLNA,R5F10BGCLFB,R5F104GFANA,R5F100LFABG,R5F104MGAFB,R5F104MGAFA,R5F101GHANA,R5F104ECANA,R5F104LEAFP,R5F101EEANA,R5F10RBCAFP,R5F104AFASP,R5F104PKAFB,R5F101BAANA,R5F100GEANA,R5F104LEAFA,RL78/G1,R5F104LEAFB,R5F104FGAFP,R5F101GKAFB,R5F101JEAFA,R5F11BBCAFP,R5
【技术大神】实例分析MCU的Data Flash访问控制
瑞萨RL78系列MCU内嵌2KB的DATA FLASH,省去了用户单独外扩数据FLASH的麻烦,同时还支持BGO操作,对DATA FLASH存储单元的写操作寿命高达1百万次以上,非常适合于需要频繁存取数据的应用场合。
【经验】瑞萨RL78系列MCU Data Flash使用介绍
用户能基于瑞萨官方提供的库来使用MCU内部的数据闪存,虽然MCU内部的闪存仍以1K字节块作为单位,但是用户可以按照字节进行读写。RL78资源的不同,对应的内部数据闪存的大小也不尽相同,一般大小在2K-8K字节范围之间,就单个地址,当前读写次数能达到1,000,000次,可在1.8-5.5伏电压范围内进行操作。
【经验】在开发环境CS+和e2studio中配置RL78的选项字节
瑞萨(Renesas)的RL78系列MCU在接通电源或者复位启动时,会自动参照选项字节进行指定功能的设定。选项字节由用户选项字节和片上调试选项字节构成。
【经验】如何在IAR中实现虚拟中断向量表跳转
我们都知道,在做OTA升级时,需要将MCU的程序分为两部分,boot区和user区,boot区用来做引导,user区才是用户程序区,两个区之间可以进行互相衔接跳转。
【经验】瑞萨RL78族噪声的相关注意事项及对策应用说明
本篇应用说明介绍了RL78族有关噪声的注意事项及其对应方法。本应用说明中介绍的噪声对应方法仅作为通常的噪声处理方法,在实际使用时,请在实施本处理方法后对系统进行详细的评价。
【经验】 RL78系列MCU低功耗模式电流下不去,原来玄机在这里
Renesas RL78系列MCU具超低功耗的特性,分为三种休眠模式,HALT,STOP和SNOOZE,其低功耗指标为: 运行电流可达66uA/MHz,STOP模式下为0.57uA(RTC + LVD)。笔者就遇到一个问题,进入STOP之后,仅保留RTC功能,1s唤醒一次进行状态查询,功耗还在400uA左右,这个严重不符合实际性能指标和要求。一般来说,这种配置,处理得当的话,整机功耗<10uA。
电子商城
现货市场
服务
可定制显示屏的尺寸0.96”~15.6”,分辨率80*160~3840*2160,TN/IPS视角,支持RGB、MCU、SPI、MIPI、LVDS、HDMI接口,配套定制玻璃、背光、FPCA/PCBA。
最小起订量: 1000 提交需求>
可定制板装式压力传感器支持产品量程从5inch水柱到100 psi气压;数字输出压力传感器压力范围0.5~60inH2O,温度补偿范围-20~85ºС;模拟和数字低压传感器可以直接与微控制器通信,具备多种小型SIP和DIP封装可选择。
提交需求>
登录 | 立即注册
提交评论