Translate

Sabtu, 05 Desember 2015

Mikrokontroller: Automatic Car Parking

Program ini digunakan untuk memudahkan driver dalam memilih tempat parkir. Namun dalam program ini masih membutuhkan perbaikan. Selamat mencoba :)



/*****************************************************
This program was produced by the
CodeWizardAVR V2.05.3 Standard
Automatic Program Generator
© Copyright 1998-2011 Pavel Haiduc, HP InfoTech s.r.l.
http://www.hpinfotech.com

Project :
Version :
Date    : 12/4/2015
Author  :siska
Company : pte 14
Comments:


Chip type               : ATmega8535
Program type            : Application
AVR Core Clock frequency: 12.000000 MHz
Memory model            : Small
External RAM size       : 0
Data Stack size         : 128
*****************************************************/

#include <mega8535.h>

#include <delay.h>

// Alphanumeric LCD functions
#include <alcd.h>

#define ADC_VREF_TYPE 0x60
unsigned char a1=0;
unsigned char b2=0;
unsigned char c3=0;
unsigned char d4=0;
unsigned char reff=200;

// Read the 8 most significant bits
// of the AD conversion result
unsigned char read_adc(unsigned char adc_input)
{
ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);
// Delay needed for the stabilization of the ADC input voltage
delay_us(10);
// Start the AD conversion
ADCSRA|=0x40;
// Wait for the AD conversion to complete
while ((ADCSRA & 0x10)==0);
ADCSRA|=0x10;
return ADCH;
}

// Declare your global variables here

void main(void)
{
// Declare your local variables here

// Input/Output Ports initialization
// Port A initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTA=0x00;
DDRA=0x00;

// Port B initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTB=0x00;
DDRB=0x00;

// Port C initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTC=0x00;
DDRC=0x00;

// Port D initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTD=0x00;
DDRD=0x00;

// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=0xFF
// OC0 output: Disconnected
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;

// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer1 Stopped
// Mode: Normal top=0xFFFF
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;

// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer2 Stopped
// Mode: Normal top=0xFF
// OC2 output: Disconnected
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;

// External Interrupt(s) initialization
// INT0: Off
// INT1: Off
// INT2: Off
MCUCR=0x00;
MCUCSR=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x00;

// USART initialization
// USART disabled
UCSRB=0x00;

// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
SFIOR=0x00;

// ADC initialization
// ADC Clock frequency: 93.750 kHz
// ADC Voltage Reference: AVCC pin
// ADC High Speed Mode: Off
// ADC Auto Trigger Source: Free Running
// Only the 8 most significant bits of
// the AD conversion result are used
ADMUX=ADC_VREF_TYPE & 0xff;
ADCSRA=0xA7;
SFIOR&=0x0F;

// SPI initialization
// SPI disabled
SPCR=0x00;

// TWI initialization
// TWI disabled
TWCR=0x00;

// Alphanumeric LCD initialization
// Connections are specified in the
// Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:
// RS - PORTD Bit 0
// RD - PORTD Bit 1
// EN - PORTD Bit 2
// D4 - PORTD Bit 4
// D5 - PORTD Bit 5
// D6 - PORTD Bit 6
// D7 - PORTD Bit 7
// Characters/line: 16
lcd_init(16);

while (1)
      {
      // Place your code here
      start:
    {
        while(2)
     {
      if(read_adc(0)>=200 && read_adc(2)>=200 && read_adc(4)>=200 && read_adc(6)>=200)
      {
      lcd_gotoxy(0,0);
      lcd_putsf("Maaf Parkir");  
      lcd_gotoxy(0,1);
      lcd_putsf("Sudah Penuh :)");
      while(3)
       {
        if(read_adc(0)<200||read_adc(2)<200||read_adc(4)<200||read_adc(6)<200)
        {  
            lcd_clear();
            lcd_gotoxy(0,0);
            lcd_putsf("Selamat Datang");  
            lcd_gotoxy(0,1);
            lcd_putsf("Have fun :)"); 
            delay_ms(300);
            lcd_clear();
            goto parkir;
        }
       }
      }   
      else
      { 
       goto parkir;
      }
     }
    }
    parkir:
    {
     
    a1=read_adc(0);
    lcd_gotoxy(0,0);
    lcd_putsf("P1:");
    lcd_gotoxy(3,0);
    if(read_adc(0)<reff)
     {
        lcd_putsf("E");
     }
    else
     {
        lcd_putsf("F");
     }

    b2=read_adc(2);
    lcd_gotoxy(0,1);
    lcd_putsf("P2:");
    lcd_gotoxy(3,1);
    if(read_adc(2)<reff)
     {
        lcd_putsf("E");
     }
     else
     {
        lcd_putsf("F");
     }                 
    c3=read_adc(4);
    lcd_gotoxy(6,0);
    lcd_putsf("P3:");
    lcd_gotoxy(9,0);
    if(read_adc(4)<reff)
     {
        lcd_putsf("E");
     }
    else
     {
        lcd_putsf("F");
     }    

    d4=read_adc(6);
    lcd_gotoxy(6,1);
    lcd_putsf("P4:");
    lcd_gotoxy(9,1);
    if(read_adc(6)<reff)
     {
        lcd_putsf("E");
     }
    else
     {
        lcd_putsf("F");
     }
     goto start;
    }
      }
}

