www

EECE456 Embedded Systems Design Lab - Spring 2017

This course is sponsored by Texas Instruments (TI)

Instructor:  Dr. Charles Kim

 

Course Syllabus

 

Texas Instrument 432 Resources:

MSP432 Launchpad, Educational BoosterPack MKII, CC3200 Launchpad - Wi-Fi Family, & Sensor Tag Development- CC2650 Wireless MCU, MSP432P401R Data Sheet

Link to MSP432P401R on Energia --- a must read

Link to a good or essential starter

MSP432P401R (Red Board) Development Kit --- a good read

TI MSP432 Launchpad (Manual)

TI MSP430/432 ----- Energia Setup for MacBook Users

Energia Language Reference (or Instruction Set)

 

Helpful Links:

energia.nu, Embedded Computing, EDUMKII Buzzer,

 

Lab Report Format & Submission Instruction
Resources
Report Format
Follow this Lab Report Format -- very carefully
Submission (A report cannot be submitted without proper demonstration of the corresponding Lab)
* Due is on the date set for respective lab.
* Note that no late submission
 is accepted.

LABS

LAB # LAB Description Components Relevant
Information
Demo Date Lab Report Due
0

Development System Installation: After basic understanding of the TMP432 board ("Board") (through the Class note website and/or Web search) and thorough familiarity with what first to do in your computer and installation of the software development tool/kit so that the computer recognizes the Board. 

When connected via USB or mini-USB, run a sample code (available from the software development kit/tool) of on-board LED blinking and see if it works, and be ready for Lab0 demo.

On-Board RGB LED of MSP432P401R Launchpad
On-Board LED &
TI MSP432P401R Launchpad
W Jan 18 N/A
1 LED Color-Blinking: After all required programming environment is completed and thus Lab 0 is successfully done with a Red LED blinking with 1000ms ON and 1000 ms OFF, make out a blinking of the on-board LED (this onboad LED used in the example code of Blink is actually a color (or RGB) LED which can make out different colors !!!  Check how the on-board LEDs are connected.) with different colors and different On/Off periods. 

One example:  Red (1000ms)  - Off (100ms) - Green (200ms) - Off (100ms) - Blue (1000 ms) - Off (100ms).  
On-Board RGB LED ("LED2")

LED2
On-Board LED W Jan 25 W Feb 1
2 LED Blinking Rate Control by Analog Sensor: Control the on-board RGB LED's blinking rate by the sensed value of an analog sensor.  One type of analog sensors will be provided.  Blinking of a single color is good enough.

                
On-Board LED

Grove Rotary Angle Sensor
 
Grove Photosensor


 Grove Temperature Sensor
On-Board LED,

Grove Rotary Angle Sensor,


Grove Photosensor,

 Grove Temperature Sensor
W Feb 1 W Feb 8
3 LED Blinking Rate and Color Control by Analog Sensor and Digital Input: Control the on-board RGB LED's blinking rate and the color by the sensed value of an analog sensor and the digital input from a digital input sensor.  One type of digital input sensor will be provided.  The rate of blinking is to be controller by the read value of the analog sensor, and the color must be changed from Red to Yellow to Green to Blue to White and back to Red at each time the input is sensed.

Photosensor

 Grove Temperature Sensor
On-Board LED

Grove touch sensor     
       

Grove Button      
  

Grove Rotary Angle Sensor
  
Grove Touch Sensor,


Grove Button
W Feb 8 W Feb 15
4 LED (External) Blinking Rate and Color Control by Analog Sensor and Digital Input:This lab is identical to Lab3 except that the On-Board LED is not used here but, instead, an external RGB LED module called ShiftBrite V2.0 from Macetech is to be used. 

Grove touch sensor             
Grove Button  
Grove Rotary Angle Sensor
ShiftBrite V2.0 RGB LED


 Grove Photosensor
 Grove Temperature Sensor
ShiftBrite V2.0 from Macetech

ShiftBrite Coding Example

 
Document on ShiftBrite

Energia Core Libraries
W Feb 15 W Feb 22
5 Distance Indication by External LED. This Lab uses the external LED to indicate a distance of an object from a Sharp Infra-Red (IR) distance Senor [model: GP2Y0A21YK0F] .  The push-button or touch-sensor is for Activation or Deactivation mode of the LED indication of the distance.
 
Specific instruction
(a) The starting mode is Activation
(b) In Activation mode, if the distance of an object is farther than 80 cm turn LED on GREEN, if the distance is between 80 cm and 40 cm, YELLOW, and if closer than 40 cm, RED.
(c) During the Activation mode, if a push-button (or touch-sensor) is pressed, then the mode is changed to Deactivation (which means LED is turned off while continuing the distance monitoring - which has to be evidenced through the Serial Monitor showing distances in cm unit).
(d)In Deactivation mode, if a push-button is pressed, then Activation mode resumes.
Sharp IR Distance Sensor GP2Y0A21YK0F


