Peter Vranken - 2016-06-18

New package 1.2 (SVN r192, 14.06.2016) has been uploaded, with minor functional improvements of the two code generators (codeGenerator 1.7.0 and excelExporter 0.17.0) and new sample code.

DBC code generator

Attribute values and named signal values are now held in Long instead of Integer objects. This ensures that the full 32 Bit integer range (signed and unsigned, from -2^31 till 2^32-1) is captured. Before the parser had rejected DBC input files, which used values in the upper positive half of the 32 Bit unsigned range.

Some more fields in the data model class Signal support the handling of multiplexed signals (data model V 1.6 -> 1.7).

New sample EmbeddedCoderAPIWithBusStruct added, which demonstrates the design of a CAN API suitable for a MATLAB Simulink model, which the Mathworks Embedded Coder generates C code from. The comFramework code generator generates the CAN API as C source code and the MATLAB scripting, which describes the API in terms of Simulink Bus and Signal objects. A Simulink model tagged with these objects produces C code that directly links to the CAN API. A Windows demo application can be compiled and executed.

CAN interface

Fix: The code generation templates for both sample integrations of the CAN interface used transmission direction "both" when iterating the signals for the generation of the API structs. This iteration works well only for CAN frames, where either all signals or none are received by the node of interest. In all other cases will there be signals missing in the generated API.

Now we use the correct transmission direction "all", which includes signals that are neither sent nor received and the generated API structs will contain all signals of a frame.

New sample integration: The already existing Arduino sample integration of the CAN interface has been copied and modified; now the APSW is implemented as a Simulink/Embedded Coder model. The interface between model and CAN interface is generated by the comFramework codeGenerator.
Actually, this new sample is a mixture of the existing Arduino sample integration and the new codeGenerator sample EmbeddedCoderAPIWithBusStruct.

 

Last edit: Peter Vranken 2016-06-18