Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit2b1661f

Browse files
committed
8.0.1
changed ports to ARM-CM, BASEPRI critical sectionupdated qp_config.hpp filesupdated examplesfixed arm-cr ports, GNU compiler, ARM mode, QF_INT_ENABLE_ALL() macro
1 parentc1a9c48 commit2b1661f

29 files changed

+770
-1309
lines changed

‎cmakeSupport.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ This file is situated in the root directory of qpcpp. It performs a pre-initiali
7676
+`arm-cm`,`arm-cr` - Arm CortexM or CortexR micro controllers. Tested with GNU cross compiler environments.
7777
+`freertos`,`esp-idf`,`emb-os`,`threadx`,`uc-os2` - real time OS
7878
+`msp430`,`pic32` - TI MSP430 or PIC32 micro controllers
79-
+`riscv`- Risc VµC
79+
+`riscv`- Risc Vmicro controllers
8080
+`qep-only`,`qube` - test environments
8181
+`win32`,`posix` - host environments MS Windows, Linux (Posix compatible systems)
8282
*`QPCPP-CFG-GUI` - BOOL: set this Boolean variable to ON/TRUE, if GUI support (win32) shall be compiled in. Default: OFF

‎examples‎

Submoduleexamples updated211 files

‎include/qp.hpp‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,9 @@
3636
#defineQP_HPP_
3737

3838
//============================================================================
39-
#defineQP_VERSION_STR"8.0.0"
40-
#defineQP_VERSION800U
41-
#defineQP_RELEASE0x7055936FU
39+
#defineQP_VERSION_STR"8.0.1"
40+
#defineQP_VERSION801U
41+
#defineQP_RELEASE0x703931CEU
4242

4343
//============================================================================
4444
//! @cond INTERNAL

‎ports/arm-cm/qk/config/qp_config.hpp‎renamed to ‎ports/arm-cm/config/qp_config.hpp‎

Lines changed: 72 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
//============================================================================
2-
// QP configuration file (QK on ARM Cortex-M)
2+
// QP configuration file (QV/QK/QXK on ARM Cortex-M)
33
//
44
// Copyright (C) 2005 Quantum Leaps, LLC. All rights reserved.
55
//
@@ -59,19 +59,19 @@
5959
// <i> * Hard-limits for all loops
6060
// <i> * Memory Isolation by means of Memory Protection Unit (MPU)
6161

62-
// <c3>Disable QP FuSa in development
62+
// <c3>Disable QP FuSa in development (NOT recommended)
6363
// <i>Disable assertions and other self monitoring features
6464
// <i>in development build configurations (NDEBUG undefined).
65-
// <i>VIOLATES functional safetystandards. NOT recommended !!!
65+
// <i>NOTE: Disabling safety*violates* functional safety standards.
6666
//#ifndef NDEBUG
6767
//#define Q_UNSAFE
6868
//#endif
6969
// </c>
7070

71-
// <c3>Disable QP FuSa in production release
72-
// <i>Disable assertions and otherself monitoring features
71+
// <c3>Disable QP FuSa in production release (NOT recommended)
72+
// <i>Disable assertions and othersafety features
7373
// <i>in the release build configurations (NDEBUG defined).
74-
// <i>VIOLATES functional safetystandards. NOT recommended !!!
74+
// <i>NOTE: Disabling safety*violates* functional safety standards.
7575
//#ifdef NDEBUG
7676
//#define Q_UNSAFE
7777
//#endif
@@ -80,7 +80,7 @@
8080
// </h>
8181

8282
//..........................................................................
83-
// <h>QEP Event Processor
83+
// <h>QEP Event Processor (Events)
8484
// <i>Events and state machines.
8585

8686
// <o>Event signal size (Q_SIGNAL_SIZE)
@@ -94,7 +94,7 @@
9494
// </h>
9595

9696
//..........................................................................
97-
// <h>QF Framework
97+
// <h>QF Framework (Active Objects)
9898
// <i>Active Object framework
9999

100100
// <o>Maximum # Active Objects (QF_MAX_ACTIVE) <1-64>
@@ -120,21 +120,6 @@
120120
// <i>Default: 1
121121
#defineQF_MAX_TICK_RATE1U
122122

123-
// <c1>Event parameter initialization (QEVT_PAR_INIT)
124-
// <i>Resource Acquisition Is Initialization (RAII) for dynamic events
125-
//#define QEVT_PAR_INIT
126-
// </c>
127-
128-
// <c1>Provide destructors for QP classes
129-
// <i>Destructors for classes
130-
//#define Q_XTOR
131-
// </c>
132-
133-
// <c1>Active Object stop API (QACTIVE_CAN_STOP)
134-
// <i>Enable Active Object stop API (Not recommended)
135-
//#define QACTIVE_CAN_STOP
136-
// </c>
137-
138123
// <o>Event size (QF_EVENT_SIZ_SIZE)
139124
// <1U=>1
140125
// <2U=>2 (default)
@@ -174,15 +159,75 @@
174159
// <i>Default: 2 (64K bytes maximum block size)
175160
#defineQF_MPOOL_SIZ_SIZE2U
176161

