Fall 2016 CSCI 255 Homework 11

This assignment is due in-class or may be submitted to Homework 11 on moodle by 5:10 PM on 1 December.

This is a check-up on the mastery of circuit stuff.

The prompt

You have been asked to define a breadboard connection for an LED and a switch to an Arduino-like device. The Arduino-like device will provide a Ground connection and the two additional connections for the LED and switch. Assume the switch has been implemented with internal pull-up registers. That way we don’t need a Power connection.

Here is an example of the Arudino program that would use the switch and LED. That might help you to design your circuit. The choice of pin 8 for the switch and pin 12 for the LED is arbitrary.

const int ledPin = 12;
const int switchPin = 8 ;

int switchPressed(int switchPos) {
  return digitalRead(switchPos) == LOW ;
}

// if value is true, turn on led
void ledSet(int switchPos, int value) {
  if (value) {
    digitalWrite(switchPos, HIGH) ;
  } else {
    digitalWrite(switchPos, LOW) ;
  }
}

void setup() {
  pinMode(ledPin, OUTPUT);
  pinMode(switchPin, INPUT_PULLUP) ;
}

void loop() {
  ledSet(ledPin, switchPressed(switchPin)) ;
}

The schematic

Draw a schematic-level diagram for the LED and the switch. Include the appropriate resistors and external connections.

I know you can just download a picture from the internet, but either draw it freehand or use some schematic design tool. Be sure to show all components, LED, switch, etc., in your schematic.

The implementation

Using a real breadboard or a breadboard image or or a breadboard-level design program, such as Autodesk Circuits, show how to implement the LED and switch. Leave dangling wires for the three connections.

Use a button switches.

If you use a real breadboard, just take a picture and upload it to the moodle page.

Here’a useful image of a half-size breadboard.
half-size breadboard