Selasa, 01 Desember 2015

Elektronika Digital


TUGAS ELEKTRONIKA DIGITAL
“DEKODER, ENKODER, MULTIPLEKSER, DEMULTIPLEKSER”
Disusun untuk Memenuhi Tugas Matakuliah Elektronika Digital
Dibimbing oleh Bapak Suwasono

NAMA                      :           SISKA DWI AMBARWATI
NIM                          :           140534603377
PRODI/OFF            :           PTE 14 - C







FAKULTAS TEKNIK
JURUSAN TEKNIK ELEKTRO
                      PROGRAM STUDI S1 PENDIDIKAN TEKNIK ELEKTRO                     
UNIVERSITAS NEGERI MALANG
MARET 2015





1.    DEKODER
a.       Pengertian
Sebuah Decoder adalah rangkaian logika yang menerima input-input biner dan mengaktifkan salah satu output-nya sesuai dengan urutan biner input-nya. Decoder merupakan rangkaian logika yang berfungsi mengkode ulang atau menafsirkan kode-kode biner yang ada pada inputnya menjadi data asli pada outputnya, dan fungsinya merupakan kebalikan dari fungsi encoder. Decoder dapat dbentuk menggunakan gerbang AND atau OR.
Khusus untuk BCD to 7 segment mempunyai prinsip kerja yang berbeda dengan decoder-decoder yang lain, di mana kombinasi dari setiap inputnya dapat mengaktifkan beberapa output line-nya (bukan salah satu line). Konfigurasi Pin IC Dekoder BCD Ke 7 Segmen 7447 Dan 7448 Jalur input data BCD, pin input ini terdiri dari 4 line input yang mewakili 4 bit data BCD dengan sebutan jalur input A, B, C dan D. Jalur ouput 7 segmen, pin output ini berfungsi untuk mendistribusikan data pengkodean ke penampil 7 segmen 4.

b.      Blok diagram


c.       Tipe IC dan fungsi PIN
IC 74138
Bentuk fisik


Fungsi masing-masing PIN
a.       Kaki 1,2,6,7 berfungsi sebagai inputan data
b.      Kaki 3 berfungsi sebagai lamp test (menyalakan semua LED pada penampil 7 segmen)
c.       Kaki 4 berfungsi sebagai penahan data output ke segmen 7
d.      Kaki 5 sebagai penahan sinyal input
e.       Kaki 8 sebagai ground
f.       Kaki 9,10,11,12,13,14,15 berfungsi sebagai ouput data
g.      Kaki 16 sebagai VCC

SN74LS48
Bentuk fisik

Fungsi masing-masing PIN
a.       Kaki 1,2,6,7 sebagi input data
b.      Kaki 3 berfungsi sebagai lamp test (menyalakan semua LED pada penampil 7 segmen)
c.       Kaki 4 berfungsi sebagai penahan data output ke segmen 7
d.      Kaki 5 sebagai penahan sinyal input
e.       Kaki 8 sebagi ground
f.       Kaki 9,10,11,12,13,14,15 berfungsi sebagai ouput data
g.      Kaki 16 sebagai VCC

IC 7447
Bentuk fisik












Fungsi masing-masing PIN
a.       Kaki 9,10,11,12,13,14,15 berfungsi sebagai output
b.      Kaki 8 sebagi ground
c.       Kaki 1,2,6,7 sebagai inputan data
d.      Kaki 16 sebagai VCC


d.      Rangkaian logika
IC 74138


SN74LS48
 

IC 7447


e.       Fungsi
Dekoder berfungsi untuk memudahkan kita dalam menjalankan seven segmen, mengubah kode bilangan biner BCD (Binary Coded Decimal) menjadi data tampilan untuk penampil/display 7, dan dapat mengembalikan proses encoding sehingga dapat melihat/menerima informasi aslinya

