SWComponent
UART
Contains the logic for UART handling
SWComponent
Contains the logic for UART handling
Required | |
---|---|
SILs | QM |
Base | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Name | UART | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Type | ![]() |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Contains the logic for UART handling |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User-ID | SWComponent_35 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
UID | _EYkm4OZhEeyZ2OzYlvU4PA | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
configuration | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Filename | SWC_UART | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Generated | true | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Sub-Folder | false | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
containment | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
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. |
![]() |
OutDriver | 0 | 0 | 0 | - | QM | - | - | - | - | - | - | - | - | None | true | - | - | - | - | |||||||||
Sends UART messages periodically via the UART signal |
![]() |
Runnable | 0 | 0 | 0 | QM | QM | true |
|
|
|
- | - | - | - | - | - | - | - | - | ||||||||||
Runnable to switch into the UART state if there is an event in the Blink State. |
![]() |
Runnable | 0 | 0 | 0 | QM | QM | true |
|
- | - | - | - | - | - | - | - | - |
Trigger IN ports attached to this SWC
Port | Signal event source | Container |
---|---|---|
![]() |
![]() |
Data IN ports attached to this SWC
Port | Signals | Source | Container |
---|---|---|---|
![]() |
![]() |
||
![]() |
![]() |
Data OUT ports attached to this SWC
Port | Signals | Target | Container |
---|---|---|---|
![]() |
![]() |
Hazard Scenarios for associated Hazardous Events.
Hazard Scenario | Parent | Hazard Events |
---|---|---|
This would be very sad. |
Hazardous Events for associated Safety Goals.
Hazardous Event | Parent | Probability | Controllability | Effect | SIL | Safety-Goals |
---|---|---|---|---|---|---|
The user might think µRTE is hard to use. |
QM | |||||
The customer might not see the full spectrum of features µRTE comes with. |
QM |
Safety Goals linking to the Requirements.
Safety Goal | Parent | Function Type | SIL derived | SIL manual | SIL effective | Safe State | Safety Requirements |
---|---|---|---|---|---|---|---|
An small demo model with the most important features shall show the most important features of µRTE. |
System_Function | QM | derived | QM | Show slides |
|
Requirements mapped to software units in this SWC.
(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 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
uRTE allows the definition of multiple system-states where each state has an own data-flow. |
SafetyRequirement_98 | Wed Jun 08 17:52:52 CEST 2022 | 0.0 | product | functional | implemented | System_Function | QM | derived | QM | ||||||||||||||||||
Show how protection sets can be used to grant access to hardware. |
SafetyRequirement_115 | Fri Jun 10 14:24:52 CEST 2022 | 0.0 | product | functional | implemented | System_Function | QM | derived | QM | ||||||||||||||||||
Demonstrate the use of scalers and validators. |
SafetyRequirement_111 | Thu Jun 09 20:52:41 CEST 2022 | 0.0 | product | functional | approved | System_Function | QM | derived | QM | ||||||||||||||||||
When the button is pressed, the system-state shall change from Blink into UART mode. |
Requirement_95 | Thomas Barth | Wed Jun 08 17:56:19 CEST 2022 | 0.0 | Thomas Barth | product | functional | implemented | - | - | - | - |
|
Technical functions mapped to software functions in this SWC.
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. |
Tasks executing software units in this SWC
Task | Core | SIL | Priority | Software | States | Signals | Init | Hardware | OutputSections | Own TimeBase | Stack |
---|---|---|---|---|---|---|---|---|---|---|---|
Task responsible for sending out UART protocolls |
![]() |
SIL_1 | 5 | - | false | ![]() |
Signals used by the runnables in this SWC
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. |
Data | local in |
0 | 0 | false | false | false | false | false | QM | QM | true | undefined | - | - | |||||||||||
A representation of the current button state |
Data | local in |
0 | 105 | false | false | false | false | false | SIL_1 | QM | false | false | ![]() |
- |
|
- | |||||||||
contains the number of seconds, the button has been pressed |
Data | global in ![]() |
0 | 202 | true | false | false | false | false | QM | QM | 0 | false | ![]() |
- | - | ||||||||||
Fired whenever the button is pressed (but not if it is released) |
Event | local in |
0 | 0 | false | false | false | false | false | QM | QM | - | - | - | - | - | - | - | - | - |
|
Runnables in other SWCs triggering runnables in this SWC.
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 |
![]() |
Runnable | 0 | 0 | 0 | QM | QM | false |
|
|
|
|
Runnables in other SWCs providing data for the runnables in this SWC.
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 |
![]() |
Runnable | 0 | 0 | 0 | QM | QM | false |
|
|
|
|
Trigger IN ports attached to the runnables in this SWC.
Port | Events | Signal event source | Container | Task | Guard | Order |
---|---|---|---|---|---|---|
![]() If an event comes in, the runnable shall switch the state to UART to start the periodic sending |
|
![]() |
![]() |
0 | ||
![]() |
|
![]() |
![]() |
0 |
Cores executing the software units of this SWC and hardware references by the drivers.
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 |
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. |