Documente Academic
Documente Profesional
Documente Cultură
Yes
Shows functional behavior
process_serial_data()
Conditional Decisions
No Full Message
Received?
High Level Function Calls
Yes
process_message()
Software Block Diagram
C-Files are modules
nrf24.c
Device nrf_write_reg() nrf_read_reg()
Specific
Many definitions
spi_write_n() spi_read_n()
spi.c
Functions interact Firmware spi_write() spi_read()
with other modules
port.c
set_pin()
Eventually interact
with Hardware Hardware SPI Peripheral Module
Layer
GPIO Hardware
Software in Layers
Device Drivers
Interface to hardware layers Applications
HAL Hardware Abstraction Layer
Middleware Libs
Code Booting
Operating System
Operation System (OS)
Abstracts High from Low levels
Scheduling Drivers Bootloader
Resource management
Hardware
Libraries for shared code
Hardware Abstraction
spi.c
Firmware
port.c
set_pin() spi_write() spi_read()
Portable Interface
SPI Peripheral Module
Hardware
Layer GPIO Hardware
Software Components
Freedom Freescale KL25z
Nordic_Lib
UART_Lib
New Component SPI_Lib Older
can slide in LED_Lib Component is
utilizing the same SPI FW KL25z UART FW KL25z removed and
interface with becomes legacy
SPI Peripheral UART Peripheral
lower Levels
Module Module
GPIO HW
RGB nRF24L01+
LED Module Off-Board
Software Engineer Tools
Simulators
Emulators
Compilers
Installers
Debuggers
Software Engineer Tools
Simulators
Require a host system
Emulators and software
applications to run these
tools
Compilers
Installers
Debuggers
Software Engineer Tools
Programmer/Debuggers
Simulators
Emulators
Compilers