
Tiva TM4C1297
TI RTOS
TivaWare (Peripheral Library)
DLP Spectrum Library
Command Handler
USB
Driver
Scan Handler
GAP
GATT
Attribute Protocol
L2CAP
HCI
HID
Protocol
FAT File
System
SDSPI
Driver
Main Application
Link Controller
RF
HCI
CC2564MODN
Bluetopia Stack
TMP006
Handler
HDC1000
Handler
Chapter 5
DLPU030B – June 2015 – Revised July 2015
DLP NIRscan Nano Software
5.1
Overview
The DLP NIRscan Nano's Tiva microprocessor is the system's main control processor. The Tiva handles
button presses, commands and data transfers over USB or Bluetooth, controls the DLP subsystem,
streams the patterns to select specific wavelengths, captures data from InGaAs detector, activates lamps,
and stores data in the microSD card. Due to the realtime nature of the system, the Tiva software includes
TI-RTOS that coordinates tasks while handling realtime interrupts and semaphores. Low-level drivers for
Tiva's USB, GPIO, EPI, I
2
C, LCD, SPI, and UART peripherals are handled by TivaWare libraries and
routines. The Bluetopia Stack handles Bluetooth communications. DLP Spectrum Library handles pattern
generation and data transformation from raw scan data to a wavelength spectrum. A command handler
interprets commands from USB or Bluetooth and starts the tasks needed to execute the commands. The
main application initializes the system and waits for commands from USB and Bluetooth. The overall
software architecture depicting these components is shown in
Figure 5-1. DLP NIRscan Nano Software Architecture
5.1.1 TI RTOS
TI RTOS is a scalable, real-time operating system that handles scheduling and synchronization of tasks,
interrupts, includes a limited set of drivers, and provides hardware abstraction layer to ease application
software development. The TI RTOS also includes the FAT file system (FATFs) module to store data in
the microSD card. The TI RTOS drivers used by DLP NIRscan Nano are:
•
I
2
C: driver used for Tiva communication with DLPC150, TMP006, and HDC100.
•
SDSPI: SPI driver for Tiva communication with SDcard.
•
USBMSCHFatFS: driver for USB mass storage class.
35
DLPU030B – June 2015 – Revised July 2015
DLP NIRscan Nano Software
Copyright © 2015, Texas Instruments Incorporated