首先,CAN通信需要有接口的,在有接收的基础上,再加一片CAN总线驱动芯片PCA82C250才行。
这是要看你是什么单片机了,有的单片机带有CAN接口的,就像带有串口UART一样。
带有CAN接口的单片机,有专用的通信用寄存器来实现通信,与串口无关。
没有CAN接口的单片机,如51系列的,就需要加一片CAN扩展接收芯片,如SJA1000,通信时,是按外部扩展接口来实现的,当然了,用SJA1000也同样需要PCA82C250芯片的。
另外,在CAN通信时,具有很严格的通信协议的,必须按协议写程序才行的。并不像串口通信那么简单的。
感谢题主的邀请,我来回答下这个问题:
首先可以确定的是,CAN总线是可以进行多机通讯的,理论上讲,一条CAN总线就可以同时和110个节点设备进行连接,而且这些节点彼此之间都是平等的,即都可以自行收发数据。然而,CAN总线上总的带宽是有限的,如果没有统一的协调,各个节点都在乱发一气的话,那么会很大程度上的造成信息拥堵,严重的还容易损坏CAN总线本身。这个时候,我们就需要依照CANopen等协议,按照CAN ID来预先进行设置,比如说某个节点发送完数据大家都接收完毕后按照节点的序号依次发送信息,这样,就能够比较有序的进行CAN多机通讯。如果你对这类知识感兴趣或者需要专门的CAN总线设备的话,请前往GCGD官网进行具体咨询。
这可不只是写程序就能完成的。
在硬件上,需要一个RS485转换成CAN的模块,可以在网上买到的。
如果你用的单片机,支持CAN通信,有一个CAN通信口,并带有一个UART串口,可以接成RS485。这样的话,在硬件上就可以节省转换模块了。
那样,是可以通过写程序完成了。那就简单了,CAN口和UART口互相收发就行了。
感谢题主的邀请,我来说下我的看法:
只要是需要电脑进行功能配置的CAN设备,它们基本都应该有一个USB接口,可能这个接口你从设备的外面就能够看到,而有的,则需要你打开设备的外壳,从电路板上找到。找到设备的USB接口以后,我们就可以通过USB线连接器与装有配置软件的电脑,完成相关程序的下载了。一般在程序配置完成以后,我们需要给设备重新上电才能应用配置的功能。现在你清楚了吗?如果您需要相关的can总线通讯模块的话,可以前往我们的网站进行具体的咨询,欢迎来访。
一般不管在哪里,都别直接要程序,即使要了,也不会有人给。
你应该自己学着写,碰到问题了再问,这样就具体的某个细节问题,大家才好回答你。
这个要求包含如下几个方面:
1)单片机通过RS232与电脑之间发送、接收数据;
2)51单片机对SJA1000的配置、控制、读写;
3)CAN的节点通讯(协议);
4)51单片机对DS18B20的温度采集。
这些,你会哪些,不会哪些,至少自己一点一点的去啃一下,才有意义
以上就是关于单片机Can通讯怎么用,全部的内容,包括:单片机Can通讯怎么用,、请问该如何有序的进行can多机通讯呢、rs485转can通讯程序怎么写等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)