Introduction

The example application provides a port of the FreeRTOS kernel and demonstrates how to build a basic application using the ATmega4809 AVR® microcontroller, and how to trace the code run time using Percepio Tracealyzer 4.

Having trace capabilities gives you real-time insight into the behavior of the system to ease development, debugging, validation and optimization of the code.

  • Runs at 3.3V and 10 MHz
  • The application will blink LED0 on ATmega4809 Xplained Pro
  • Use SW0 on the ATmega4809 Xplained Pro to toggle between views on the OLED display
  • Use SW1 on the ATmega4809 Xplained Pro to trigger an external interrupt
  • Welcome View
    • Displays device and FreeRTOS information
    • Displays how to switch between views and trigger the ISR
    • When the Welcome view is active, the buttons on the OLED1 Xplained Pro have no function
  • Time and Temperature View
    • Displays time and temperature of the device
    • In this view, while holding down Button 2 it is possible to adjust the time using Button 1 (hours) and Button 3 (minutes)
  • Bubble Sort and Quick Sort Views
    • In both these views, 100% of the CPU is used for sorting unless any higher or same priority tasks are ready
    • The OLED displays in text and bar graph how many sorts/sec the device can do on a array of 30 integers
    • The user can keep the CPU busy by pushing buttons 1-3 multiple times and see the bar graph change as sorts/sec goes down
    • Pushing SW1 will suspend the current sorting task and update the OLED display
    • Pushing SW1 again will resume the task