The emotas CAN MultiProtocol Stack supports various CAN based protocols in one devices. Based on the uniform CAN driver API and the universal CAN Queue Implementation this CAN Stack supports CANopen, EnergyBus, SAE J1939 and proprietary protocols in one application. Especially gateways between various protocols can be implemented in a fast and straight-forward way.
The EtherCAN CI-ARM9 Ethernet to CAN gateway is ideally suited to use with the multiprotocol stack software, with Ethernet Interface, 454MHz Freescale ARM9 CPU, and acces to embedded software development toolchain for developing own embedded Linux applications on the ARM9 processor.
The configuration is done by the CAN DeviceDesigner which is included in the delivery. It comes with various profile and signal databases and allows a comfortable configuration of the services, features and data. All features or the existing stacks are included. For CANopen all Master and Slave services are available and for J1939 broadcast mechanisms and transport protocols to transfer larger data.
The integration of manufacturer-specific protocols can be done in 2 ways. The first way is to use the resource-saving slim API that provides simple functions to send CAN messages or to receive registered CAN messages. The reception is realized by callback functions.
The other way is the Full API. Using this API complex signals can be mapped into CAN messages and the CAN Stack automatically handles timer- or event-triggered transmissions and the application only has to update the data. Using this communication and application may be separated. On reception of CAN message the stack automatically updates the application variables.
The CAN MultiProtocol Stack is available for a large number of microcontrollersand operating systems(Linux, Windows, RTX64, …). The CAN DeviceDesigner can be used on Windows and Linux as well.