PIC18F26Q84 CAN发送异常
本帖最后由 chenxiaolang 于 2021-8-8 16:50 编辑关于PIC18F27Q84和PIC18F26Q84 CAN发送有个疑问,按规格书,这两款MCU是兼容的,只是Flash空间大小的差异,在同一个电路板、相同功能的程序测试结果如下:1、电路原理图
2、PIC18F27Q84可以正常发送,速率125K
3、PIC18F26Q84发送异常
MCU CAN TX管脚信号如下(发送0A 0A 。。。。)
哪位调试过PIC18F26Q84,帮忙指导下。
两个片子的配置是不是不一样 本帖最后由 lcczg 于 2021-8-10 10:05 编辑
你好,两款芯片的CAN RAM是不同的,CAN FIFO的指针在27Q84上为0X3800,而在26Q84上为0X2600。程序里做下修改就可以了 C1FIFOBA = 0X2600。 是同一个块板子, 拆掉原来的IC, 替换成新的IC??
换了新的IC之后, 在IDE里面把项目的芯片型号改一下,然后重新编译烧录, 此时遇到的问题? 两个片子的程序不一样吧 lcczg 发表于 2021-8-10 09:58
你好,两款芯片的CAN RAM是不同的,CAN FIFO的指针在27Q84上为0X3800,而在26Q84上为0X2600。程序里做下修 ...
多谢指导,确实是你说的问题,修改后可以正常收发了,但我不太明白,PIC18F26Q84的规格书上标注如下,难道有错误?
Equation 38-21. Start Address of the TEF Object
A = BaseAddress = CxFIFOBA
Note: CxFIFOBAH/L needs to be set to a value between 0x3800 and the end of RAM, leaving enough room to allow
the TEF and Transmit Queue (if enabled) as well as the FIFOs. CoolSilicon 发表于 2021-8-10 11:12
是同一个块板子, 拆掉原来的IC, 替换成新的IC??
换了新的IC之后, 在IDE里面把项目的芯片型号改一下,然后重 ...
嗯,你说的建议我之前都试过了,两个硬件是一样的,而且做过ABA对调,问题跟着26Q84走,程序都是MCC生成的,除了建工程时型号不一样,其他配置完全一直,连生成的代码我都用文本比较软件对比过,完全一样。 本帖最后由 lcczg 于 2021-8-10 15:53 编辑
chenxiaolang 发表于 2021-8-10 14:45
多谢指导,确实是你说的问题,修改后可以正常收发了,但我不太明白,PIC18F26Q84的规格书上标注如下,难 ...
谢谢提醒。MCC和文档后续都会做更正。在26Q84的数据手册78页里,可以看到紫色区域为CAN RAM,可以看到 X6Q84和 X7Q84的区别。 楼主能分享一下你的27Q84的CAN通讯配置吗,目前正在用这个芯片,没什么经验,QQ424337844
页:
[1]