f.       Tabel kebenaran
IC 74138

SN74LS48
 

IC 7447


g.      Aplikasi








Aplikasi ini mengubah inputan berupa data BCD dan menghasilkan output data desimal yang dimasukkan pada seven segment. Selain itu, rangkaian decoder biasanya digunakan di system TV kabel, TV satelit, ip-TV, maupun TV digital terestial. Rangkaian ini berguna untuk mengubah sinyal digital yang diterima satelit, kabel, ataupun internet menjadi format analog agar dapat ditampilkan ke layar TV analog.
2.    ENKODER
a.       Pengertian
 Sebuah rangkaian Encoder menterjemahkan keaktifan salah satu inputnya menjadi urutan bit-bit biner. Encoder terdiri dari beberapa input line, hanya salah satu dari input-input tersebut diaktifkan pada waktu tertentu, yang selanjutnya akan menghasilkan kode output N-bit. Gambar Encoder dalam rangkaian digital adalah rangkaian kombinasi gerbang digital yang memiliki input banyak dalam bentuk line input dan memiliki output sedikit dalam format bilangan biner. Encoder akan mengkodekan setiap jalur input yang aktif menjadi kode bilangan biner. . Dalam teori digital banyak ditemukan istilah encoder seperti “Desimal to BCD Encoder” yang berarti rangkaian digital yang berfungsi untuk mengkodekan line input dengan jumlah line input desimal (0-9) menjadi kode bilangan biner 4 bit BCD (Binary Coded Decimal). Atau “8 line to 3 line encoder” yang berarti rangkaian encoder dengan input 8 line dan output 3 line (3 bit BCD).
Sebuah Enkoder harus memenuhi syarat perancangan m < 2 n. Variabel m adalah kombinasi masukan dan n adalah jumlah bit keluaran sebuah enkoder. Satu kombinasi masukan hanya dapat mewakili satu kombinasi keluaran.

b.      Blog Diagram



c.       Tipe IC dan fungsi PIN
LS74SN148
Bentuk fisik

Fungsi dari masing-masing PIN tersebut adalah:
a)      Kaki 1,2,3,4,11,12,13 sebagai inputan
b)      Kaki 5 sebagai inputan terakhir yang langsung menuju pada gerbang akhir
c)      Kaki 6,7,9 sebagai output rangkaian
d)     Kaki 8 sebagai ground
e)      Kaki 9 sebagai output rangkain ke 1 dari gerbang OR (A0)
f)       Kaki 10 sebagai inputan ke inputan pertama ke gerbang AND (0)
g)      Kaki 14 sebagai output dari inputan E1 dan hasil output dari E0
h)      Kaki 15 sebagai output pertama dari gerbang AND tunggal (E0)
i)        Kaki 16 sebagai input dari VCC



LS74SN147
Bentuk fisik


Fungsi dari masing-masing PIN tersebut adalah:
a)      Kaki 1,2,3,4,5,10,11,12,13 inputan data
b)      Kaki 6,7,9,14sebagai output rangkaian
c)      Kaki 8 sebagai ground
d)     Kaki 15 pada IC ini tidak digunakan (tidak berfungsi)

e)      Kaki 16 sebagai input dari VC
d.      Rangkaian logika
 IC LS74SN148


IC LS74SN147

e.       Fungsi
Encoder adalah rangkaian yang memiliki fungsi berkebalikan dengan dekoder. Rangkaian logika yang berfungsi mengubah data yang ada pada inputnya menjadi kode-kode biner pada outputnya.



f.       Tabel kebenaran
IC LS74SN148



IC LS74SN147

g.      Aplikasi
Papan ketik yang terdiri atas karakter, angka, dan karakter khusus yang kira-kira terdiri atas 84 karakter. Setiap karakter dipilih dengan menekan sebuah tombol pada papan ketik (keyboard). Berikut adalah contoh aplikasi rangkaian:


