https://github.com/ssnover/rust-up-lab11
RIT EEEE 420 Lab 11 for MSP430 in Rust
https://github.com/ssnover/rust-up-lab11
embedded-rust launchpad msp430
Last synced: 2 months ago
JSON representation
RIT EEEE 420 Lab 11 for MSP430 in Rust
- Host: GitHub
- URL: https://github.com/ssnover/rust-up-lab11
- Owner: ssnover
- Created: 2018-11-29T18:42:08.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2018-12-01T23:19:43.000Z (over 7 years ago)
- Last Synced: 2026-01-14T20:17:29.939Z (5 months ago)
- Topics: embedded-rust, launchpad, msp430
- Language: Rust
- Size: 5.86 KB
- Stars: 0
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Rusted EEEE 420 Lab 11
This project seeks to implement the functional requirements of RIT EEEE 420's final lab on the MSP430 in Rust. The lab culminates a series of labs teaching students to use the peripherals on the MSP430G2 Launchpad to teach embedded systems development in MSP430 assembly and C.
## Requirements
Using the MSP430 Launchpad and the Touchpad daughterboard, the lab requires students to implement the following sequence:
* Prompt the user to press the center touch surface.
* Prompt the user to press either the top or bottom touch surface.
* The top surface selects a sampling rate of 100 Hz.
* The bottom surface selects a sampling rate of 200 Hz.
* Prompt the user to press either the left or right touch surface.
* The left surface selects a linear scale processing for display.
* The right surface selects a logarithmic scale processing for display.
* Sample an ADC pin 20 times at the selected frequency.
* Apply the selected scale to the sampled data.
* Display the resulting values with the 8 LEDs on the touchpad; each sample is displayed for 500 ms.
* As each sample is displayed on the touchpad, print the number of LEDs being enabled over UART to a serial terminal.
* Continually display and report the values in a loop until interrupted by the user by pressing the center button.
* All timing is to be controlled with hardware, not with a software "busy loop."