Translate

NODEMCU ESP8266 INTERFACE 7SEGMENT MONITOR TEGANGAN ADC IC 4094 ARDUINO

NODEMCU ESP8266 INTERFACE 7SEGMENT MONITOR TEGANGAN ADC IC 4094 ARDUINO


          Pada kesempatan kali ini saya akan menjelaskan mengenai bagaimana cara membuat sebuah alat yang berfungsi untuk monitor tegangan yang telah dikonversi oleh ADC sehingga data menjadi digital. interface yang digunakan yaitu 3 buah 7segment CA yang disusun berjajar. mikrokontroller yang digunakan yaitu nodemcu esp8266. untuk lebih jelasnya berikut adalah program dan daftar komponennya.




a. Nodemcu ESP8266




b. Rangkaian 7Segment






c. Program Arduino IDE

#include <ESP8266WiFi.h>

byte zero  = B00000011;
byte one   = B10011111;
byte two   = B00100101;
byte three = B00001101;
byte four  = B10011001;
byte five  = B01001001;
byte six   = B01000001;
byte seven = B00011111;
byte eight = B00000001;
byte nine  = B00001001;


    int latchPin = D1;  //Pin connected to STR(pin 1) of HEF4094
    int clockPin = D2; //Pin connected to CP(pin 3) of HEF4094
    int dataPin = D3;  //Pin connected to D(pin 2) of HEF4094
    int oe = D0;  //Pin connected to OE(pin 2) of HEF4094

    int temp;
    int x = 5;
    int y;
   
void setup() {   
      pinMode(latchPin, OUTPUT);
      pinMode(clockPin, OUTPUT);
      pinMode(dataPin, OUTPUT);
      pinMode(oe, OUTPUT);
      //digitalWrite(oe,LOW);
          
      digitalWrite(oe,HIGH);

 }
    
void loop()
 {

  int sensorValue = analogRead(A0);

  temp = sensorValue;
  int ribuan = temp / 1000;
  temp = temp % 1000;
  int ratusan = temp / 100;
  temp = temp % 100;
  int puluhan = temp / 10;
  int satuan = temp % 10;

 switch(ribuan){
   case 0:
   ribuan = zero;
   break;
   case 1:
   ribuan = one;
   break;
   case 2:
   ribuan = two;
   break;
   case 3:
   ribuan = three;
   break;
   case 4:
   ribuan = four;
   break;
   case 5:
   ribuan = five;
   break;
   case 6:
   ribuan = six;
   break;
   case 7:
   ribuan = seven;
   break;
   case 8:
   ribuan = eight;
   break;
   case 9:
   ribuan = nine;
   break;  
 }

 switch(ratusan){
   case 0:
   ratusan = zero;
   break;
   case 1:
   ratusan = one;
   break;
   case 2:
   ratusan = two;
   break;
   case 3:
   ratusan = three;
   break;
   case 4:
   ratusan = four;
   break;
   case 5:
   ratusan = five;
   break;
   case 6:
   ratusan = six;
   break;
   case 7:
   ratusan = seven;
   break;
   case 8:
   ratusan = eight;
   break;
   case 9:
   ratusan = nine;
   break;  
 }

 switch(puluhan){
   case 0:
   puluhan = zero;
   break;
   case 1:
   puluhan = one;
   break;
   case 2:
   puluhan = two;
   break;
   case 3:
   puluhan = three;
   break;
   case 4:
   puluhan = four;
   break;
   case 5:
   puluhan = five;
   break;
   case 6:
   puluhan = six;
   break;
   case 7:
   puluhan = seven;
   break;
   case 8:
   puluhan = eight;
   break;
   case 9:
   puluhan = nine;
   break;  
 }

 switch(satuan){
   case 0:
   satuan = zero;
   break;
   case 1:
   satuan = one;
   break;
   case 2:
   satuan = two;
   break;
   case 3:
   satuan = three;
   break;
   case 4:
   satuan = four;
   break;
   case 5:
   satuan = five;
   break;
   case 6:
   satuan = six;
   break;
   case 7:
   satuan = seven;
   break;
   case 8:
   satuan = eight;
   break;
   case 9:
   satuan = nine;
   break; 
 }

        digitalWrite(latchPin, HIGH); //Pull latch HIGH to send data
        shiftOut(dataPin, clockPin, LSBFIRST, satuan);
        shiftOut(dataPin, clockPin, LSBFIRST, puluhan);
        shiftOut(dataPin, clockPin, LSBFIRST, ratusan);
        digitalWrite(latchPin, LOW); //Pull latch HIGH to send data
        delay(1000);

    }





d. VIDEO HASILNYA








No comments:

Post a Comment