Embedded GUI Library Development

Detta är en Uppsats för yrkesexamina på avancerad nivå från Uppsala universitet/Solcellsteknik

Författare: Sofia Dreborg; [2022]

Nyckelord: GUI; Embedded Systems; Microcontroller; MCU;

Sammanfattning: This project aimed to create a simple open-source embedded graphical user interface library that could be used on more or less any microcontroller platform. The programming language was intended to be C++ for the GUI but as the project evolved C was chosen above C++. This was a decision based primarily on the fact that STM's development environment, STMCubeIDE, is less compatible with C++. The IDE offers great hardware support which in the end was more important than the advantages given by C++. The hardware used in this project was an STM32F469 microcontroller. It has an ARM CortexM4 processor core and 2 Mbyte of flash memory and 384 Kbytes of RAM. Wrapper functions for the Board Support Package, BSP, were written as a part of the library to allow easy access tothe BSP needed for the hardware configuration. The first part of the project goal was achieved, a simple GUI library was created. The resulting GUI library supports user interaction through buttons, it can display the current time andvisualizes given data in graphs. The graph function can display the data live, as a scatter plot, a bar plot and a line plot. The library also supports an alarm function that allows the user to decide what will happen after the alarm time is up. However, even though the GUI library was written to be device-independent, the product has not been tested on other platforms. For further development, this GUI library could be tested on another microcontroller. This would provide answers to how much software changes are needed to make the product as hardwareindependent as possible. To make the library lighter and faster, there is a possibility of optimizing the GUI core. 

  HÄR KAN DU HÄMTA UPPSATSEN I FULLTEXT. (följ länken till nästa sida)