![Microchip Technology ATWINC 15x0 Developer'S Manual Download Page 19](http://html1.mh-extra.com/html/microchip-technology/atwinc-15x0/atwinc-15x0_developers-manual_1785757019.webp)
4.4
Software Customization
4.4.1
Architecture
MCU firmware application starts with
main.c
file. It then runs into a while loop after board initialization.
The while loop keeps running the following functions:
• wifiTaskExecute() – to handle all the Wi-Fi related functions including the cloud connection, message
exchange between the cloud, network configuration, and so on.
• buttonTaskExecute(ms_ticks) – to check the button state and trigger the callback function.
• env_sensor_execute() – to read the sensor value and trigger the callback function.
The following figure shows the firmware architecture. There are middleware modules between the
application layer and the device drivers layer. Developers can easily develop the application by using
middleware APIs to configure the device drivers. Device drivers layers include:
• WINC15x0 Wi-Fi module host driver
• Environment sensor driver
• Light sensor driver
• Crytoautholib for ECC608
• ASF
• JSON library
Figure 4-6. Firmware Architecture
Environment
sensor
Light sensor
Crytoauthlib
ASF
WINC15x0
HostDriver
JSON LIB
Device Drivers
CLOUD
WRAPPER
IoT
Message
Sensor
Button
LED
WLAN/Socket
Middleware
Application
Environment
ATWINC15x0 Smart Device Kit
Application Firmware
©
2019 Microchip Technology Inc.
User Guide
DS50002885A-page 19