OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 6600|回复: 11

求助两个MCU间CAN通讯方案设计!

[复制链接]

5

主题

31

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1400
金钱
1400
注册时间
2017-12-12
在线时间
114 小时
发表于 2022-6-20 16:29:17 | 显示全部楼层 |阅读模式
板卡上有两个STM32的MCU,由于设计上的限制,两个MCU之间准备采用CAN通讯,但又不想加TAJ1050等接口芯片,请问直接把CAN的RX与TX对接上,能用吗?谁有成熟的电路呢?求指导!
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

385

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1023
金钱
1023
注册时间
2019-9-21
在线时间
269 小时
发表于 2022-6-20 17:18:10 | 显示全部楼层
一般是要加一个TAJ1050等接口芯片的。
回复 支持 反对

使用道具 举报

10

主题

3281

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8205
金钱
8205
注册时间
2020-5-11
在线时间
3700 小时
发表于 2022-6-20 17:35:39 | 显示全部楼层
建议这样:如果TXD能设置成开漏(弱上拉)就和RXD直接接一起,不能设置开漏就串个二极管和RXD接一起,再把双方RXD接一起接上拉电阻。
自己要能收到自己发的数据。
专治疑难杂症
回复 支持 反对

使用道具 举报

5

主题

31

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1400
金钱
1400
注册时间
2017-12-12
在线时间
114 小时
 楼主| 发表于 2022-6-20 19:19:07 | 显示全部楼层
LcwSwust 发表于 2022-6-20 17:35
建议这样:如果TXD能设置成开漏(弱上拉)就和RXD直接接一起,不能设置开漏就串个二极管和RXD接一起,再把 ...

嗯嗯,我研究了一下午也是这个结论,谢谢!
回复 支持 反对

使用道具 举报

5

主题

31

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1400
金钱
1400
注册时间
2017-12-12
在线时间
114 小时
 楼主| 发表于 2022-6-20 19:19:32 | 显示全部楼层
问题已解决,结贴!
回复 支持 反对

使用道具 举报

29

主题

492

帖子

0

精华

高级会员

Rank: 4

积分
810
金钱
810
注册时间
2016-4-7
在线时间
123 小时
发表于 2022-6-21 13:27:15 | 显示全部楼层
CAN通讯必须有CAN芯片,不然没有通讯协议怎么算CAN呢
回复 支持 反对

使用道具 举报

29

主题

492

帖子

0

精华

高级会员

Rank: 4

积分
810
金钱
810
注册时间
2016-4-7
在线时间
123 小时
发表于 2022-6-21 13:27:44 | 显示全部楼层
自己实验搞搞么,直接串口TTL电平连接通讯就好了
回复 支持 反对

使用道具 举报

5

主题

31

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1400
金钱
1400
注册时间
2017-12-12
在线时间
114 小时
 楼主| 发表于 2022-6-21 18:17:01 | 显示全部楼层
xujian468 发表于 2022-6-21 13:27
自己实验搞搞么,直接串口TTL电平连接通讯就好了

串口没有了,要是有我还不知道用TTL的串口连嘛。
回复 支持 反对

使用道具 举报

2

主题

685

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3447
金钱
3447
注册时间
2017-7-4
在线时间
869 小时
发表于 2022-6-21 23:45:27 | 显示全部楼层
CAN标准去了解下,CAN标准包括了物理层和链路层,即是控制器+收发器,MCU内部是控制器,外部是收发器,没有收发器怎么玩
回复 支持 反对

使用道具 举报

10

主题

3281

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8205
金钱
8205
注册时间
2020-5-11
在线时间
3700 小时
发表于 2022-6-22 11:55:32 | 显示全部楼层
Acuity 发表于 2022-6-21 23:45
CAN标准去了解下,CAN标准包括了物理层和链路层,即是控制器+收发器,MCU内部是控制器,外部是收发器,没有 ...

楼主的需求是两个单片机在同一块板子上短距离通信,由于其它引脚被占用,只能利用CAN引脚来通信。
CAN收发器(如TJA1050)本质上是电平转换,如同MAX485,将单端信号与差分信号进行转换,矩距离通信是可以不需要转差分的。
单片机里的CAN与USART是类似的,只是CAN需要在发送时监测数据用于仲裁、接收ACK等。
楼主试好之后请在这里回复一下。
傲游截图20220622115442.jpg
专治疑难杂症
回复 支持 反对

使用道具 举报

9

主题

95

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
479
金钱
479
注册时间
2019-12-6
在线时间
149 小时
发表于 2024-3-8 15:53:13 | 显示全部楼层
TX RX是TTL电平啊,不经过CAN的电平转换芯片,怎么算CAN通讯捏,can通讯和ttl完全不是一个概念
回复 支持 反对

使用道具 举报

2

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
133
金钱
133
注册时间
2022-9-29
在线时间
25 小时
发表于 2024-3-8 16:01:06 | 显示全部楼层
可以用CAN的引脚连一起用串口通信吧,板子上两根线连一块肯定是可以通信的,不加外部收发器应该不满足CAN的链路层定义,不算CAN通信
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-23 08:57

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表