MIKROPROSESOR
MODUL II : Akses LCD Karakter 16x2 dan Analog to Digital
Converter (ADC)
Disusun Oleh :
Atwatan Malik Mahardi
(17101008)
Partner Praktikum :
Anang Bagus R (17101006)
Asisten Praktikum :
Indak Danil Mabar (16101134)
I. TUJUAN PRAKTIKUM
1. Mahasiswa mampu memahami cara kerja dari pin Analog to Digital
Converter (ADC) pada Arduino Uno R3.
2. Mahasiswa mampu memahami pengaruh nilai tegangan referensi
terhadap hasil konversi Analog to Digital Converter (ADC).
3. Mahasiswa mampu memahami penggunaan Serial Monitor pada
Arduino IDE.
4. Mahasiswa mampu memahami cara mengakses LCD 16x2 dengan
Arduino Uno R3.
5. Mahasiswa mampu merangkai dan memprogram pin ADC Arduino
Uno R3 sebagai input sebuah sensor suhu LM35.
6. Mahasiswa mampu menampilkan hasil pembacaan nilai dari pin ADC
ke dalam LCD 16x2.
void loop() {
float vref=3;
float volt;
int adc=analogRead(A0);
volt=adc*vref/1024;
lcd.clear();
lcd.setCursor(0,0);
lcd.print("ADC A0: ");
lcd.print(adc);
lcd.setCursor(0,1);
lcd.print("Volt A0 : ");
lcd.print(volt);
lcd.print("V");
delay(500);
}
Hasil :
Vin = (ADC*Vref)/1023
void setup() {
lcd.begin(16, 2);
}
void loop() {
int vref = 5;
int adc = analogRead(sensorsuhu);
float mv = (adc / 1024.0) * (vref * 1000);
float cel = mv / 10;
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("TEMP: ");
lcd.print(cel);
lcd.print(char(223));
lcd.print("C");
lcd.setCursor(0, 1);
lcd.print("ADC: ");
lcd.print(adc);
lcd.setCursor(7, 1);
lcd.print("mV:");
lcd.print(mv);
delay(500);
}
Hasil :
Perhitungan :
ADC = (Vin/Vref)*1023
void loop() {
int vref=5;
int adc=analogRead(sensorsuhu);
float mv=(adc/1024.0)*(vref * 1000);
float cel = mv / 10;
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("TEMP:");
lcd.print(cel);
lcd.print(char(223));
lcd.print("C");
if(cel>=suhu_max)
{
digitalWrite(buzzer,1);
lcd.setCursor(0,1);
lcd.print("WARNING...!!!");
}
else
{
digitalWrite(buzzer,0);
}
delay(500);
}
Hasil :
void setup()
{
lcd.begin(16,2);
}
void loop()
{
int i;
lcd.setCursor(0, 0);
lcd.print("Atwatan Malik Mahardi");
lcd.setCursor(0, 1);
lcd.print("NIM. 17101008");
for (;;)
{
lcd.scrollDisplayLeft();
delay(133); //NIM 17101008 --> 125+008 = 133
}
}