This page contains demo project for Mikromedia 5 for Tiva C Series development board from Mikroelektronika. Board is built around Texas Instruments TM4C129xNCZAD high-performance Tiva™ C Series ARM® Cortex™-M4F microcontroller (MCU) with following features: 120 MHz operation, 1 MB of Flash, 256 KB of SRAM, µDMA controller, on-chip LCD controller etc. Additionaly, mikromedia 5 is equipped with 5 inch 800x480px display with resistive touch screen and number of on-bord modules such as wireless processor, mp3 audio decoder, SD card slot, piezo buzzer, LEDs, 3-axis accelerometer, power management circuit and so on. Such compact development board allows easy development of devices with multimedia contents. Mikroelektronika has number of similar (mikromedia) development boards built around different MCUs, but mikromedia 5 for Tiva C Series stands out in terms of display drive. While most of mikromedia boards use external graphics controller (such as SSD1963) for driving the display, this board uses on-chip LCD controller. Combined with on-chip EPI (External peripheral interface) module for interfacing external SDRAM as frame buffer and DMA for data transfer high display refresh rate can be achieved while at same time MCU core can be relieved and memory consumption optimized. Such design puts this mikromedia board among fastest in Mikroelektronika’s portfolio.
UI interface in this project is built using Light and Versatile Graphics Library or simply LVGL. LVGL is increasingly popular free and open-source embedded graphics library to create beautiful UIs for practically any MCU and display type. It comes with number of built-in widgets (buttons, charts, lists, sliders…), advanced graphics features (animations, anti-aliasing, opacity…), extensive documentation with detailed tutorials and examples, as well as good support. LVGL is fully customizable, hardware independent (but support hardware specific design) and scalable embedded graphics framework. Within comprehensive TivaWare SDK (software development kit) Texas Instruments provides its own graphics library called Grlib. However, Grlib is collection of basic graphics functions and widgets. Using LVGL saves time and enables easy development of stunning UIs.
Demo project provided below uses almost all mikromedia 5 for Tiva C on-board modules (LCD+EPI display driver, TSC2006 touch controller, VS1053 mp3 audio codec, CC3100 wireless network processor, nRF24L01P 2.4GHz Transceiver, ADXL345 accelerometer, TSOP6238 IR receiver using NEC protocol, MCP9700A Temperature sensor, PIN photodiode, on-chip RTC module,…) and utilizes most of the LVGL built-in widgets. It is built using following ecosystem:
- Mikromedia 5 for Tiva C schematic: pdf