|
CANopen is a CAN-based higher layer protocol. It
was developed as a standardized embedded network with highly flexible
configuration capabilities. CANopen unburdens the developer from
dealing with CAN-specific details such as bit-timing and implementation-specific
functions. It provides standardized communication objects for real-time
data (Process Data Objects, PDO), configuration data (Service Data
Objects, SDO), and special functions as well as network management
data. MQX Embedded's CANopen Master/Slave protocol software contains
all the functions required for the implementation of CANopen slave
or simple master devices. It is fully integrated with MQX Embedded's
MQX™
RTOS for an excellent out-of-box experience. MQX Embedded's
CANopen Master/Slave software is licensed royalty free with full
source code provided.
- Comprehensive range of functions based
on the current CANopen specification DS301 version 4.02
- Enables quick and easy development of CANopen
devices (slave and master)
- Modular software structure with comprehensive
configuration and scaling possibilities
- Clearly structured, simple programming
interface for connection of the application program
- Integration with MQX
RTOS and CAN drivers

MQX Embedded's CANopen software provides a programming
interface between the application tasks and CANopen protocol stack.
This interface is implemented on the basis of mailboxes. Commands
are transferred from the application to the CANopen protocol stack
and the results of the command execution, events and emergency messages
are passed from the CANopen protocol stack to the application. An
application can consist of several tasks, which can use the CANopen
interface independently of one another. Data is exchanged between
the application and the protocol stack using the object dictionary.
Each object dictionary entry can be directly allocated a reference
to a variable with application data. PDOs and SDOs access these
application variables directly. User-specific call-back functions
can be connected to each application object and enable an event-controlled
signal to the application when these objects are accessed. This
mechanism allows direct, application-specific reaction to changes
in application data triggered on the bus-side.
The MQX CANopen Master/Slave protocol software
supports the PDO transfer types asynchronous, synchronous (cyclic
and acyclic) and on request (RTR-Only). PDO-mapping can be implemented
statically or dynamically according to the reaction speed required
or available resources. Dummy mapping is provided as well as variable
inhibit times. In addition, the protocol software supports multiplex
PDOs. With SDOs, the transfer types expedited and non-expedited
(segmented) as well as block transfer are supported. The application
can check the data written by SDO for consistency before the target
variables are overwritten and abort the SDO transfer if necessary.
MQX Embedded's CANopen Master/Slave software provides
all network services required to implement a simplified bootup procedure
and includes support for bootup message, node guarding with or without
life guarding (master monitoring) and heartbeat mechanism with producer
monitoring.
Identifiers are allocated by default according
to the predefined I/O connection set but can also be assigned by
altering the relevant object dictionary entries.
MQX Embedded's CANopen software package also enables
the implementation of a simple CANopen master with its own object
dictionary. A CANopen device implemented on this basis can work
in a system either as a slave or as a master and be configured via
the object dictionary. The software package provides the basic functions
for the NMT services. Functionality such as the control of the system
bootup, verification of the availability of all required slave devices,
automatic download of configuration data or also specific reaction
to node failures can be programmed by the user.
The MQX CANopen Master/Slave protocol software
is available for the following Freescale Semiconductor processors
and (CAN controllers):
- Power Architecture MPC5200 (MSCAN)
- ColdFire MCF5282 (FlexCAN)
- ColdFire MCF548x (FlexCAN)
- ColdFire MCF523x (FlexCAN)
- Power Architecture MPC5xx (TouCAN)

|