Description
Introduction to Embedded Systems Development
The purpose of this assignment is to make you familiar with the PIC Assembly and assess your ability to implement button debouncing/timing/other tasks in a round-robin fashion.
1 Overview
In this assignment, you will implement an application that you draw shapes on a 3×8 LED grid by pressing buttons connected to RB[0,1,2,3] pins. The LEDs on the rows are connected to the pins of PORT[A,C,D]. A video is also attached in which you can view the application in action.
2 Specifications
2.1 Application Behavior The application has 3 phases. For ease of understanding , the buttons will be associated with the following
names:
Pin Button Name RB2 UP/RIGHT RB1 DOWN/LEFT RB0 TOGGLE RB3 CONFIRM
Table 1: Button Names for Etch a Sketch.
The application should perform the designated action for a button only when that particular button is released. In other words, pressing/holding a button should not cause any change, only releasing that button should modify the application behavior. A line refers to subsequent LEDs in a row being ON. This term does not specify anything regarding other LEDs in that row, they could be ON or OFF. A shape refers to the collection of lines etched in a row since the beginning of the application.
1


