Skip to content

Final project design for Embedded Systems Software development class (ESET 369) in the Engineering Technology and Industrial Distribution department at Texas A&M University

License

Notifications You must be signed in to change notification settings

cobeggs8735/Embedded-Systems-Software-Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 

Repository files navigation

Embedded-Systems-Software-Project

Final project design for Embedded Systems Software development class (ESET 369) in the Engineering Technology and Industrial Distribution department at Texas A&M University

Summary

This project implements the control logic for a class project, turning the microcontroller into a user-interactive controller for a servo and ultrasonic sensor, with feedback shown on both an LCD and over a serial terminal. It is typical for a final embedded systems course project combining input, output, actuation, and sensor integration.

Description

This file, main.c, is the main program for an embedded systems project running on an MSP432 microcontroller. Its core purpose is to provide a menu-driven interface (via UART/serial terminal and an LCD) for controlling a servo motor and interacting with sensors.

Key Features and Functions:

  • Menu System: On startup, it displays a menu over UART and on the LCD, allowing the user to choose from various options by entering a number via the terminal.
  • Servo Motor Control: The user can center the servo, move it left/right, or control it with a potentiometer (via ADC readings).
  • Ultrasonic Sensor: The program reads from an ultrasonic sensor to measure distances and displays the results.
  • Automatic Mode: In this mode, the servo is automatically moved based on the proximity detected by the ultrasonic sensor.
  • LCD and UART Output: Outputs status and results to an attached LCD and serial terminal.
  • Hardware Initialization: Initializes ports, UART, timers, ADC, and LCD to interact with the microcontroller’s peripherals.

How it works:

  • The main loop waits for user input via serial.
  • Depending on the user’s menu choice, it performs actions such as:
    • Displaying names or date.
    • Moving the servo to preset positions (center, left, right).
    • Allowing manual or automatic (sensor-triggered) servo control.
    • Displaying data on the LCD and via UART.
  • The code handles low-level hardware interaction (e.g., pin configuration, timer interrupts, ADC conversions).

About

Final project design for Embedded Systems Software development class (ESET 369) in the Engineering Technology and Industrial Distribution department at Texas A&M University

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published