Jump to content

Mikrokontroler: Output Digital Atmega16: Difference between revisions

From Wiki
No edit summary
No edit summary
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
[[File:Mikrokontroler - Output Digital Atmega16.png|thumb|227x227px|AT89C51 (MCS-51)]]
[[File:Mikrokontroler - Output Digital Atmega16.png|thumb|227x227px|AT89C51 (MCS-51)]]
[[File:Mikrokontroler - Output Digital Atmega16 1.png|thumb|258x258px|ATMega16]]
[[File:Mikrokontroler - Output Digital Atmega16 1.png|thumb|258x258px|ATMega16]]
[[File:Mikrokontroler - Output Digital Atmega16 3.png|thumb|222x222px|Arsitektur Microcontroller]]
[[File:Mikrokontroler - Output Digital Atmega16 5.png|thumb|222x222px|ATMEGA16 + LED]]
Perusahaan yang mengembangkan mikrokontroler adalah Atmel yang memproduksi AT89C51 dan ATMEGA16.
Perusahaan yang mengembangkan mikrokontroler adalah Atmel yang memproduksi AT89C51 dan ATMEGA16.


Line 19: Line 17:
Tiga komponen utama dari mikrokontroler, yaitu: processor CPU, memory dan input/output (I/O).
Tiga komponen utama dari mikrokontroler, yaitu: processor CPU, memory dan input/output (I/O).


[[File:Mikrokontroler - Output Digital Atmega16 4.png|left|thumb|ATMEGA16 Pins]]
== Arsitektur Microcontroller ==
[[File:Mikrokontroler - Output Digital Atmega16 3.png|thumb|222x222px|Arsitektur Microcontroller]][[File:Mikrokontroler - Output Digital Atmega16 4.png|thumb|ATMEGA16 Pins|center]]


# VCC (pin10) masukan catu daya 5V.
# VCC (pin10) masukan catu daya 5V.
Line 32: Line 31:
# AREF (pin 32) merupakan pin masukan tegangan referensi ADC.
# AREF (pin 32) merupakan pin masukan tegangan referensi ADC.


 
[[File:Mikrokontroler - Output Digital Atmega16 5.png|thumb|222x222px|ATMEGA16 + LED|center]]
 


<syntaxhighlight lang="c">
<syntaxhighlight lang="c">

Latest revision as of 13:45, 23 March 2023

AT89C51 (MCS-51)
ATMega16

Perusahaan yang mengembangkan mikrokontroler adalah Atmel yang memproduksi AT89C51 dan ATMEGA16.

Microcontroller AT89C51 atau MCS-51 menggunakan bahasa pemrograman Assembler dan mengemas setiap instruksi dalam kode 8-bit pada setiap 1 (satu) siklus clock.

Microcontroller ATMEGA16 atau AVR menggunakan bahasa pemrograman C dan mengemas instruksi dalam kode 16-bit pada setiap 1 (satu) siklus clock.

Perbedaan antara AVR dengan MCS-51 untuk mengerjakan satu instruksi yang sama mencapai 12 siklus clock. Hal ini terjadi karena seri AVR berteknologi RISC (Reduced Instruction Set Computing), sedangkan seri MCS-51 berteknologi CISC (Complex Instruction Set Computing).Microkontroler

Seri MCS-51 berteknologi CISC (Complex Instruction Set Computing). Complex instruction-set computing adalah sebuah arsitektur dari set instruksi dimana setiap instruksi akan menjalankan beberapa operasi tingkat rendah, seperti pengambilan dari memory, operasi aritmetika, dan penyimpanan ke dalam memory, semuanya sekaligus dalam sebuah instruksi.

Seri AVR berteknologi RISC (Reduced Instruction Set Computing). Reduced Instruction Set Computing yang artinya prosesor tersebut memiliki set instruksi program yang lebih sedikit karena pada instruksi yang kompleks menjadi sederhana (reduced).Mikrocontroller

Yang membedakan antara AT89C51 dan ATMEGA16 adalah kapasitas memori, kemampuan dan fungsi peripheral. Sedangkan dari segi arsitektur dan instruksi hexadesimal yang digunakan sama.

Tiga komponen utama dari mikrokontroler, yaitu: processor CPU, memory dan input/output (I/O).

Arsitektur Microcontroller

Arsitektur Microcontroller
ATMEGA16 Pins
  1. VCC (pin10) masukan catu daya 5V.
  2. GND (pin 11, 31) merupakan pin Ground.
  3. Port A (pin 33 s/d 40) merupakan pin input/output dua arah dan pin masukan ADC.
  4. Port B (pin 1 s/d 8) merupakan pin input/output dua arah dan pin fungsi khusus,
  5. Port C (pin 22 s/d 29) merupakan pin input/output dua arah dan pin fungsi khusus
  6. Port D(pin 14 s/d 21) merupakan pin input/output dua arah dan pin fungsi khusus
  7. RESET (pin 9) untuk me-reset mikrokontroler.
  8. XTAL1 dan XTAL2 (pin 12, 13)
  9. AVCC (pin 30) merupakan pin masukan tegangan untuk ADC.
  10. AREF (pin 32) merupakan pin masukan tegangan referensi ADC.
ATMEGA16 + LED
#include <mega16.h>
#include <delay.h>
void main(void)
{
DDRA=0xFF;// Register pd Port A sbg Output
while (1)
{
PORTA=0;
delay_ms(500);
PORTA=0xFF;
delay_ms(500);
}
}