MCF52259 MIDI Player

This program, written in a combination of C and Coldfire-series assembly, was written for a Freescale TWR-MCF52259 project tower, which utilizes Coldfire microprocessor. The program controls the microprocessor and utilizes memory-mapped IO to interface with various components on the project board and complete a series of tasks.

This particular program utilizes UART to read a MIDI file from an external device and decodes it. It then, using DMA timers and interrupts, commands an onboard speaker and LED matrix to play the song at a variable BPM (controlled by an onboard switch) and display an animation in time with the song on the tower's LED matrix.

Click here to view a video of the program's execution on the MCF52259 board.