uRTEDemo_03_Nucleo-F446RE_SystemStates_10_Model

Runnable

run_UART_send

Sends UART messages periodically via the UART signal

Diagrams

Safety

Required
SIL derived QM
overwrite (SIL_manual) derived
reason (SIL_manual_reason)
SIL QM
Achieved
SIL achieved QM
justification

Properties

Base
Namerun_UART_send
Type Runnable
Description

Sends UART messages periodically via the UART signal

User-IDRunnable_70
UID_WRe9oOZrEeyZ2OzYlvU4PA
software unit configuration
Parent UART
WCET 0
Stack 0
ROM 0
runnable configuration
Has a return value true

System-States (1)

Systemstates the runnable is active in.

State isStart Runnables Tasks

A state that is entered if the user has pressed the button. Here, periodic UART messages are sent.

false
Ports

Ingoing Trigger Ports (1)

Trigger IN ports attached runnable run_UART_send.

Port Events Signal event source Container Task Guard Order
Runnable_run_UART_send_TPortIN_1
run_UART_send UART
0

Ingoing Data Ports (2)

Data IN ports attached to runnable run_UART_send.

Port Signals Source Container
Runnable_run_UART_send_DPortIN_1 run_UART_send
Runnable_run_UART_send_DPortIN_2 run_UART_send

Outgoing Data Ports (1)

Data OUT ports attached to runnable run_UART_send.

Port Signals Target Container
Runnable_run_UART_send_UART_OUT run_UART_send

Requirement Layer

(Safety)Requirements (3)

(Safety)Requirements referencing to runnable run_UART_send.

(Safety)Requirement Parent User-ID Author Creation Date Start Date Deadline Expense Responsibe Category Type Status Function Type SIL derived SIL manual SIL effective Tests Technical Functions Software Hardware Signals Global variables Activation events Use-Cases User-Stories Refining Conflicting refined by conflicted by

When the button is pressed, the system-state shall change from Blink into UART mode.
The start of UART mode shall be signaled via UART.
As long as the button is pressed, UART strings with the time in seconds the Button was pressed shall be send with the frequency with which the button pressed signal is updated.

Requirement_95 Thomas Barth Wed Jun 08 17:56:19 CEST 2022 0.0 Thomas Barth product functional implemented - - - -

Demonstrate the use of scalers and validators.
Make use of age restrictions, checksums and pointer access.

SafetyRequirement_111 Thu Jun 09 20:52:41 CEST 2022 0.0 product functional approved System_Function QM derived QM

uRTE allows the definition of multiple system-states where each state has an own data-flow.
For each runnable the system state it shall be active in is configured.
The resulting data-flow can be visualized in Software Model/uRTE/SystemStates

SafetyRequirement_98 Wed Jun 08 17:52:52 CEST 2022 0.0 product functional implemented System_Function QM derived QM

Functional Layer

Technical Functions (1)

Technical functions referencing to runnable run_UART_send.

Function LFB Software Hardware Technical Functions sub Technical Functions Requirements sub Requirements

If the button is pressed, UART messages indicating the press duration are sent.

Technical functions to guards and drivers (1)

Technical functions referencing to guards, functions and drivers of runnable run_UART_send.

Function LFB Software Hardware Technical Functions sub Technical Functions Requirements sub Requirements

If the button is pressed, UART messages indicating the press duration are sent.

Software Layer

IN Signals (2)

Ingoing signals of runnable run_UART_send.

Signal Type Storage Runnables OUT Runnables IN Tasks SystemStates Requirements miminum Age maximum Age Checksum Force Sync Inline ISR API effective inline SIL req SIL ach Initial value (D) Pointer access (D) Datatype (D) Alt-In (D) Alt-Out (D) In-Driver (D) Out-Driver (D) OnData (D) OnError (D) OnTrigger (E)

A representation of the current button state

Data local in
0 105 false false false false false SIL_1 QM false false uRTE_boolean_t
-
-

contains the number of seconds, the button has been pressed

Data global in
Button
0 202 true false false false false QM QM 0 false button_cnt_t
-
-

OUT Signals (1)

Outgoing signals of runnable run_UART_send.

Signal Type Storage Runnables OUT Runnables IN Tasks SystemStates Requirements miminum Age maximum Age Checksum Force Sync Inline ISR API effective inline SIL req SIL ach Initial value (D) Pointer access (D) Datatype (D) Alt-In (D) Alt-Out (D) In-Driver (D) Out-Driver (D) OnData (D) OnError (D) OnTrigger (E)

