Exercise 4.
1
void setup () {
pinMode (0 , OUTPUT ) ;
pinMode (1 , OUTPUT ) ;
}
void loop () {
digitalWrite (0,LOW);
digitalWrite (1,HIGH);
delay(2000);
digitalWrite (0,HIGH);
digitalWrite (1,LOW);
delay (2000);
}
Exercise 4.2
void setup(){
pinMode(1, OUTPUT);
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
}
void loop(){
digitalWrite(1, HIGH);
digitalWrite(3, HIGH);
digitalWrite(5, HIGH);
digitalWrite(7, HIGH);
digitalWrite(2, LOW);
digitalWrite(4, LOW);
digitalWrite(6, LOW);
digitalWrite(8, LOW);
delay(1000);
digitalWrite(1, LOW);
digitalWrite(3, LOW);
digitalWrite(5, LOW);
digitalWrite(7, LOW);
digitalWrite(2, HIGH);
digitalWrite(4, HIGH);
digitalWrite(6, HIGH);
digitalWrite(8, HIGH);
delay(1000);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(1, HIGH);
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
delay (1000);
digitalWrite(1, LOW);
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, HIGH);
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
digitalWrite(8, HIGH);
delay (1000);
digitalWrite(6, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(2, HIGH);
digitalWrite(1, HIGH);
digitalWrite(7, HIGH);
digitalWrite(8, HIGH);
delay (1000);
digitalWrite(2, LOW);
digitalWrite(1, LOW);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(6, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
delay (1000);
digitalWrite(1, LOW);
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(6, LOW);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
delay (1000);
digitalWrite(1, LOW);
digitalWrite(2, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(6, HIGH);
digitalWrite(3, HIGH);
delay (1000);
digitalWrite(1, LOW);
digitalWrite(5, LOW);
digitalWrite(3, LOW);
digitalWrite(6, LOW);
digitalWrite(4, LOW);
digitalWrite(8, LOW);
digitalWrite(2, HIGH);
digitalWrite(7, HIGH);
delay (1000);
digitalWrite(4, LOW);
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(6, LOW);
digitalWrite(7, LOW);
digitalWrite(5, LOW);
digitalWrite(1, HIGH);
digitalWrite(8, HIGH);
delay (1000);
}
Exercise 4.3
int pinled [] = {0,1,2,3,4,5,6};
void setup(){
for (int i = 0; i < 7; i++) {
pinMode(pinled [i], OUTPUT);
}
}
void displayNumber (int i) {
if (i == 0){
digitalWrite(0, HIGH);
digitalWrite(1, LOW);
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
}
else if(i == 1){
digitalWrite(1,HIGH);
digitalWrite(2,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
delay (1000);
}else if(i == 2){
digitalWrite(6,HIGH);
digitalWrite(2,LOW);
digitalWrite(0,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
}else if(i == 3){
digitalWrite(4,HIGH);
digitalWrite(6,LOW);
}else if(i == 4){
digitalWrite(1,LOW);
digitalWrite(2,HIGH);
digitalWrite(5,HIGH);
}else if(i == 5){
digitalWrite(3,HIGH);
digitalWrite(2,LOW);
digitalWrite(5,LOW);
}else if(i == 6){
digitalWrite(4,LOW);
}else if(i == 7){
digitalWrite(0,HIGH);
digitalWrite(1,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(2,LOW);
digitalWrite(3,LOW);
}else if(i == 8){
digitalWrite(0,LOW);
digitalWrite(1,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
}else if(i == 9){
digitalWrite(4,HIGH);
}
}
void loop(){
displayNumber(0);
delay(2000);
for (int i = 0; i < 10; i++) {
displayNumber(i);
delay(1000);
}
}
Exercise 4.4
void setup()
{
for(int i = 0; i < 14; i++){
pinMode(i, OUTPUT);
}
}
void displayNumber2 (int i) {
if (i == 0){
digitalWrite(7, HIGH);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
digitalWrite(12, LOW);
digitalWrite(13, LOW);
}
else if(i == 1){
digitalWrite(8,HIGH);
digitalWrite(9,HIGH);
digitalWrite(11,HIGH);
digitalWrite(12,HIGH);
}else if(i == 2){
digitalWrite(13,HIGH);
digitalWrite(9,LOW);
digitalWrite(7,LOW);
digitalWrite(11,LOW);
digitalWrite(12,LOW);
}else if(i == 3){
digitalWrite(11,HIGH);
digitalWrite(13,LOW);
}else if(i == 4){
digitalWrite(8,LOW);
digitalWrite(9,HIGH);
digitalWrite(12,HIGH);
}else if(i == 5){
digitalWrite(10,HIGH);
digitalWrite(9,LOW);
digitalWrite(12,LOW);
}else if(i == 6){
digitalWrite(11,LOW);
}else if(i == 7){
digitalWrite(7,HIGH);
digitalWrite(8,HIGH);
digitalWrite(11,HIGH);
digitalWrite(12,HIGH);
digitalWrite(9,LOW);
digitalWrite(10,LOW);
}else if(i == 8){
digitalWrite(7,LOW);
digitalWrite(8,LOW);
digitalWrite(11,LOW);
digitalWrite(12,LOW);
digitalWrite(13,LOW);
}else if(i == 9){
digitalWrite(11,HIGH);
}
}
void loop()
{ int i;
for (int a=0; a<=20; a++){
for( a=0; a<10; a++){
for (i=0; i<10; i++){
digitalWrite(0, HIGH);
digitalWrite(1, LOW);
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
displayNumber2(i);
delay(1000);
}
break;
}
if(a=10){
digitalWrite(1,HIGH);
digitalWrite(2,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(7,HIGH);
digitalWrite(11,LOW);
}
for (a=11; a<20; a++){
for (i=0; i<10; i++){
digitalWrite(1,HIGH);
digitalWrite(2,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
displayNumber2(i);
delay(1000);
}
break;
}
if (a=20){
digitalWrite(6,HIGH);
digitalWrite(2,LOW);
digitalWrite(0,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(7,HIGH);
digitalWrite(11,LOW);
delay(1000);
}
}
}
Exercise 4.5
void setup(){
for (int i = 0; i < 14; i++) {
pinMode(i, OUTPUT);
}
}
void loop(){
digitalWrite(10, HIGH);
digitalWrite(8, LOW);
delay(3000);
digitalWrite(9, HIGH);
digitalWrite(10, LOW);
delay(2000);
digitalWrite(8, HIGH);
digitalWrite(9, LOW);
delay(5000);
}
Exercise 4.6
void setup(){
for (int i = 0; i < 14; i++) {
pinMode(i, OUTPUT);
}
}
void loop(){
digitalWrite(10, HIGH);
digitalWrite(8, LOW);
digitalWrite(11, HIGH);
digitalWrite(12,LOW);
delay(3000);
digitalWrite(9, HIGH);
digitalWrite(10, LOW);
delay(2000);
digitalWrite(8, HIGH);
digitalWrite(9, LOW);
digitalWrite(13, HIGH);
digitalWrite(11, LOW);
delay(3000);
digitalWrite(13,LOW);
digitalWrite(12,HIGH);
delay(2000);
}
Exercise 4.7
void setup(){
for (int i = 0; i < 14; i++) {
pinMode(i, OUTPUT);
}
}
void loop(){
//Turn to Green
digitalWrite(10,HIGH);
digitalWrite(8,LOW);
digitalWrite(1,HIGH);
digitalWrite(6,HIGH);
digitalWrite(0,LOW);
delay(1000);
digitalWrite(3,LOW);
digitalWrite(6,LOW);
digitalWrite(0,HIGH);
digitalWrite(2,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
delay (1000);
digitalWrite(1,LOW);
digitalWrite(2,LOW);
digitalWrite(3,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
delay(1000);
//Turn to Yellow
digitalWrite(9,HIGH);
digitalWrite(10,LOW);
digitalWrite(1,HIGH);
digitalWrite(2,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
delay(1000);
digitalWrite(1,LOW);
digitalWrite(2,LOW);
digitalWrite(3,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
delay(1000);
//Turn to Red
digitalWrite(8, HIGH);
digitalWrite(9, LOW);
digitalWrite(2,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(0,LOW);
delay(1000);
digitalWrite(1,HIGH);
digitalWrite(2,LOW);
digitalWrite(5,LOW);
delay(1000);
digitalWrite(4,LOW);
digitalWrite(6,HIGH);
delay(1000);
digitalWrite(3,LOW);
digitalWrite(6,LOW);
digitalWrite(0,HIGH);
digitalWrite(2,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
delay(1000);
digitalWrite(1,LOW);
digitalWrite(2,LOW);
digitalWrite(3,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
delay(1000);
}
Exercise 4.8
int second = 0;
int minute = 0;
int hour = 0;
void setup()
{
for(int i = 0; i < 12; i++){
pinMode(i, OUTPUT);
}
}
void displayOnClock(int num){
if(num <= 12)
digitalWrite(num-1, HIGH);
}
void clearClock(){
for (int i =0; i<12 ; i++){
digitalWrite(i, LOW);
}
}
void loop()
{
for(int i = 0; i < 12; i++){
displayOnClock(i + 1);
delay(1000);
clearClock();
}
}
Exercise 4.9
int second = 0;
int minute = 0;
int hour = 0;
void setup()
{
for(int i = 0; i < 12; i++){
pinMode(i, OUTPUT);
}
}
void displayOnClock(int num){
if(num < 11){
digitalWrite(num,HIGH);
}
}
void clearClock(){
digitalWrite(0,LOW);
digitalWrite(1,LOW);
digitalWrite(2,LOW);
digitalWrite(3,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(8,LOW);
digitalWrite(9,LOW);
digitalWrite(10,LOW);
}
void loop()
{
digitalWrite(11,HIGH);
delay(5000);
for(int i = 0; i < 12; i++){
displayOnClock(i);
delay(5000);
if(i==11)
clearClock();
}
delay(1000);
}
Exercise 4.10