ME 507 Romi++
Cylindrical Differential Drive Robot created for ME 507 at Cal Poly in Spring 2025
|
Inc | |
balance.h | Declaration of the BALANCE class for managing robot balance using a FSM |
battery_check.h | Header for the BATTERY_CHECK class that monitors battery voltage of a 3S LiPo battery using the ADC |
bluetooth.h | Bluetooth command handler for robot control |
bno055_init.h | BNO055 IMU initialization interface |
BNO055_STM32.h | |
command_parser.h | Header for UART command parsing module |
encoder.h | Quadrature encoder interface for STM32 timers |
heading.h | FSM class for heading-based robot control using IMU input |
main.h | : Header for main.c file. This file contains the common defines of the application |
motor_driver.h | Low-level motor control interface for STM32 using PWM |
motor_task.h | Motor control task with feedback and coordination logic |
stm32f4xx_hal_conf.h | |
stm32f4xx_it.h | This file contains the headers of the interrupt handlers |
time_utils.h | Utility functions for microsecond-level timing |
uart_dma_idle.h | UART DMA with idle line detection handler |
Src | |
stm32f4xx_hal_msp.c | This file provides code for the MSP Initialization and de-Initialization codes |
stm32f4xx_it.c | Interrupt Service Routines |
syscalls.c | STM32CubeIDE Minimal System calls file |
sysmem.c | STM32CubeIDE System Memory calls file |
system_stm32f4xx.c | CMSIS Cortex-M4 Device Peripheral Access Layer System Source File |
Term Project | |
Additional Code | |
robot_controller.py | A Python program for manual control of a differential drive robot |