Mikrokontroler
- Pengertian Mikrokontroler
Mikrokontroler
adalah sebuah sistem komputer fungsional dalam sebuah chip. Di dalamnya
terkandung sebuah inti prosesor, memori (sejumlah kecil RAM, memori program,
atau keduanya), dan perlengkapan input output.
Dengan kata
lain, mikrokontroler adalah suatu alat elektronika digital yang mempunyai
masukan dan keluaran serta kendali dengan program yang bisa ditulis dan dihapus
dengan cara khusus, cara kerja mikrokontroler sebenarnya membaca dan menulis
data. Sekedar contoh, bayangkan diri Anda saat mulai belajar membaca dan
menulis, ketika Anda sudah bisa melakukan hal itu Anda bisa membaca tulisan
apapun baik buku, cerpen, artikel dan sebagainya, dan Andapun bisa pula menulis
hal-hal sebaliknya. Begitu pula jika Anda sudah mahir membaca dan menulis data
maka Anda dapat membuat program untuk membuat suatu sistem pengaturan otomatik
menggunakan mikrokontroler sesuai keinginan Anda. Mikrokontroler merupakan
komputer didalam chip yang digunakan untuk mengontrol peralatan elektronik,
yang menekankan efisiensi dan efektifitas biaya. Secara harfiahnya bisa disebut
“pengendali kecil” dimana sebuah sistem elektronik yang sebelumnya banyak
memerlukan komponen-komponen pendukung seperti IC TTL dan CMOS dapat
direduksi/diperkecil dan akhirnya terpusat serta dikendalikan oleh
mikrokontroler ini.
- Jenis - Jenis Mikrokontroler
Secara teknis, hanya ada 2 macam
mikrokontroller. Pembagian ini didasarkan pada kompleksitas instruksi-instruksi
yang dapat diterapkan pada mikrokontroler tersebut. Pembagian itu yaitu RISC
dan CISC.
- RISC merupakan kependekan dari Reduced Instruction Set Computer. Instruksi yang dimiliki terbatas, tetapi memiliki fasilitas yang lebih banyak.
- CISC kependekan dari Complex Instruction Set Computer. Instruksi bisa dikatakan lebih lengkap tapi dengan fasilitas secukupnya.
- Varian Mikrokontroler
Masing-masing mempunyai keturunan atau
keluarga sendiri-sendiri. Sekarang kita akan membahas pembagian
jenis-jenis mikrokonktroler yang telah umum digunakan,yaitu :
1. Keluarga
MCS51
Mikrokonktroler ini termasuk dalam keluarga
mikrokonktroler CISC. Sebagian besar instruksinya dieksekusi dalam 12 siklus
clock. Mikrokontroler ini berdasarkan arsitektur
Harvard dan meskipun awalnya dirancang untuk aplikasi mikrokontroler chip
tunggal, sebuah mode perluasan telah mengizinkan sebuah ROM luar 64KB dan RAM
luar 64KB diberikan alamat dengan cara jalur pemilihan chip yang terpisah untuk
akses program dan memori data. Salah satu kemampuan dari mikrokontroler
8051 adalah pemasukan sebuah mesin pemroses boolean yang mengijikan operasi
logika boolean tingkatan-bit dapat dilakukan secara langsung dan secara efisien
dalam register internal dan RAM. Karena itulah MCS51 digunakan dalam rancangan
awal PLC (programmable Logic Control).
2. AVR
Mikrokonktroler Alv and Vegard’s Risc
processor atau sering disingkat AVR merupakan mikrokonktroler RISC 8 bit.
Karena RISC inilah sebagian besar kode instruksinya dikemas dalam satu siklus
clock. AVR adalah jenis mikrokontroler yang paling sering dipakai dalam bidang
elektronika dan instrumentasi. Secara umum, AVR dapat dikelompokkan dalam
4 kelas. Pada dasarnya yang membedakan masing-masing kelas adalah memori,
peripheral dan fungsinya. Keempat kelas tersebut adalah keluarga ATTiny,
keluarga AT90Sxx, keluarga ATMega dan AT86RFxx.
3. PIC
Pada awalnya, PIC merupakan kependekan dari
Programmable Interface Controller. Tetapi pada perkembangannya berubah menjadi
Programmable Intelligent Computer. PIC termasuk keluarga mikrokonktroler
berarsitektur Harvard yang dibuat oleh Microchip Technology. Awalnya
dikembangkan oleh Divisi Mikroelektronik General Instruments dengan nama
PIC1640. Sekarang Microhip telah mengumumkan pembuatan PIC-nya yang keenam PIC cukup popular digunakan oleh para
developer dan para penghobi ngoprek karena biayanya yang rendah, ktersediaan
dan penggunaan yang luas, database aplikasi yang besar, serta pemrograman (dan
pemrograman ulang) melalui hubungan serial pada komputer.
- Analisis Mikrokontroler ATMega8535
ATMega8535 adalah mikrokontroler CMOS 8 bit daya
rendah berbasis arsitektur RISC. Instruksi dikerjakan pada satu siklus clock,
ATMega8535 mempunyai throughput mendekati 1 MIPS per MHz, hal ini membuat
ATMega8535 dapat bekerja dengan kecepatan tinggi walaupun dengan penggunaan
daya rendah. Mikrokontroler ATmega8535 memiliki beberapa fitur atau spesifikasi
yang menjadikannya sebuah solusi pengendali yang efektif untuk berbagai
keperluan. Fitur-fitur tersebut antara lain:
Saluran I/O sebanyak 32 buah, yang terdiri atas Port
A, B, C dan D
ADC (Analog to Digital Converter)
Tiga buah Timer/Counter dengan kemampuan perbandingan
CPU yang terdiri atas 32 register
Watchdog Timer dengan osilator internal
SRAM sebesar 512 byte
Memori Flash sebesar 8kb dengan kemampuan read while write
Unit Interupsi Internal dan External
Port antarmuka SPI untuk men-download program ke flash
EEPROM sebesar 512 byte yang dapat diprogram saat operasi
Antarmuka komparator analog
Port USART untuk komunikasi serial.
B. Konfigurasi Pin ATMega8535
ADC (Analog to Digital Converter)
Tiga buah Timer/Counter dengan kemampuan perbandingan
CPU yang terdiri atas 32 register
Watchdog Timer dengan osilator internal
SRAM sebesar 512 byte
Memori Flash sebesar 8kb dengan kemampuan read while write
Unit Interupsi Internal dan External
Port antarmuka SPI untuk men-download program ke flash
EEPROM sebesar 512 byte yang dapat diprogram saat operasi
Antarmuka komparator analog
Port USART untuk komunikasi serial.
B. Konfigurasi Pin ATMega8535
Mikrokontroler AVR ATMega memiliki 40 pin dengan 32
pin diantaranya digunakan sebagai port paralel. Satu port paralel terdiri dari
8 pin, sehingga jumlah port pada mikrokontroler adalah 4 port, yaitu port A,
port B, port C dan port D. Sebagai contoh adalah port A memiliki pin antara
port A.0 sampai dengan port A.7, demikian selanjutnya untuk port B, port C,
port D. Diagram pin mikrokontroler dapat dilihat pada gambar berikut:
Diagram Pin ATMega8535
Berikut ini adalah tabel penjelasan mengenai pin yang terdapat pada mikrokontroler ATMega8535:
Berikut ini adalah tabel penjelasan mengenai pin yang terdapat pada mikrokontroler ATMega8535:
Tabel Penjelasan pin pada mikrokontroler ATMega8535
Vcc Tegangan suplai (5 volt)
GND Ground
RESET Input reset level rendah, pada pin ini selama lebih dari panjang pulsa minimum akan menghasilkan reset walaupun clock sedang berjalan. RST pada pin 9 merupakan reset dari AVR. Jika pada pin ini diberi masukan low selama minimal 2 machine cycle maka sistem akan di-reset
XTAL 1 Input penguat osilator inverting dan input pada rangkaian operasi clock internal
XTAL 2 Output dari penguat osilator inverting
Avcc Pin tegangan suplai untuk port A dan ADC. Pin ini harus dihubungkan ke Vcc walaupun ADC tidak digunakan, maka pin ini harus dihubungkan ke Vcc melalui low pass filter
Aref pin referensi tegangan analog untuk ADC
AGND pin untuk analog ground. Hubungkan kaki ini ke GND, kecuali jika board memiliki analog ground yang terpisah
Berikut ini adalah penjelasan dari pin mikrokontroler ATMega8535 menurut port-nya masing-masing:
GND Ground
RESET Input reset level rendah, pada pin ini selama lebih dari panjang pulsa minimum akan menghasilkan reset walaupun clock sedang berjalan. RST pada pin 9 merupakan reset dari AVR. Jika pada pin ini diberi masukan low selama minimal 2 machine cycle maka sistem akan di-reset
XTAL 1 Input penguat osilator inverting dan input pada rangkaian operasi clock internal
XTAL 2 Output dari penguat osilator inverting
Avcc Pin tegangan suplai untuk port A dan ADC. Pin ini harus dihubungkan ke Vcc walaupun ADC tidak digunakan, maka pin ini harus dihubungkan ke Vcc melalui low pass filter
Aref pin referensi tegangan analog untuk ADC
AGND pin untuk analog ground. Hubungkan kaki ini ke GND, kecuali jika board memiliki analog ground yang terpisah
Berikut ini adalah penjelasan dari pin mikrokontroler ATMega8535 menurut port-nya masing-masing:
1. Port A
Pin33 sampai dengan pin 40 merupakan pin dari port
A. Merupakan 8 bit directional port I/O. Setiap pin-nya dapat menyediakan
internal pull-up resistor (dapat diatur per bit). Output buffer port A dapat
memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data
Direction Register port A (DDRA) harus di-setting terlebih dahulu sebelum port
A digunakan. Bit-bit DDRA diisi 0 jika ingin memfungsikan pin-pin port A yang
disesuaikan sebagai input, atau diisi 1 jika sebagai output. Selain itu,
pin-pin pada port A juga memiliki fungsi-fungsi alternatif khusus seperti yang
dapat dilihat dalam tabel:
Tabel Penjelasan pin pada port A
Pin
Keterangan
PA.7 ADC7 (ADC Input Channel 7)
PA.6 ADC6 (ADC Input Channel 6)
PA.5 ADC7 (ADC Input Channel 5)
PA.5 ADC4 (ADC Input Channel 4)
PA.3 ADC3 (ADC Input Channel 3)
PA.2 ADC2 (ADC Input Channel 2)
PA.1 ADC1 (ADC Input Channel 1)
PA.0 ADC0 (ADC Input Channel 0)
2. Port B
PA.6 ADC6 (ADC Input Channel 6)
PA.5 ADC7 (ADC Input Channel 5)
PA.5 ADC4 (ADC Input Channel 4)
PA.3 ADC3 (ADC Input Channel 3)
PA.2 ADC2 (ADC Input Channel 2)
PA.1 ADC1 (ADC Input Channel 1)
PA.0 ADC0 (ADC Input Channel 0)
2. Port B
Pin 1 sampai dengan pin 8 merupakan pin dari port B.
Merupakan 8 bit directional port I/O. Setiap pin-nya dapat menyediakan internal
pull-up resistor (dapat diatur per bit). Output buffer port B dapat memberi
arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction
Register port B (DDRB) harus di-setting terlebih dahulu sebelum port B
digunakan. Bit-bit DDRB diisi 0 jika ingin memfungsikan pin-pin port B yang
disesuaikan sebagai input, atau diisi 1 jika sebagai output. Selain itu,
pin-pin port B juga memiliki fungsi-fungsi alternatif khusus seperti yang dapat
dilihat dalam tabel:
Tabel Penjelasan pin pada port B
Pin
Keterangan
PB.7 SCK (SPI Bus Serial Clock)
PB.6 VISO (SPI Bus Master Input/Slave Output)
PB.5 VOSI (SPI Bus Master Output/Slave Input)
PB.4 SS (SPI Slave Select Input)
PB.3 AIN1 (Analog Comparator Negative Input)OCC (Timer/Counter0 Output Compare Match Output)
PB.2 AIN0 (Analog Comparator Positive Input)INT2 (External Interrupt2 Input)
PB.1 T1 (Timer/Counter1 External Counter Input)
PB.0 T0 (Timer/Counter0 External Counter Input)XCK (JSART External Clock Input/Output)
3. Port C
PB.6 VISO (SPI Bus Master Input/Slave Output)
PB.5 VOSI (SPI Bus Master Output/Slave Input)
PB.4 SS (SPI Slave Select Input)
PB.3 AIN1 (Analog Comparator Negative Input)OCC (Timer/Counter0 Output Compare Match Output)
PB.2 AIN0 (Analog Comparator Positive Input)INT2 (External Interrupt2 Input)
PB.1 T1 (Timer/Counter1 External Counter Input)
PB.0 T0 (Timer/Counter0 External Counter Input)XCK (JSART External Clock Input/Output)
3. Port C
Pin 22 sampai dengan pin 29 merupakan pin dari port
C. Port C sendiri merupakan port input atau output. Setiap pin-nya dapat menyediakan
internal pull-up resistor (dapat diatur per bit). Output buffer port C dapat
memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data
Direction Register port C (DDRC) harus di-setting terlebih dahulu sebelum port
C digunakan. Bit-bit DDRC diisi 0 jika ingin memfungsikan pin-pin port C yang
disesuaikan sebagai input, atau diisi 1 jika sebagai output. Selain itu,
pin-pin port D juga memiliki fungsi-fungsi alternatif khusus seperti yang dapat
dilihat dalam tabel II.6:
Tabel Penjelasan pin pada port C
Pin
Keterangan
PC.7 TOSC2 (Timer Oscillator Pin 2)
PC.6 TOSC1 (Timer Oscillator Pin 1)
PC.1 SDA (Two-Wire Serial Bus Data Input/Output Line)
PC.0 SCL (Two-Wire Serial Bus Clock Line)
4. Port D
PC.6 TOSC1 (Timer Oscillator Pin 1)
PC.1 SDA (Two-Wire Serial Bus Data Input/Output Line)
PC.0 SCL (Two-Wire Serial Bus Clock Line)
4. Port D
Pin 14 sampai dengan pin 20 merupakan pin dari port
D. Merupakan 8 bit directional port I/O. Setiap pin-nya dapat menyediakan
internal pull-up resistor (dapat diatur per bit). Output buffer port D dapat
memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data
Direction Register port D (DDRD) harus di-setting terlebih dahulu sebelum port
D digunakan. Bit-bit DDRD diisi 0 jika ingin memfungsikan pin-pin port D yang
disesuaikan sebagai input, atau diisi 1 jika sebagai output. Selain itu,
pin-pin port D juga memiliki fungsi-fungsi alternatif khusus seperti yang dapat
dilihat dalam tabel:
Tabel Penjelasan pin pada port D
Pin
Keterangan
PD.0 RDX (UART input line)
PD.1 TDX (UART output line)
PD.2 INT0 (external interrupt 0 input)
PD.3 INT1 (external interrupt 1 input)
PD.4 OC1B (Timer/Counter1 output compareB match output)
PD.5 OC1A (Timer/Counter1 output compareA match output)
PD.6 ICP (Timer/Counter1 input capture pin)
PD.7 OC2 (Timer/Counter2 output compare match output)
C. Diagram Blok ATMega8535
PD.1 TDX (UART output line)
PD.2 INT0 (external interrupt 0 input)
PD.3 INT1 (external interrupt 1 input)
PD.4 OC1B (Timer/Counter1 output compareB match output)
PD.5 OC1A (Timer/Counter1 output compareA match output)
PD.6 ICP (Timer/Counter1 input capture pin)
PD.7 OC2 (Timer/Counter2 output compare match output)
C. Diagram Blok ATMega8535
Pada diagram blok ATMega8535 digambarkan 32 general
purpose Working register yang dihubungkan secara langsung dengan Arithmetic
Logic Unit (ALU). Sehingga memungkinkan dua register yang berbeda dapat diakses
dalam satu siklus clock
Tidak ada komentar:
Posting Komentar