162+
// <c2>Enable event parameter initialization (QEVT_PAR_INIT)
163+
// <i>Initialize parameters of dynamic events at allocation
164+
// <i>(Resource Acquisition Is Initialization (RAII) for dynamic events)
165+
//#define QEVT_PAR_INIT
166+
// </c>
167+
168+
// <c1>Provide destructors for QP classes
169+
// <i>Presence of destructors pulls in the C++ delete() opeator
170+
// <i>NOTE: Not recommended
171+
//#define Q_XTOR
172+
// </c>
173+
174+
// <c1>Enable active object stop API (QACTIVE_CAN_STOP)
175+
// <i>NOTE: Not recommended
176+
//#define QACTIVE_CAN_STOP
177+
// </c>
178+
179+
// <c1>Enable context switch callback *without* QS (QF_ON_CONTEXT_SW)
180+
// <i>Context switch callback QF_onContextSw() when Q_SPY is undefined.
181+
//#ifndef Q_SPY
182+
//#define QF_ON_CONTEXT_SW
183+
//#endif
184+
// </c>
185+
186+
// <c1>Enable context switch callback *with* QS (QF_ON_CONTEXT_SW)
187+
// <i>Context switch callback QF_onContextSw() when Q_SPY is defined.
188+
//#ifdef Q_SPY
189+
//#define QF_ON_CONTEXT_SW
190+
//#endif
191+
// </c>
192+
193+
// <c2>Enable memory isolation (QF_MEM_ISOLATE)
194+
// <i>Memory isolation (requires MPU)
195+
// <i>NOTE: implies QF_ON_CONTEXT_SW.
196+
//#define QF_MEM_ISOLATE
197+
// </c>
198+
177199
// </h>
178200

179201
//..........................................................................
180-
// <h>QS Software Tracing
202+
// <h>QV/QK/QXK built-in kernels (ARM Cortex-M)
203+
204+
// <c2>Kernel uses critical section based on BASEPRI (QF_USE_BASEPRI)
205+
// <i>If not selected, critical section will be based on PRIMASK
206+
// <i>NOTE: The BASEPRI threshold can be adjusted in the "Text Editor" mode.
207+
//#define QF_USE_BASEPRI 0x3F
208+
// </c>
209+
210+
// <c2>QK Kernel uses IRQ for return-from-preemption
211+
// <i>NOTE: Use "editor mode" to edit QK_USE_IRQ_NUM
212+
// <i>NOTE: Use "editor mode" to edit QK_USE_IRQ_HANDLER
213+
//#define QK_USE_IRQ_NUM NNN
214+
//#define QK_USE_IRQ_HANDLER XXX_IRQHandler
215+
// </c>
216+
217+
// <c2>QXK Kernel uses IRQ for return-from-preemption
218+
// <i>NOTE: Use "editor mode" to edit QXK_USE_IRQ_NUM
219+
// <i>NOTE: Use "editor mode" to edit QXK_USE_IRQ_HANDLER
220+
//#define QXK_USE_IRQ_NUM NNN
221+
//#define QXK_USE_IRQ_HANDLER XXX_IRQHandler
222+
// </c>
223+
224+
// </h>
225+
226+
//..........................................................................
227+
// <h>QS Software Tracing (Q_SPY)
181228
// <i>Target-resident component of QP/Spy software tracing system
182229
// <i>(tracing instrumentation and command-input).
183-
184-
// <n>NOTE: Requires command-line macro: Q_SPY
185-
// <i>The QS software tracing instrumentation is activated only when
230+
// <i>NOTE: The QS software tracing instrumentation is activated only when
186231
// <i>the macro Q_SPY is defined on the command-line to the compiler.
187232
// <i>Typically, Q_SPY is defined only in the "spy" build configuration.
188233

@@ -204,47 +249,6 @@
204249

205250
// </h>
206251

207-
//..........................................................................
208-
// <h>QK Preemptive Non-Blocking Kernel
209-
// <i>Preemptive non-blocking/blocking RTOS kernel.
210-
211-
// <h>Context switch callback (QF_ON_CONTEXT_SW)
212-
213-
// <c2>Context switch callback WITHOUT QS
214-
// <i>Enable context switch callback QF_onContextSw()
215-
// <i>When Q_SPY is undefined.
216-
//#ifndef Q_SPY
217-
//#define QF_ON_CONTEXT_SW
218-
//#endif
219-
// </c>
220-
221-
// <c2>Context switch callback WITH QS
222-
// <i>Enable context switch callback QF_onContextSw()
223-
// <i>When Q_SPY is defined.
224-
//#ifdef Q_SPY
225-
//#define QF_ON_CONTEXT_SW
226-
//#endif
227-
// </c>
228-
229-
// </h>
230-
231-
// <c2>MPU memory isolation (QF_MEM_ISOLATE)
232-
// <i>Enable memory isolation (requires MPU)
233-
// <i>NOTE: implies QF_ON_CONTEXT_SW.
234-
//#define QF_MEM_ISOLATE
235-
// </c>
236-
237-
// <c4>Use IRQ handler for QK return-from-preemption
238-
// <i>Enable this option only if the NMI handler is used in the project.
239-
// <i>If enabled, provide the otherwise unused IRQ number (QK_USE_IRQ_NUM)
240-
// <i>and the corresponding IRQ handler name (QK_USE_IRQ_HANDLER)
241-
// <i>in the "Text Editor" mode.
242-
//#define QK_USE_IRQ_NUM <adjust to your MCU>
243-
//#define QK_USE_IRQ_HANDLER <adjust to your MCU>
244-
// </c>
245-
246-
// </h>
247-
248252
//------------- <<< end of configuration section >>> -----------------------
249253

250254
#endif// QP_CONFIG_HPP_

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp