Introduction to Embedded Systems :: CSCI 255
Lab Assignments
Lab 9
-- LCD & Multi-state -- Extra Credit


HOME        SYLLABUS        HOMEWORK        LABS        LINKS        NOTES









Due:  End of Lab Session (11.25.2013)

Requirement:  Bread Board, Jump Wires, MSP430, LCD and work with your lab partner on the code

The goal of this assignment is to gain more experience programming MSP430 functionality in C-language, and practice using the integrated debugger in the CCS IDE.

 

5Volts - Level Shifter

In order to make the LCD work with the MSP420, you must shift (increase) the voltage from 3.3 to 5.0 volts with a level shifter. Documentation for this is here. Figure 2 (page 10) is the approach for the Level-Shifter. Or....buy a cheap LCD that works at 3.3V!

 

Four-State LCD Display

Connect the LCD to Port 1 for Databus inputs (DB0-DB7) & to Port 2 for Control Signals (RS/RW/EN). Write a C-program that uses the MSP430 to send messages to the LCD display. The LCD should go through 4 different states: Hello, Name 1, Name 2, Blank-stage. Once the program reaches the "blank-stage", it should jump back up to the first state and run forever. See below for details of each State.

The delay for the LCD can be either by: Owned designed Delay-function or can use WDTimer ISR capabilities, or other means.

For details of LCD control, pin-out & other things, see the note slides.

The LCD's Datasheet pdf-file

State 1 (Mandatory):

  • Send to the LCD: Hello
  • This should be sent to the bottom row
  • Message begins at the first column
  • You may add special character after the "Hello" message

State 2 (Mandatory):

  • Send to the LCD: the name of one person in the group
  • This should be sent to the bottom row
  • Message begins at the first column
  • State 1's "Hello" must be on the top row (Illusion of scrolling up)

State 3 (Mandatory):

  • Send to the LCD: the name of the 2nd person in the group
  • This should be sent to the bottom row
  • Message begins at the first column
  • Name displayed in State 2 must move up to top row
  • In case of a group of 3:
  • Top Row: Name of 2nd person
  • Bottom Row: Name of 3rd person

State 4 (Optional):

  • Send message to LCD on whatever the group decides
  • Keep it clean
  • May use both rows

State 5 (Optional):

  • Send message to LCD on whatever the group decides
  • Keep it clean
  • May use both rows

State 6..or 4 (Mandatory):

  • Send to the LCD: Blank Screen
  • Nothing should be displayed on the screen
  • The next state after this one is the first state

 

LCD / MSP430 Circuit

 

Submission:

1 - Have the lab checked out by Matt, Clint or Damian by showing your code, flashing your code to the board, and display working circuit.

2 - Print your final code with the following header:

/***************************************************
* Names
* Lab x assignment
* filename: yyyyyyyyy.asm
*
* Description of the assignment
*
***************************************************/

3 - Make sure you have a well commented code


Copyright © 2011 by Keith Vertanen.

 


Montana Tech -- College of Letters, Science & Professional Studies -- Computer Science Department
All Rights Reserved and Copyright © 2013 by Damian Valles