@@ -4,73 +4,121 @@ Please refer to the companion webiste to this project at:
44https://www.state-machine.com/arduino
55
66----
7- #Software Installation on Windows
7+ # Software Installation
88
99The QP adaptation for Arduino is distributed in a single ZIP
10- archive qp-<ver >_ arduino-1.8.x.zip, where <ver > stands for version of
11- the QP frameworks.
12-
13- You need to unzip the qp-<ver >_ arduino-1.8.x.zip archive into your
14- Arduino- Sketchbook folder. To find out where your Sketchbook folder is,
15- or to configure a different location for your Sketchbook folder, you
16- need to open the Arduino IDE and select File | Preferences menu. The
17- sketchbook location will be shown at the top of the Preferences dialog
18- box. Once you identify the Sketchbook folder, you simply unzip the whole
19- archive to your Sketchbook .
10+ archive ` qp-<ver>_arduino-1.8.x.zip ` , where ` <ver> ` stands for
11+ the version of the QP frameworks.
12+
13+ You need to unzip the ` qp-<ver>_arduino-1.8.x.zip ` archive into your
14+ Arduino ` < Sketchbook> ` folder. To find out where your ` < Sketchbook> ` folder
15+ is, or to configure a different location for your ` < Sketchbook> ` folder,
16+ you need to open the Arduino IDE and select ` File| Preferences ` menu.
17+ The Sketchbook location will be shown at the top of the Preferences
18+ dialog box. Once you identify the ` < Sketchbook> ` folder, you simply unzip
19+ the whole ` qp-<ver>_arduino-1.8.x.zip ` archive to this folder .
2020
2121----
22- #Provided Libraries
22+ # Provided Libraries
2323
24- The archive qp-<ver >_ arduino-1.8.x.zip contains two external libraries
24+ The archive ` qp-<ver>_arduino-1.8.x.zip ` contains two external libraries
2525for Arduino:
2626
27- - qpcpp_sam -- QP/C++ framework for SAM-based Arduinos (ARM Cortex-M)
28- - qpn_avr -- QP-nano framework for AVR based Arduinos
27+ - ` qpcpp_sam ` -- QP/C++ framework for SAM-based Arduinos
28+ - ` qpn_avr ` -- QP-nano framework for AVR-based Arduinos
29+
30+ After the installation, your Arduino ` <Sketchbook> ` folder should look
31+ as follows:
32+
33+ <Sketchbook>/ - your Arduino Sketchbook folder
34+ |
35+ +-libraries/ - libraries folder
36+ | +-qpcpp_sam/ - QP/C++ library for SAM-based Arduinos
37+ | | +-examples/ - QP/C++ library examples
38+ | | | +-blinky/ - Blinky example
39+ | | | | +-blinky.ino - Blinky code (generated)
40+ | | | | +-blinky.qm - Blinky model (for QM tool)
41+ | | +-src/ - QP/C++ library source code
42+ | | | +-qpcpp.h - QP/C++ library header file
43+ | | | +-... - QP/C++ library sources
44+ | | +-library.properties - QP/C++ library properties
45+ | |
46+ | +-qpn_avr/ - QP-nano library for AVR-based Arduinos
47+ | | +-examples/ - QP-nano library examples
48+ | | | +-blinky/ - Blinky example
49+ | | | | +-blinky.ino - Blinky code (generated)
50+ | | | | +-blinky.qm - Blinky model (for QM tool)
51+ | | | +-dpp/ - Dining Philosophers Problem (DPP)
52+ | | | | +-dpp.ino - DPP code (generated)
53+ | | | | +-dpp.qm - DPP model (for QM tool)
54+ | | | +-pelican/ - PEdestrian LIghtr CONtrolled crossing
55+ | | | | +-pelican.ino - PELICAN code (generated)
56+ | | | | +-pelican.qm - PELICAN model (for QM tool)
57+ | | +-src/ - QP-nano library source code
58+ | | | +-qpn.h - QP-nano library header file
59+ | | | +-... - QP-nano library sources
60+ | | +-library.properties - QP-nano library properties
61+ |
62+ +-README.md - this file
63+ +-QP-Arduino-Playground - web link to QP on Arduino Playground
64+ +-QP-Arduino_GPL_Exception.txt - GPL exception for QP on Arduino
2965
3066
3167----
32- #Working with the Examples
68+ # Working with the Examples
3369
34- Each QP library contains the examples sub-directory, which contans the
35- QM model file and the generated code. The intended way of working with
36- the examples is to use the QM modeling tool to modify the state diagrams
37- and the code, and to use the Arduino IDE only to build and upload
38- the code to the Arduino board(s).
39-
70+ Assumming that you have installed the QP libraries in your ` <Sketchbook> `
71+ folder, the examples provided in each QP library show up in the Arduino
72+ IDE under the menu:
4073
41- > NOTE: The preferences in the Arduino IDE should be set up to
42- "Use external editor" so that the IDE will update the code each time
43- it is re-generated by the QM modeling tool.
74+ ` File|Examples|Examples from Custom Libraries `
4475
76+ The intended way of working with the examples is to use the
77+ [ QM modeling tool] ( https://www.state-machine.com/qm/ ) to modify the
78+ ** models** (` .qm ` files) and then to ** generate code** from these
79+ models. In this scenario, the Arduino IDE is used only to build and
80+ upload the code to the Arduino board(s).
4581
46- When you unzip the archive into your Sketchbook directory, the examples
47- provided in each QP library shows up in the Arduino IDE under the menu:
82+ > ** NOTE:** The preferences in the Arduino IDE should be set up to
83+ ** Use external editor** so that the IDE will update the code each time
84+ it is re-generated by the QM modeling tool.
4885
49- File|Examples|Examples from Custom Libraries
5086
87+ ----
88+ # Example Documentation
89+
90+ Each example model has documentation, which you can view in the QM tool.
91+ The model documentation shows in the Property Editor when the model item
92+ is active.
93+
5194
5295----
53- #Licensing
96+ # Licensing
5497
5598The QP real-time embedded frameworks for Arduino are licensed under the
56- modified GPLv3 license with the QP-Arduino Exception (see file
57- QP-Arduino_GPL_Exception.txt in the root of the archive). Specifically,
58- the Exception removes the requirement to expose your propriatory source
59- code as long as you deploy it on an Arduino-Certified board.
99+ modified GPLv3 license with the
100+ [ QP-Arduino Exception] ( https://www.state-machine.com/licensing/QP-Arduino_GPL_Exception.txt )
101+ (see also the file QP-Arduino_GPL_Exception.txt in the root of the archive).
102+ Specifically, the Exception removes the requirement to expose your
103+ propriatory source code as long as you deploy it on an Arduino-Certified
104+ board.
60105
61- The QM graphical modeling tool is freeware. The QM tool is provided
62- under the terms of a simple End-User License Agreement (EULA).
106+ The [ QM model-based design tool] ( https://www.state-machine.com/qm/ ) is freeware.
107+ The QM tool is provided under the terms of a simple
108+ [ End-User License Agreement (EULA)] ( https://www.state-machine.com/qm/license.html ) .
63109
64110
65111----
66- #Documentation
112+ # Companion Web Page
67113
68- Please refer to the companion webiste to this project at:
114+ Please refer to the companion web page to this project at:
69115
70116https://www.state-machine.com/arduino
71117
72118
73- Support Questions
74- =================
119+ ----
120+ # Support Questions
121+
75122Please submit any questions or comments to the free QP support forum at:
123+
76124https://sourceforge.net/p/qpc/discussion/668726
0 commit comments