Mechatronics Portfolio
Logan Williamson's Mechatronics Portfolio and Documentation Repository
Lab 1 Deliverables

*Please see the files tab for file documentation

Lab 1 source code

The source code for Lab 1 can be found at https://bitbucket.org/wokka29/me305_labs/src/master/Lab%200x01/ME305_Lab0x01.py

Introduction

Upon startup, this file assigns the relevant hardware pins for the STM32 Nucleo LED and button to descriptive variables using the micropython library,
and enters a waiting state. When the user presses the input button on the board, this transitions the program to State 1, which is a square wave blinking
of the LED with period of one second. An additional press of the button will transition the program to State 2, which is a sine wave blinking pattern of
the LED with period of ten seconds. A third button press transitions the program to State 3, which is a sawtooth wave blinking of the LED with a period of
one second. Pressing the button in State 3 will cycle back to State 1 and continue through the cycle as described above. This program can be broken out of by
pressing ctrl+c.

Lab 1 Finite State Machine

A video demonstrating the proper functionality of this file can be seen here:

Author
Logan Williamson
Date
January 31, 2022