SensorRF
−
GEVK
3
SensorRF
−
GEVK Application Programming Interface
The SensorRF
−
GEVK Demo application was developed
in C++/C and utilizes the Qt Toolkit along with the QWT
graphical library for the Temperature and Moisture
demonstrations. The application makes use of the Linux
Socket interface to communicate with the Reader and to
communicate with external devices through one of the
remote interfaces available. We have developed our own
API for the AMS Radon Reader, which makes available a set
of commands to perform the operations that demonstrate the
capabilities of battery-free sensors from ON Semiconductor
and more. The API makes use of the commands made
available by the AMS Radon Reader firmware, which we
also modified for the API. Please see Figure 4 below for
a depiction of the APIs available with the SensorRF
−
GEVK
platform.
Figure 4. SensorRF
−
GEVK Platform APIs
C++/C
AMS Radon
Reader API
Linux
®
Socket
Interface
Qt Toolkit
QWT Lib
The Modules of the Demo Application
Now that we have described the Software Architecture of
the Demo application and the APIs it uses, we can move to
describing its modules in more detail. We will focus on the
most important operations performed by those modules.
Graphical User Interface (GUI)
The GUI module is depicted in the figure below. The
module is defined in the
gui_view
files and it utilizes the
hermes
,
chart
,
chart_thread
and
configdialog
files to carry
out its operations. The
configdialog
files in turn utilize the
pages
files to carry out its operations. The most important
operations these files contain are as follows:
•
gui_view:
Defines the resources needed for the GUI,
most importantly the hermes wizard.
•
hermes:
Defines the Main, Temperature, and Moisture
windows (or pages) of the GUI, which includes all the
controls and indicators for each window.
•
chart:
Defines both the Temperature and the Moisture
charts.
•
chart_thread:
Defines the Chart thread that is spawned
to offload the intense process of collecting temperature
and sensor codes for the Temperature and Moisture
charts from the GUI thread.
•
configdialog:
Defines the Details, Settings, Calibration
and Help dialogs found in the Temperature and
Moisture Demo windows.
•
pages:
Defines the pages of the dialogs mentioned
above, which includes all the controls and indicators for
each dialog.
Figure 5. Demo Application GUI Module
GUI
gui_view .h/.cpp
hermes .h/.cpp
configdialog .h/.cpp
chart .h/.cpp
pages
chart_thread .h/.cpp