BlinkySimple example part 1

Open the Rhapsody project BlinkySimple from the directory <ARXF_CP_V8.0.1 installation folder>\ARXF_CP_V8.0.1\Samples\Autosar\Model\BlinkySimple:




The selected Configuration specifies for which environment the code must be generated: Target which can be deployed to your AUTOSAR tool environment or Simulation to deploy to Visual Studio.
You can specify this using the Deployer tab of the RXF Configuration in the Configuration of a Component:


A Component can have multiple configurations and one can set compiler defines per configuration, like Debug or Release.

The Component uses the stereotype RXF which is defined in the profile RXF. Each RXF by SodiusWillert comes with this profile with this stereotype. RXF sets the proper environment, some properties for the ARXF-CP and defines some tags.


The ArPackage RXFApplicationLayer contains:

The ArPackage CompositionPackage contains:
Composition serves as root compostion and defines which SWC prototypes are derived from which SWCs.

SWC

The SWC contains a few AUTOSAR specific details:

The symbols for the runnables are public symbols, but instead of having any declaration generated by Rhapsody, we rely on the RTE generated contracts. The Rhapsody generated code for an SW-C must include the contract generated by the RTE: SwcB.c must include Rte_Swcb.h

You can inspect the code for a runnable by double-clicking on it, to show its Features. The Implementation tab shows the code to generate:

We use information from the AUTOSAR root composition showing SW-C prototypes and use the relation between the RTE instances of SWCs and SWCs to initialize the Rhapsody instances of SWCs.

An SW-C is represented by a structured class. It contains parts to enforce static allocation of the objects which build up a particular SW-C. SwcB contains itsControllerB and itsLED.

When the timer of the controller elapses, it sends an event to the LED

The Structure Diagram allows you to specify some details you need:

Please continue to the next BlinkySimple example part 2