Rangkaian encoder diaplikasikan pada rangkaian diatas sebagai pengubah inputan dari keypad menuju output yang berupa tampilan angka di seven segmen.
3.      MULTI PLEKSER
a.       Pengertian
Teknik menggabungkan beberapa sinyal untuk dikirimkan secara bersamaan pada suatu kanal transmisi. Dimana perangkat yang melakukan Multiplexing disebut Multiplexer atau disebut juga dengan istilah Transceiver / Mux. Dan untuk di sisi penerima, gabungan sinyal - sinyal itu akan kembali di pisahkan sesuai dengan tujuan masing – masing.
Multiplekser adalah suatu peranti yang mampu menyalurkan beberapa jalur data ke satu jalur luaran. Multiplekser mempunyai satu atau lebih sinyal masukan yang terhubung pada masukannya. Pemilihan saluran masukan dilakukan oleh sinyal kontrol.  Multiplexer (MUX) atau selector data adalah suatu rangkaian logika yang menerima beberapa input data, dan untuk suatu saat tertentu hanya mengizinkan satu data input masuk ke output, yang diatur oleh input selektor. Oleh karena itu, MUX memiliki fungsi sebagai pengontrol digital. MUX memiliki kanal input lebih besar dari 1 (minimal 2 atau kelipatan 2), dan hanya memiliki 1 kanal output. Jumlah selektor dilihat dari banyaknya kanal input (n)

b.      Blok Diagram
                 
c.       Tipe IC dan Fungsi PIN
SN74LS258B
Bentuk fisik

Fungsi masing-masing PIN
a)      Kaki 1 sebagai select (pemilih)
b)      Kaki 2,3,5,6,10,11,13,14 berfungsi sebagai inputan
c)      Kaki 4,7,9,12 berfungsi sebagai output
d)     Kaki 8 sebagai ground
e)      Kaki 15 sebagai stobe
f)       Kaki 16 sebagai VCC

SN74LS257B
Bentuk fisik


Fungsi masing-masing PIN
a)      Kaki 1 sebagai select (pemilih)
b)      Kaki 2,3,5,6,10,11,13,14 berfungsi sebagai inputan
c)      Kaki 4,7,9,12 berfungsi sebagai output
d)     Kaki 8 sebagai ground
e)      Kaki 15 sebagai stobe
f)       Kaki 16 sebagai VCC

SN74LS251
Bentuk fisik


Fungsi masing-masing PIN
a)      Kaki 1,2,3,4,12,13,14,15 berfungsi sebagi inputan data
b)      Kaki 5 dan 6 sebagai output
c)      Kaki 7 sebagai masukan enable
d)     Kaki 8 sebgai ground
e)      Kaki 9,10,11 sebagai pemilih data yang akan dikeluarkan
f)       Kaki 16 sebagi VCC



d.      Rangkaian Logika
SN74LS258B


SN74LS257


SN74LS251


e.       Fungsi
Multiplekser berfungsi sebagai:
-          Penyeleksi inputan data
-          Menentukan Data routing (perjalanan data) Multiplekser biasanya menentukan perjalanan data dari satu sumber data diantara beberapa sumber ke satu tujuan.
-          Operation sequencing (pengurutan operasi)
-          Konversi parallel ke seri
Kebanyakan system digital memproses data biner secara parallel (seluruh bit secara serentak), karena teknik ini lebih cepat. Tetapi apabila data ini harus disalurkan ke tempat-tempat yang relative jauh, susunan parallel ini menjadi tidak efektif, karena memerlukan banyak saluran transmisi.Oleh karena itu, data biner berbentuk parallel sering diubah menjadi bentuk seri sebelum disalurkan ke tujuan yang jauh.
-          Menghasilkan bentuk gelombang



f.       Tabel Kebenaran
IC LS74SN257B dan IC LS74SN258B

IC SN74LS251



