Skip to content

laith204/COMPE_375

Repository files navigation

COMPE 375 – Embedded Systems & Microcontroller Programming

πŸ“Œ Overview

This repository contains coursework and lab projects from COMPE 375, a course focused on embedded systems and microcontroller programming. The course utilized the ATmega328PB Xplained development board along with Atmel/Microchip Studio for writing, compiling, and flashing code to the microcontroller. Labs covered fundamental embedded concepts such as LED control, UART communication, keypad scanning, PWM, and sound generation.

πŸ›  Tools & Technologies

  • Microcontroller: ATmega328PB Xplained Development Board
  • IDE: Atmel/Microchip Studio
  • Communication Interface: UART (tested using PUTTY)
  • Programming Language: C

πŸ“‚ Lab Topics

Each lab introduced and built upon core embedded system concepts:

  • πŸ”Ή Lab 0 – LED Blinking – Basic GPIO control for toggling an LED
  • πŸ”Ή Lab 1 – Name Display & Morse Code – Displayed my name using an LED and converted it into Morse code
  • πŸ”Ή Lab 2 – UART Communication – Sent my name and ID through UART and received it on a PC using PUTTY
  • πŸ”Ή Lab 3 – 4x4 Keypad Scanner – Scanned a keypad and sent pressed key values to PUTTY via UART
  • πŸ”Ή Lab 4 – LED PWM & Button Control – Adjusted LED brightness based on button press duration (PWM duty cycle control)
  • πŸ”Ή Lab 5 – Sound Output & Keypad Scanner – Adjusted output sound frequency based on keypad input
  • πŸ”Ή Lab 6 – Keypad Scanner & LED PWM – Used keypad input to increase or decrease LED brightness via PWM

🎯 Key Takeaways

  • Understanding microcontroller GPIO control for input and output operations
  • Implementing UART communication for data transfer between embedded systems and PCs
  • Scanning and processing input from a 4x4 keypad matrix
  • Using PWM for LED brightness control based on user input
  • Generating and modifying sound frequencies programmatically

βœ… Completion Status

This course and all its labs have been successfully completed. The repository serves as a reference for embedded programming techniques and ATmega328PB microcontroller applications.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published