Skip to content

Developed an interactive multimedia center on the MCB1700 Development Board (LPC1768 Microcontroller), integrating an LCD, joystick, potentiometer, and LEDs to implement multimedia functionalities.

Notifications You must be signed in to change notification settings

safhossain/ARM_Cortex-M3_Embedded-Media-Center

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project Goal

In this project, a multimedia center was developed on an MCB1700 Development Board featuring the LPC1768 microcontroller. The goal was to explore the capabilities of the ARM Cortex-M3 architecture in embedded systems applications, as well as to be familar with the tools provided by the Keil µVision IDE. The MCB1700 board is equipped with several modules, including an LCD, joystick, potentiometer, and LEDs, which were utilized to create an interactive user interface and multimedia functionalities.

MCB1700 Devboard

Applications

The multimedia center has a menu-driven system that allows users to navigate through various applications: an image gallery, an audio player, and a collection of games. The image gallery displays pre-loaded images that users can scroll through using the joystick. The audio player streams audio from a connected computer via USB to the board’s speaker, effectively turning the board into a secondary audio device. The gaming section includes implementations of Tic-Tac-Toe, a maze game, and an homage to a joke related to the movie “Kung Fu Panda.” All this in combination provided interactive entertainment and demonstrated real-time input handling and graphics rendering on an embedded system.

The main menu serves as the entry point of the multimedia center, providing navigation to the different applications. The image gallery allows users to scroll through a set of preloaded images. Images were converted to C-source format using GIMP, ensuring they are in a compatible RGB565 (16-bit). The audio player streams audio from a connected computer via USB to the LPC1768’s output. A maze game where the player navigates through a maze using the joystick to reach an exit. The maze is represented as a 2D character array, and the LCD displays the maze grid. A two-player Tic-Tac-Toe game implemented with state transitions to manage cursor movements and game logic. The appli cation also has a reset and return capability. Finally, an homage to a joke related to the movie “Kung Fu Panda,” serving as an Easter egg

Main Menu Photo Gallery - One Piece Logo
Audio Player program featuring Beethoven Maze Game Level 2
Tic Tac Toe - Player X Wins Dragon Warriro Scroll (empty screen)

System Design

Abstractions

Custom helper files (e.g., GLCD.h, KBD.h, LED.h, etc.) provided abstraction layers for hardware interaction (including my own-written display.h header file to simplify GLCD function calls), simplifying the main application code and allowing for easier hardware management.

State Diagrams

The overall program (main menu) state diagram is shown below:

Maze Game State Diagram

The maze game state diagram is shown below:

Maze Game State Diagram

The tic-tac-toe game state diagram is shown below:

Maze Game State Diagram

About

Developed an interactive multimedia center on the MCB1700 Development Board (LPC1768 Microcontroller), integrating an LCD, joystick, potentiometer, and LEDs to implement multimedia functionalities.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published