ShiftBrite V2.0 RGB LED

Grove touch sensor           
Grove Button  
Sharp IR Sensor GP2y0A21YK0F

Download& Document Site for Sharp IR Sensor (with Example Codes)
W Feb 22 W Mar 1
6 Distance Indication on a 7-Segment Display. This Lab uses a Serial 7-Segment Display (Sparkfun Part no. COM-11441) to display a distance of an object from the same Sharp Infra-Red (IR) distance Senor used in Lab 5. The push-button or touch-sensor is for Display or No-Display mode of the distance display on the 7-Segment Display.
 
Specific instruction
(a) The starting mode is Display Mode.
(b) In Display Mode, display the distance on the 7-Segment Display in cm unit. 
(c) During the Display Mode, if a push-button (or touch-sensor) is pressed, then the mode is changed to No-Display Mode (which means no-display of distance on the 7-Segment Display while continuing the distance monitoring - which has to be evidenced through the Serial Monitor showing distances in cm unit).
(d) In No-Display mode, if a push-button is pressed, then Display Mode resumes.

Sparkfun Serial 7-Segment Display


Sharp IR Distance Sensor GP2Y0A21YK0F


Grove touch sensor           
Grove Button  
Sparkfun Serial 7-Segment Display
(Introduction)

Pins and Their Uses for Different Communication Protocols.


SPI/I2C Libraries and Examples for Energia (at GitHub)
W Mar 1 W Mar 8
7 Servo-Motor Control & Distance Display. This Lab, in addition to the a Serial 7-Segment Display and  Sharp Infra-Red (IR) distance Senor used in Lab 6, connects a micro-servo motor (P1143 of Adafruit). The push-button or touch-sensor is for Active or Silent mode of the Lab, its details explained below.
 
Specific instruction
(a) The starting mode is Active Mode.
(b) In Active Mode, display the distance of an object on the 7-Segment Display in cm unit and turn (0 to 180 degrees and 180 to 0 degrees) (Left to Right) (Right to Left) the servo-motor with a speed proportional to the distance: The farther an object is from the distance sensor, the faster the covering of the 180 degrees, in a forward and backward motion, of the servo motor, and vice versa.  However, if the distance is 20 cm or shorter, stop the servo motor wherever the position may be.  Also, any distance farther than 70 cm should have the same servo turning speed (covering 0 - 180 degrees and 180 to 0 degrees) as at 70 cm.
(c) During the Active Mode, if a push-button (or touch-sensor) is pressed, then the mode is changed to Silent Mode (which means the servo motor stops its turn immediately while the distance display on the 7-Segment Display continues).
(d) In Silent Mode, if a push-button is pressed, then Active Mode resumes and the servo turns toward Right first from the stopped position.

Grove touch sensor            Grove Button  

Adafruit Micro-Servo High Torque


Sparkfun Serial 7-Segment Display


Sharp IR Distance Sensor GP2Y0A21YK0F


Adafruit Micro-Servo Motor P1143

Servo Libraries for Energia (at GitHub)

Example: Spin the Servo (Energia)
W Mar 22 W Mar 29
8 Distance Measurement by Ultrasonic Sensor and Display in the Distance on a 7-Segment Display. This Lab uses the same  Serial 7-Segment Display the previous labs have used to display a distance of an object from an Ultrasonic Sensor (HC-SR04). The range of distance is 2 cm to 400 cm, therefore the Display should be able to cover the entire range in cm unit.  The Mode for this Lab is always Active More - there is no push button required for Mode switch.
 
*Optional component (Voltage-Level Translator: 3.3 V <--> 5.0V)
Sparkfun - TXB0104
Ultrasonic Sensor: HC-SR04



Sparkfun Serial 7-Segment Display
HC-SR04

Example 1

Example2 - with i8051 (for good understanding of how it works)
W Mar 29 W Apr 5
9 Display of the distance on Serial Monitor of one party measured with Ultrasound sensor by the other party, and vice versa, via RX (p3.2) and TX (p.3.3) of UART (Universal Asynchronous Receiver Transmitter).   This Lab requires 2 groups to work together.  UART communication can be done by physically connecting TX pin of a MSP432 board to RX pin of the other MSP432 board with a wire, and RX pin of the former to TX pin of the latter.   Each party must be able to send and receive data over the UART pins. For a smooth exchange session, one must start with Transmitter Mode and the other Receiver Mode.    Details are as follow:

