IKT

Page 1

/* Make Projects: How to Drive a 7 Segment LED URL: By: Riley Porter This is an introduction on how to drive a 7 Segment LED using only a Arduino. This is not the best way to do this. This is meant to be a learning excercise. In later tutorials I will show you how to use an dedicated IC using SPI or a Shift Register. Enjoy.

http://learning.grobotronics.com/2014/09/arduino-lesson-4-drive-7-segment-display/ digitalWrite(A,LOW) = turn off the "A" segment in the LED display digitalWrite(B,HIGH) = turn on the "B" segment in the LED display

*/ #define A 8 #define B 9 #define C 2 #define D 3 #define E 4 #define F 5 #define G 6

void clr() { //Clears the LED digitalWrite(A,LOW); digitalWrite(B,LOW); digitalWrite(C,LOW); digitalWrite(D,LOW); digitalWrite(E,LOW); digitalWrite(F,LOW);


digitalWrite(G,LOW); } void char_A() { digitalWrite(D,LOW); digitalWrite(E,HIGH); digitalWrite(F,HIGH); digitalWrite(G,HIGH); digitalWrite(A,HIGH); digitalWrite(B,HIGH); digitalWrite(C,HIGH); } void char_B() { //Displays B digitalWrite(D,HIGH); digitalWrite(E,HIGH); digitalWrite(F,HIGH); digitalWrite(G,HIGH); digitalWrite(A,LOW); digitalWrite(B,LOW); digitalWrite(C,HIGH); } void char_C() { //Displays C digitalWrite(D,HIGH); digitalWrite(E,HIGH); digitalWrite(F,HIGH); digitalWrite(G,LOW);


digitalWrite(A,HIGH); digitalWrite(B,LOW); digitalWrite(C,LOW); } void char_D() { //Displays D digitalWrite(D,HIGH); digitalWrite(E,HIGH); digitalWrite(F,LOW); digitalWrite(G,HIGH); digitalWrite(A,LOW); digitalWrite(B,HIGH); digitalWrite(C,HIGH); } void char_E() { //Displays E digitalWrite(D,HIGH); digitalWrite(E,HIGH); digitalWrite(F,HIGH); digitalWrite(G,HIGH); digitalWrite(A,HIGH); digitalWrite(B,LOW); digitalWrite(C,LOW); }

void char_F() { //Displays F


digitalWrite(D,LOW); digitalWrite(E,HIGH); digitalWrite(F,HIGH); digitalWrite(G,HIGH); digitalWrite(A,HIGH); digitalWrite(B,LOW); digitalWrite(C,LOW); } void one() { //Displays 1 digitalWrite(D,LOW); digitalWrite(E,HIGH); digitalWrite(F,HIGH); digitalWrite(G,LOW); digitalWrite(A,LOW); digitalWrite(B,LOW); digitalWrite(C,LOW); }

void two() { //Displays 2 digitalWrite(D,HIGH); digitalWrite(E,HIGH); digitalWrite(F,LOW); digitalWrite(G,HIGH); digitalWrite(A,HIGH); digitalWrite(B,HIGH); digitalWrite(C,LOW);


} void three() { //Displays 3 digitalWrite(D,HIGH); digitalWrite(E,LOW); digitalWrite(F,LOW); digitalWrite(G,HIGH); digitalWrite(A,HIGH); digitalWrite(B,HIGH); digitalWrite(C,HIGH); }

void four() { //Displays 4 digitalWrite(D,LOW); digitalWrite(E,LOW); digitalWrite(F,HIGH); digitalWrite(G,HIGH); digitalWrite(A,LOW); digitalWrite(B,HIGH); digitalWrite(C,HIGH); } void five() { //Displays 5 digitalWrite(D,HIGH); digitalWrite(E,LOW); digitalWrite(F,HIGH);


digitalWrite(G,HIGH); digitalWrite(A,HIGH); digitalWrite(B,LOW); digitalWrite(C,HIGH); } void six() { //Displays 6 digitalWrite(D,HIGH); digitalWrite(E,HIGH); digitalWrite(F,HIGH); digitalWrite(G,HIGH); digitalWrite(A,HIGH); digitalWrite(B,LOW); digitalWrite(C,HIGH); }

void seven() { //Displays 7 digitalWrite(D,LOW); digitalWrite(E,LOW); digitalWrite(F,LOW); digitalWrite(G,LOW); digitalWrite(A,HIGH); digitalWrite(B,HIGH); digitalWrite(C,HIGH); } void eight() {


//Displays 8 digitalWrite(D,HIGH); digitalWrite(E,HIGH); digitalWrite(F,HIGH); digitalWrite(G,HIGH); digitalWrite(A,HIGH); digitalWrite(B,HIGH); digitalWrite(C,HIGH); } void nine() { //Displays 9 digitalWrite(D,HIGH); digitalWrite(E,LOW); digitalWrite(F,HIGH); digitalWrite(G,HIGH); digitalWrite(A,HIGH); digitalWrite(B,HIGH); digitalWrite(C,HIGH); } void zero() { //Displays 0 digitalWrite(D,HIGH); digitalWrite(E,HIGH); digitalWrite(F,HIGH); digitalWrite(G,LOW); digitalWrite(A,HIGH); digitalWrite(B,HIGH); digitalWrite(C,HIGH);


}

void LoopDisplay() { //Loop through all Chars and Numbers char_A(); delay(1000); char_B(); delay(1000); char_C(); delay(1000); char_D(); delay(1000); char_E(); delay(1000); char_F(); delay(1000); one(); delay(1000); two(); delay(1000); three(); delay(1000); four(); delay(1000); five(); delay(1000); six(); delay(1000); seven();


delay(1000); eight(); delay(1000); nine(); delay(1000); zero(); delay(1000); }

void setup() { //Setup our pins pinMode(A, OUTPUT); pinMode(B, OUTPUT); pinMode(C, OUTPUT); pinMode(D, OUTPUT); pinMode(E, OUTPUT); pinMode(F, OUTPUT); pinMode(G, OUTPUT); Serial.begin(9600); //Begin serial communcation } void loop() { Serial.println("Starting\n"); LoopDisplay(); }


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.