完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
我使用下面的链接器选项来计算代码空间的Fletcher校验和,并将其定位在0x1F7FE:--checksum=0-1F7FD@1F7FE,.=7On startup,我的代码执行自己的计算(使用来自Rev D编译器手册的示例Fletcher代码),并将其与t存储的值进行比较当我使用编译器的版本1.33时,这一切都很好。但是,昨天我安装了版本1.36,校验和计算现在失败了。有趣的是,如果改变计算的范围,使其结束或低于0x000 01b,校验和匹配。但是对于范围之外的问题,它失败了。我注意到编译器手册的最新版本包括了用于计算校验和的不同代码示例,所以我试着使用它,但是仍然不能工作。有人知道为什么这个校验和不再工作了吗?奇怪的是,这不是向后兼容的。谢谢,戴夫。
|
|
相关推荐
10个回答
|
|
|
嗨,我不确定它是否相关,但是MPLAB X IDE v3.26发行说明说:这个发行版修复了在3.25MPLAB X IDE v3.26特性中发现的一些问题:修复了各种设备上的校验和(...)-Cunha
|
|
|
|
|
|
谢谢你的答复,库尼亚。不幸的是,列出的所有更改似乎都不适用于我的设备。——戴夫
|
|
|
|
|
|
有趣(整个线程)…我一直试图让Fletcher的16位(8位字节间的校验和返回16位结果)算法在1.35(OOPS,刚刚检查,从2016年1月29日起我就在PIC18F26K22上使用XC8 1.36而不是1.35)上工作一段时间,并且我一直在使用来自Wikipedia和XC8 1.36个HealMax手动部分(HeMead和维基百科代码看起来和我一样,当使用Visual C++ 2015编译成一个测试应用程序时是正确的)作为我的模板……我不使用它作为HeMax应用程序(计算校验和,将它存储在HEX文件中,将其烧毁到设备,然后具有D)。我迄今为止的经验是,对于每2字节的Fletcher的16位校验和,我就在PIC18F26K22上计算,第一个和字节总是在PC上正确地检查,第二个和字节方法失败。但是,据我所知,当来自PC的帧被PIC18F26K22接收和检查时,我创建并附加到PC上的帧的每个2字节校验和都检查OK。所以,我仍然在寻找一个好的用C语言编写的Fletcher的16位算法,我可以在PIC18F26K22上编译,并在PC上得到校验和字节。
|
|
|
|
|
|
好吧,我终于把事情搞定了。当我尝试使用来自Rev F编译器手册的示例校验和代码时,我忽略了将长度参数更改为32位数。由于我必须在大于65535字节的范围内计算校验和,所以无符号INT是不够的。在将长度参数更改为32位之后,计算出的校验和现在与链接器在flash中存储的校验和匹配。因此,显然,HEXMATE使用的校验和算法在沿线的某个地方发生了变化,破坏了现有代码。我必须下载并检查版本1.34和1.35的发行说明,看看是否有提及。
|
|
|
|
|
|
安装有1.36个状态的自述文件,在HeMID中的弗莱彻8校验和被窃听并已被修复。听起来好像你已经实现了一个匹配的bug。
|
|
|
|
|
|
是的,我现在明白了。我第一次看发行稿时就错过了。谢谢!
|
|
|
|
|
|
您好,使用PIC18F45 K80,编译器:XC8PRO,MPLAB X IDEI面临的问题是使用六合一生成CRC。试图包括XC8链接器选项->附加选项->校验和为“-CHECKSUM=00-7F@7e,offset=0xFFFFFF,算法=5,宽度=-2,多项式=0x1021”。在理解内存时,计算程序存储器的地址(据我所知)0000-07FFF。当证明这样的选项有错误时,例如::error:(1241)错误的开始地址in--checksum::error:(1242)错误的结束地址in--checksum::error:(1243)错误的目的地地址in--checksum可能有人帮助解决这里缺少的东西。
|
|
|
|
|
|
嗨,如果您正在使用IDE并将该选项添加到Checksum字段,那么您不需要包括该选项的“--CHECKSUM=”部分。这是IDE填写的。如果您在命令行上构建,则需要整个选项。
|
|
|
|
|
|
我没有在选项中包括校验和,并且我发现地址是错误的,给定选项为“[link=mailto:8-7FFD@7ffE,offset=0xFFFFFF,.=-5,.=-2,polynomial=0x1021”]8-7FFD@7ffE,offset=0xFFFF,.=-5,.=-2,polynomial=0x1021”[/link]。m 62%到100%。如果没有这个选项,代码工作得很好。在包含这个选项并闪烁代码之后,代码根本就不会运行。它甚至没有达到主要功能。
|
|
|
|
|
|
嗨,我不太明白什么是“地址”是错的。我建议你创建一个支持票,然后把你要做的和你看到的全部描述都发到你的项目中。杰夫。
|
|
|
|
|
只有小组成员才能发言,加入小组>>
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
473 浏览 0 评论
5793 浏览 9 评论
2334 浏览 8 评论
2224 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3530 浏览 3 评论
1122浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
1095浏览 1评论
我是Microchip 的代理商,有PIC16F1829T-I/SS 技术问题可以咨询我,微信:A-chip-Ti
872浏览 1评论
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
475浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-1 22:53 , Processed in 0.688647 second(s), Total 88, Slave 71 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
1011