Transmitter Mode: Measure the distance from the Ultrasound Sensor and send the measured value in cm unit to the other party via UART.  After a transmission is done, without any wait or time delay it change its mode to Receiver Mode.
Receiver Mode: Receive data from the other party via UART and display the data to the Serial Monitor screen.  Then, after 1 second time delay, it changes to Transmitter Mode.


Ultrasonic Sensor: HC-SR04
Transmitter Sample Code (as a text file): this code transmits 'H' and 'L' alternatingly to a receiver.

Receiver Sample Code (as a text file): this code receives data from the transmitter, then turns on an LED if the received data is 'H', and turns off the LED if 'L'.
W Apr 5 W Apr 12
10 Display of the distance on Serial Monitor of one party measured with Ultrasound sensor by the other party, and vice versa, using NRF24L01+ 2.4 GHz Wireless RF Transceiver Module.  As in Lab 9, this Lab requires 2 groups to work together.  But transmission is done by manual key-in.  Each party must be able to send and receive data via radio communication, but transmission can be made only when character 'T ' is typed on the serial monitor.  Therefore, both parties must start with Receiver Mode.    Details are as follow:

Receiver Mode: Receive data from the other party via Radio and display the data on to the Serial Monitor screen.  A transition to Transmitter Mode is made possible by typing 'T' on the serial monitor screen.
Transmitter Mode
: Measure the distance from the Ultrasound Sensor and send the measured value in cm unit to the other party via Radio.  After a transmission is done, without any wait or time delay it change its mode to Receiver Mode.
NRF2401+ 2.4HGz Wireless RF Transceiver Module


Ultrasonic Sensor: HC-SR04
Wiki on How To NRF24L01

Example (with Arduino)

Enrf24 Library Zip file  (NOTE: Read this Instruction before you install)

Transmitter Sample Code

Receiver Sample Code

W Apr 12 W Apr 19
11 Display of the distance on Serial Monitor of one party measured with Ultrasound sensor by the other party, and vice versa, using NRF24L01+ 2.4 GHz Wireless RF Transceiver Module, and following our own "456 Protocol".  As in Labs 9 and 10, this Lab requires 2 groups to work together.  But transmission is done by manual key-in.  Each party must be able to send and receive data via radio communication, but transmission can be made only when character 'T ' is typed on the serial monitor.  Therefore, both parties must start with Receiver Mode.   In data exchange, 456 Protocol should be observed (and data be displayed on Serial Monitor screen, not LCD).  

Receiver Mode: Receive data from the other party via Radio complying with the 456 Protocol and display the data on to the Serial Monitor screen.  A transition to Transmitter Mode is made possible by typing 'T' on the serial monitor screen.
Transmitter Mode
: Measure the distance from the Ultrasound Sensor and send the measured value in cm unit to the other party via Radio complying with the 456 Protocol.  After a transmission is done, without any wait or time delay it change its mode to Receiver Mode.
NRF2401+ 2.4HGz Wireless RF Transceiver Module


Ultrasonic Sensor: HC-SR04
456 Protocol

Lab 11 Demo Check Process
W Apr 19 W Apr 26
X Extra Credit Lab (for a team of 3 groups):  Multi-Party Texting via Radio.   This free, extra-credit lab is to establish and demonstrate multi-party texting system using (1) NRF24L01+ 2.4 GHz Wireless RF Transceiver Module, (2) Serial Monitor Screen, and (3) 456 Protocol.  Three (3) groups are needed to form a team and work together.  A text message from a party must be directed to just one party at a time - no broadcasting - and should be able to repond selectively.  Mode setting (or no mode at all) is all determined by the team.  After forming a team (of 3 groups), notify with a list of groups joining the team. NRF2401+ 2.4HGz Wireless RF Transceiver Module
Demo by Appointment  (Graduating seniors: by April 26; Others:
by May 2)
Individual Report Submission: (Graduating seniors: by April 27;
Others: Within 2 days after Demo )

 

Gallery

Lab4

                    

Group2:Breyonna Pinkney and Mercy Daniel-Aguebor

 

       

                                                                                          Group 8:  Jonathan Goberdhan and Conrad Blash

 

       

Group 6: Alozie Pat-Ekeji and Malmcolm Friday.                    Group 9: Jordan Lafontant and Shamar Christian

 

Lab7

 

Group3: Calude Julien and Quentin Cola.

 

  

Group 7:  Kelsey Logan and Shelton Allen.

 

Group 10: Oluwafolajimi Onadeko and Elise Blackmon

 

Lab 11

From Left: Shamar Christian, Conrad Blash, Kolby Lacy, and Jonathan Goberdhan.

 

 

Embedded Systems Design Lab

MWFTR