宣布加入Pmod可以感谢Pmod通信大家庭!
描述
控制器区域网络(CAN)仍然是一种广泛使用的通信协议,特别是在汽车工业中。因此,教师必须教授他们的学生CAN。在被许多不同的老师问到我们是否有一个Controller Area Network Pmod后,我们继续设计了一个。
的Pmod可以利用微芯片MCP25625使CAN与各种外部设备通信。一个完整的CAN解决方案,一个控制器和收发器可以实现在系统板上通过通信与主机板通过SPI协议SPI模式为0或3。收发机上的两条差分线路(CANH和CANL)使平衡差分信令能够消除大部分电磁场(EMF),并在系统内提供高的抗噪声能力。
工作是怎样的?
CAN是一种点对点的网络协议。这意味着网络上没有单一的主机来控制节点之间的数据流,就像使用SPI协议那样。相反,任何节点都可以在总线空闲时向网络写入帧。网络上的所有节点都将接收传输的帧,并根据所谓的仲裁ID决定是否接受它。如果多个节点试图同时传输帧,具有最高优先级(最低仲裁ID)的节点将获得总线访问。有关CAN协议的详细信息,请参见这个白皮书从民族乐器。

如上所述Pmod可以与主机板通过SPI协议.通过驱动和保持芯片选择线在一个低逻辑级别,用户可以来回与Pmod通信,这取决于是否两组数据线都是启用的。Pmod上的嵌入式芯片工作在SPI模式0或3,数据捕获在时钟上升边缘,数据传输在时钟下降边缘,最小的时钟周期时间为100纳秒。
九个SPI指令可用来读取接收器的状态,加载一个发送缓冲区,在寄存器中修改位和更多。
应用程序
正如本文介绍中所提到的,CAN在汽车行业的应用最为知名,特别是用于车载通信。然而,由于其低成本、轻量级、可靠和耐用的有线网络标准,它也被其他行业采用。这包括铁路应用,飞机,航空航天,医疗,以及电梯和自动扶梯的应用。
的Pmod可以设计用于与任何Digilent FPGA, Zynq或MCU板工作。它可以插入Digilent的任何主机端口FPGA或Zynq系统板。对于Digilent微控制器板,需要更加小心地确定哪个Pmod主机端口支持SPI协议。然而,一旦确定了Pmod可以应该很容易启动和运行与任何Digilent MCU板。只需遵循快速入门部分参考手册开始!
开始
如果您是一个MCU用户,我们已经编写了一些库和示例代码说明如何开始使用CAN协议进行通信。示例代码是在Arduino IDE中编写的,应该可以与Arduino的Digilent核心顺利工作。下载说明,请参阅我们的教程如何开始使用Digilent核心。
如果使用Pmod可以与Digilent FPGA板,见我们的维基页面标题使用Pmod IPs了解如何使用我们的拖放Pmod CAN IP Core与MicroBlaze设计。
问题或意见吗?请在下面的评论区或访问Digilent论坛!
