| ||
SP3_3: Prog_Timer design phase #2: peripheral LCD |
||
NOTE: This subproject must be solved only after having completed successfully lab session Lab11 because you will copy and adapt materials from it. |
1. Specifications
Add the LCD display interface to PORTD to represent messages (ASCII and numeric data) so that the new project is named Prog_Timer_LCD.
Fig. 1. Symbol representing the additional LCD display. |
2. Planning
First of all discover the LCD device and how to use it running Lab11 tutorials Timer_LCD, and P11 Serial_Transmitter_LCD
Hardware circuit
Add the LCD at the hardware schematic as in Fig. 2.
Fig. 2. Hardware circuit for the design phase #2 that includes the LCD display. |
Software
This is a multiple C file project because for simplicity reasons the peripheral requires high-level C functions to be added to the compilation.
Study C libraries for interfacing an LCD device. Discuss what functions has to be modified to add the LCD interface and draw truth tables and flowcharts.
Fig. 3. Hardware-software modifications to include LCD details. New variables and functions will be required for interfacing the LCD display. |
Project location:
C:\CSD\P_Ch3\SP3_3\(files)
3. Developing and 4. testing
Start a new MPLABX project Prog_Timer_LCD_prj , compile and run and verify in Proteus that your circuit work as expected representing some messages on the screen.
Fig. 4. Example of the circuit running. |
Additional measurements and questions once the circuit is in operation:
What is the purpose of var_LCD_flag?
How long does it take to represent an array of ASCII characters on the screen?
How to represent numerical data in seconds on the display when counting up?
5. Report
Follow this rubric for writing reports.