g.      Aplikasi
Misalnya pada jaringan transmisi jarak jauh, baik menggunakan kabel ataupun media udara (wireless atau radio). Contoh lainnya adalah jaringan komunikasi seluler seperti GSM yang dapat menjangkau jarak 100m-35km, CDMA, radio penyiaran, coaxial TV. Aplikasi lainnya adalah penampil 7 segmen 4 digit seperti dibawah ini
Proses menyalakan penampil 7 segmen 4 digit pada rangkaian diatas dilakukan secara bergantian yang dikontrol oleh mikrokontroler. Misalkan untuk menampilkan angka 1234 pada penampil 7 segmen 4 digit tersebut dilkukan secara bertahap dengan cepat sebagai berikut. Pertama mengirim kode BCD “1” ke jalur input dekoder 74LS247 dan mengaktifkan ruas penampil digit pertama saja dan display yang lain dimatikan. Kemudian mengirimkan kode BCD “2” ke jalur input dekoder 74LS247 dan hanya mengaktifkan penampil pada digit kedua saja dan yang lain di off-kan. Kemudian mengirimkan kode BCD “3” ke jalur input dekoder 74LS247 dan menyalakan hanya digit ke 3 dan digit penampil 7 segmen yang lain di off-kan. Kemudian mengirikan data BCD “4” ke jalur input dekoder 74LS247 dan menyalakan hanya digit ke 4 dan digit penampil 7 segmen yang lain di off-kan. Prose ini dilakukan dengan cepat dan memberikan waktu tunda pada setiap menyalakan 1 ruas/digit penampil 7 segmen sehingga seolah-olah semua penampil nyala secara bersamaan.
4.      DEMULTIPLEKSER
a.       Pengertian
Merupakan kebalikan dari Multiplexer. Mempunyai satu input data dan beberapa output (yang di control oleh selector untuk menentukan keluaran yang diinginkan). Demultiplekser adalah suatu rangkaian yang mendistribusikan satu masukan ke lebih dari satu luaran. Demultiplekser disebut juga data distributor. Pemilihan saluran luaran dilakukan oleh sinyal kontrol. Sinyal kontrol merupakan masukan yang berfingsi untuk mengarahkan setiap sinyal masukan pada saluran luaran yang dipilih.
Suatu demultiplekser dengan n sinyal kontrol akan memiliki 2n saluran luaran.Demultiplekser (De-Mux) atau disebut juga distributor data. De-Mux memiliki satu kanal input yang didistribusikan ke beberapa kanal output. Selektor input menentukan ke output mana input data akan didistribusikan.

b.      Blok diagram




c.       Tipe IC dan fungsi PIN
IC SN74LS154
Bentuk fisik


Fungsi masing-masing PIN
a)      Kaki 1,2,3,4,5,6,7,8,9,10,11,13,14,15,16,17 sebagai output rangakaian.
b)      Kaki 12 sebagai ground
c)      Kaki 18,19 sebagai select
d)     Kaki 20,21,22,23 sebagai input data
e)      Kaki 24 sebagai VCC



SN74LS155 dan SN74LS156
Bentuk fisik
        
Fungsi masing-masing PIN
a)      Kaki 1 dan 15 sebagi inputan data
b)      Kaki 2 dan 14 sebagai strobe
c)      Kaki 3 dan 13 sebagi select (pemilih data inputan yang akan dikeluarkan)
d)     Kaki 4,5,6,7,9,10,11,12 sebagai output
e)      Kaki 8 sebagai ground
f)       Kaki 16 sebagi VCC


IC DM74LS138
Bentuk fisik

Fungsi masing-masing PIN
a)      Kaki 1,2,3 berfungsi sebagai select (inputan data yang dapat dipilih salah satu)
b)      Kaki 4,5,6 berfungsi sebagai enable (untuk memeilih keluaran mana yang akan mengeluarkan data)
c)      Kaki 7,9,10,11,12,13,14,15 sebagai output data
d)     Kaki 8 sebagai ground
e)      Kaki 16 sebagai VCC




d.      Rangkaian logika
DM74LS138

SN74LS155 dan SN74LS156

IC SN74LS154










e.       Fungsi
Pembagi aliran data tunggal ke dalam beberapa sinyal asli. Dengan menggunakan sinyal kendali, kita dapat mengatur penyaluran masukan pada keluaran tertentu yang diinginkan. Sinyal kendali ini akan mengatur bagian mana atau alamat (address) mana yang akan diaktifkan atau dipilih. Perangkat demultiplexer disebut juga distribusi data atau penyalur data (data distributor) yaitu sebuah rangkaian logika yang menerima hanya satu masukan data dan melewatkan ke salah satu di antara beberapa keluaran.

f.       Tabel kebenaran
DM74LS138



SN74LS155 dan SN74LS156


IC SN74LS154



g.      Aplikasi




Aplikasi diatas digunakan untuk memilih data dari beberapa switch, kemudian mentransmisikan pada satu jalur data, selanjutnya data tersebut diuraikan kembali oleh demultiplexer, sesuai dengan data aslinya, dalam satu waktu. Untuk selec input atau addres input pada simulasi ini digunakan counter 2 bit menggunakan JK Flip flop, dan Timer Ne555 sebagai sinyal generatornya.












DAFTAR PUSTAKA
1.      Tim Asisten Dosen. 2015. Modul 2: Encoder dan Decoder. Malang : Universitas Negeri Malang.
2.      Tim Asisten Dosen. 2015. Modul 3: Multiplexer dan Demultiplexer. Malang : Universitas Negeri Malang.
4.      Data sheet SN7442A,DM74LS47, SN74LS48, LS74SN147, LS74SN148, SN74LS257B, SN74LS25B1, SN74LS155, SN74LS156, SN74LS154, DM74LS138