Hardware Out interface for UART.
No Signal-Datatype will be defined so that a typedef will be generated into the signal configuration.
Pointer access is granted so signal memory can be used directly by the application.

Data local in
0 0 false false false false false QM QM true undefined
-
-

Software units (1)

Software units which are associated with runnable run_UART_send.

Unit Parent Function calls Technical Functions Requirements Type Tasks WCET Stack ROM Globals ProtectionSets SIL req SIL ach sub Technical Functions (R) sub Requirements (R) Has a return value (R) SystemStates (R) Ingoing Trigger Ports (R) Outgoing Trigger Ports (R) Ingoing Data Ports (R) Outgoing Data Ports (R) Signals (D) Runnables (D) DataType (D) Is Synchronous (D) Hardware (D) Ports (G) Callers (F) Return Type (F) Parameters (F)

writes Data to the UART module.
No DataType is chosen, so that a typedef file will be generated.

UART
OutDriver 0 0 0
- QM - - - - - - - - None true - - - -

Tasks (1)

Tasks runnable run_UART_send is executed by.

Task Core SIL Priority Software States Signals Init Hardware OutputSections Own TimeBase Stack

Task responsible for sending out UART protocolls

Arm® Cortex®-M4 SIL_1 5 - false .rtos.task.UART

DataTypes (2)

Datatypes runnable run_UART_send is associated with.

Type Atomic Primitive Initial value Typedef path Signals Drivers Global Variables

Saves the number of ticks an button has been pressed

false false 0 generated at src_rte\signals\types\button_cnt_t_type.h

This type used by uRTE internally and is avaiable for general purpose. Its save to delete this type if it is not needed.

true true 0 generated at src_rte\signals\types\uRTE_boolean_t_type.h

Runnables triggering (1)

Runnables triggering the execution of runnable run_UART_send.

Unit Parent Function calls Technical Functions Requirements Type Tasks WCET Stack ROM Globals ProtectionSets SIL req SIL ach sub Technical Functions sub Requirements) Has a return value SystemStates Ingoing Trigger Ports Outgoing Trigger Ports Ingoing Data Ports Outgoing Data Ports

Acquires the button state periodically and provides button signals

Button
Runnable 0 0 0
QM QM false
  • Runnable_run_readButton_Tick
  • Runnable_run_readButton_Edge_OUT
  • run_readButton_HW_IN
  • Runnable_run_readButton_Button_OUT
  • Runnable_run_readButton_button_pressed_cnt

Runnables providing data (1)

Runnables providing data for runnable run_UART_send.

Unit Parent Function calls Technical Functions Requirements Type Tasks WCET Stack ROM Globals ProtectionSets SIL req SIL ach sub Technical Functions sub Requirements) Has a return value SystemStates Ingoing Trigger Ports Outgoing Trigger Ports Ingoing Data Ports Outgoing Data Ports

Acquires the button state periodically and provides button signals

Button
Runnable 0 0 0
QM QM false
  • Runnable_run_readButton_Tick
  • Runnable_run_readButton_Edge_OUT
  • run_readButton_HW_IN
  • Runnable_run_readButton_Button_OUT
  • Runnable_run_readButton_button_pressed_cnt

Hardware Layer

Hardware Components (2)

Hardware runnable run_UART_send is associated with. Including executing CPUs, hardware referenced by its protectionSets and driver hardware of connecting signals.

Component Type Start End SIL req SIL ach Sub-Components Technical Functions sub Technical Functions Requirements sub Requirements

Arm® 32-bit Cortex®-M4 CPU with FPU, Adaptive real-time accelerator (ART Accelerator) allowing 0-wait state execution from Flash memory, frequency up to 180 MHz, MPU, 225 DMIPS/1.25 DMIPS/MHz (Dhrystone 2.1), and DSP instructions

Core - - - QM

UART module connected to pin TX/RX PA2/PA3 at 115200 8N1

Periphery USART2_BASE USART3_BASE - 1 - QM

Testing Layer

Tests (1)

Tests derived from referencing requirements.

Test User-ID Group Priority Status Procedure and Input-Data Expected Results SIL Requirements Technical-Functions Software-Units Signals Global variables Activation-Events Hardware-Components

Tests the UART functionality at the system level

Test_134 0 approved Regular power-on with a terminal connected to UART. The Button is pressed for 10 seconds. The string '--- UART WakeUp ----' is send whenever the button is pressed, followed by 'Button pressed for %d seconds.' messages, where '%d' represents the integer number of seconds the button already has been pressed.