打印
[PIC®/AVR®/dsPIC®产品]

PIC18F26Q84 CAN发送异常

[复制链接]
1831|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 chenxiaolang 于 2021-8-8 16:50 编辑

关于PIC18F27Q84和PIC18F26Q84 CAN发送有个疑问,按规格书,这两款MCU是兼容的,只是Flash空间大小的差异,在同一个电路板、相同功能的程序测试结果如下:1、电路原理图



2、PIC18F27Q84可以正常发送,速率125K



3、PIC18F26Q84发送异常

MCU CAN TX管脚信号如下(发送0A 0A 。。。。)




哪位调试过PIC18F26Q84,帮忙指导下。



51650610f9ac721940.png (845.21 KB )

51650610f9ac721940.png

使用特权

评论回复
沙发
huquanz711| | 2021-8-10 08:11 | 只看该作者
两个片子的配置是不是不一样

使用特权

评论回复
板凳
lcczg| | 2021-8-10 09:58 | 只看该作者
本帖最后由 lcczg 于 2021-8-10 10:05 编辑

你好,两款芯片的CAN RAM是不同的,CAN FIFO的指针在27Q84上为0X3800,而在26Q84上为0X2600。程序里做下修改就可以了 C1FIFOBA = 0X2600。

使用特权

评论回复
地板
CoolSilicon| | 2021-8-10 11:12 | 只看该作者
是同一个块板子, 拆掉原来的IC, 替换成新的IC??
换了新的IC之后, 在IDE里面把项目的芯片型号改一下,然后重新编译烧录, 此时遇到的问题?

使用特权

评论回复
5
两只袜子| | 2021-8-10 11:22 | 只看该作者
两个片子的程序不一样吧

使用特权

评论回复
6
chenxiaolang|  楼主 | 2021-8-10 14:45 | 只看该作者
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.

使用特权

评论回复
7
chenxiaolang|  楼主 | 2021-8-10 14:57 | 只看该作者
CoolSilicon 发表于 2021-8-10 11:12
是同一个块板子, 拆掉原来的IC, 替换成新的IC??
换了新的IC之后, 在IDE里面把项目的芯片型号改一下,然后重 ...

嗯,你说的建议我之前都试过了,两个硬件是一样的,而且做过ABA对调,问题跟着26Q84走,程序都是MCC生成的,除了建工程时型号不一样,其他配置完全一直,连生成的代码我都用文本比较软件对比过,完全一样。

使用特权

评论回复
8
lcczg| | 2021-8-10 15:16 | 只看该作者
本帖最后由 lcczg 于 2021-8-10 15:53 编辑
chenxiaolang 发表于 2021-8-10 14:45
多谢指导,确实是你说的问题,修改后可以正常收发了,但我不太明白,PIC18F26Q84的规格书上标注如下,难 ...

谢谢提醒。MCC和文档后续都会做更正。在26Q84的数据手册78页里,可以看到紫色区域为CAN RAM,可以看到 X6Q84和 X7Q84的区别。

使用特权

评论回复
9
xj2022| | 2022-12-6 14:00 | 只看该作者
楼主能分享一下你的27Q84的CAN通讯配置吗,目前正在用这个芯片,没什么经验,QQ424337844

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

15

主题

48

帖子

4

粉丝