Berdasarkan informasi dari teman-teman yang kuliah di universitas lain, ternyata banyak dari mereka yang masih memakai mikrokontroler kuno tipe MCS52 (AT89S51/52) (untuk jurusan elektronika, red). Padahal sekarang (sudah lama juga sih launchingnya) ATMEL telah memperkenalkan Mikrokontroler generasi baru type AVR sebagai pengganti dari Type MCS51. Alasan mereka adalah “Di kampus yang diajarkan cuma mikrokontroler type AT89S51”. Kalau AVR menawarkan kemudahan dan kelebihan kamu nggak ingin mencoba? Memang sih belajar sendiri itu lebih sulit dibanding kan kalau sudah ada referensi dari dosen. Tapi, kalau membuat project electronic yang berbasis mikrokontroler, penggunaan AVR akan lebih mudah dan efisien. Ya kalau bisa jangan stagnan dengan materi kuliah yang notabene banyak yang nggak di update.CMIIW.
Berikut fitur-fitur yang terdapat di AVR (based on my observation)
1. Kecepatan
Untuk mengeksekusi 1 buah instruksi mikrokontroler AVR hanya memerlukan 1 clock sedangkan MCS51 dalam hal ini AT89S51 memerlukan 12 clock. Jadi jelas AVR lebih cepat dari MCS51
2. Bahasa Pemrograman
Bahasa pemrograman yang digunakan oleh AVR adalah bahasa C (salah satunya, red). Sehingga lebih mudah dipahami daripada bahasa assembly. Memang bahasa assembly lebih dekat ke bahasa mesin sehingg lebih cepat eksekusinya. Tapi, pihat Atmel telah mengoptimasi bahasa C yang dipakai untuk AVR sehingga lebih cepat dan efisien.
3. Memory yang lebih besar
Untuk keluarga mikrokontroler AVR sudah banyak yang memiliki memory internal yang relatif besar. Misal untuk seri ATmega16 : 16 Kb (Flash memory), 512 Bytes (eeprom), 1 Kb (RAM). sedangkan untuk AT89S51 memiliki 4 Kb (Flash memory), 128 bytes (RAM). Dari sini terlihat kalau kapasitas memory AVR lebih besar daripada AT89S51. Dan lagi, AVR sudah punya EEPROM internal sehingga kita tidak perlu memakai EEPROM eksternal sebagaimana kalau kita pakai AT8951.
4. Efisiensi Hardware
Dengan memakai AVR kita bisa meminimalisasi penggunaan komponen pendukung seperti EEPROM eksternal (baca poin 3), sehingga kita tidak perlu lagi EEPROM eksternal.
Untuk sumber clock AVR telah menyediakannya secara terintegrasi. Karena didalam AVR sudah ada XTAL yang bisa diaktifkan sehingga kita tidak perlu memakai XTAL lagi. Untuk nilainya bisa kita kalibrasi sendiri apakah 4 Mhz, 1Mhz atau lainnya. Sebagai catatan untuk kebutuhan akurasi XTAL eksternal masih perlu dipakai. Tapi kalau akurasi tidak terlalu signifikan saya rasa cukup Xtal internal.
Bagi yang memerlukan ADC untuk konversi sinyal analog ke digital kita tidak perlu lagi memakai ADC eksternal (ADC 0804) karena untuk AVR seri ATmega 16 sudah ada ADC internal 10 bit.
5. Fitur-fitur tambahan
Mikrokontroler AVR memiliki fitur-fitur tambahan lainnya yang tidak terdapat di mikrokontroler AT89S51. Diantaranya
– RTC dengan oscilator terpisah
– PWM (Pulse Width Modulation)
– ADC 10 bit internal
– Master/slave SPI Serial interface
– On chip analog comparator
So, masih “setia” dengan mikrokontroler AT89S51? atau ingin tertarik “mencicipi” kelebihan fitur dari mikrokontroler AVR? it’s all up to you 🙂
PS: maaf, mungkin saat tulisan ini di buat telah beredar microcontroller yang lebih canggih dari mikrokontroler AVR? karena penulis baru paham tentang AVR ya cuma AVR aja yang dibahas
search term: mikrokontroler avr, at89s51
Pingback: Bahasa apa yang kamu suka? « My Simple Blog
#poin 2
Bahasa programman AVR bahasa C, ga salah lo!!!
Jangan salah mengerti AVR itu bisa diprogram pake bahasa apapun (Assembler,C,JAVA,PASCAL,BASIC) tergantung compilernya untuk merubah ke HEX…..
@elmo_cunox
Memang benar AVR bisa diprogram dengan berbagai bahasa pemrograman. Tapi, untuk tulisan saya ini saya hanya menyoroti dari sisi programming dengan bahasa C.
Terima kasih untuk koreksinya. 🙂
aq telah lama pakai AVR lebih mudah,luas,n simple ….
klo ada temen2 yang punya Software yg berbasis C boleh dikirim ke EmailQ………. oke trim
Membaca Tulisan rekan2 Aq akan beralih ke AVR, aq sdg pesan Atmega8535 dan Atmega16, saya dulu pakai Assembler sekarang pakai BASCOM. Kepada rekan2 tolong kebaikan hati rekan2 untuk mengirimi program apapun ttg AVR yang menggunakan ADC dengan watchdog apapun programnya, saya akan sangat berterimakasih.
Best Regards..,Trim’s dan matur nuwun.
takasawim@yahoo.com
bos klo bisa buat tutorialnya dong!!
ember 😀
tapi jangan salah juga bahwa penerusnya keluarga mikro 8051 yang terbaru semisal AT89C51RD2/AT 89C51ED2 tak kalah hebatnya dengan AVR .
Tapi kalo di indonesia dah populer po gak aku gak tau 😀
pertama kali aku beljar mikrokontroler aku belajar avr dengan bascom,,emang awalnya sangat mudah tapi akhirnya merasa masih sangat butuh dengan assembler dan yang lain
mohon bantuannya
mau tanya at89s51 bisa gk dijalankan sebagai timer dan counter sekaligus. bagaimana caranya??oia untuk program dengan bahasa c nya bagaimana caranya mencacah sesuatu dari piranti luar dan menampilkan cacahan dan waktu cacahan dengan lcd secara realtime bagaimana caranya?? terimakasih
mohon batuannya.
tergantung, mau di aplikasikan untuk apa. Contohnya pada kasus tugas besar saya, tidak perlu menggunakan mikrokontroller yang memiliki spec tinggi, yaitu rangkaian pulsa counter dengan input dari infrared/optocoupler, yang ditampilkan LCD atau 7 segment. bahkan dengan menggunakan mikrokontroller AT 89S51 pun, program dengan bahasa assembly sudah bisa di jalankan..selain itu harganya pun tentu lebih murah..
jadi jangan men-judge bahwa AT 89S51 kuno dan tidak berdayaguna maksimal, intinya TERGANTUNG PENGGUNAAN.
@maztikno…
sayang untuk tipe tersebut tidak ada yang package nya model DIP, hanya PLCC. jadi agak sulit kalau disolder biasa. Dan barangnya susah di cari di Indo 🙂
@bernard
saya tidak bilang kalau AT89S51 “tidak berdaya guna maksimal”. Kalau ada yang mikrokontroler yang menawarkan kemudahan dan efisiensi lebih baik kenapa tidak mencoba.
“Lebih Murah” ? justru kalau memakai AVR pengerjaan project secara keseluruhan akan lebih murah (point 4) 🙂
pengguna avr membaca 🙂
buat forum yuk ttg avr
http://avrdevid.muux.org/
wah saya yang termasuk hanya bisa memprogram mikrokontroler dengan bahasa assembler karena memang itu yang diajarkan. klo ada tolong infokan instruksi – instruksi memprogram mikrokontroller menggunakan bahasa C beserta dengan maksud dari instruksi tersebut.
thanks
bagus Ommm
terus perjuangkan isi posting dengan tema2 ini……..
kalo seandainya indonesia kaya akan ilmu dan tehnologi di jamin bakal menjadi negara yang berkembang
gimana kalo kita tukeran site
tolong link ke site gw ya bosss
misi-misi…
mw nanya nih, dimna yah link buat download tutorial BASCOM AVR tapi yang make bahasa basic..
tolongin donk tmn2^^
skrng lg nyusun nih.. jd perlu bgt tutorial nya..
thx^_^
bisa minta referensi tentang lcd topway lmb 162A , tapi bukan berupa datasheet
Untuk penggunaan microcontroller , memang lebih baik di sesuaikan dengan kebutuhan. Akan tetapi juga , lebih baik lagi setiap ada upgrade teknologi ( misale atmel mcs 51 dengan atmel avr ), seorang hardware designer/ programmer itu ikut mngupgrade skillnya mengikuti fitur baru yang ditawarkan.
Untuk pemilihan bahasa, Assembler tidak bisa dicompare dengan C , basic, atau bahasa tingkat tinggi lainya. Karena assembler adala bahasa paling rendah yang mendekati bahasa mesin, jadi pasti assembler lah yang paling optimal dari sisi mesin. Kalau mau compare, silakan misalkan compare C antara avrgcc, iar, codevision dan yang lain. btw, sekarang c programming for embedded system, sudah dikembangkan sedemkikian rupa untuk tingkat optimalisasi yang tinggi. Kelebihan C lainya adalah, lebih mudah untuk diporting antar system, misalnya dari avr ke pic atau ke platform lainya. atmel mcs51 juga program bisa dibuat dengan C misalnya sdcc atau keil c.
salam kenal…aku pengguna baru AVR,
dulu aku pengguna setia S51, menurut aku dari segi pemrograman aku kurang terbiasa dengan AVR ( assembler ) lebih mudah dengan s51…tapi mungkin seiring berjalan waktu aku terbiasa…
salam kenal aja
AVR aplikasinya lebih mudah dengan aneka bahasa pemrograman…..bagi temen2 yg punya bahasa pemrograman BASCOM AVR tolong bagi2 ilmux ya…terutama caranya membuat port a.0 dikondisikan sebagai input dan bila dapat tegangan 5V maka akan mengirimkan karakter hurf “M” ke komputer….dan bila tidak dapat tegangan 5V maka tidak ada karakter yang dikirim ke komputer….tk u
please tolog kasih tau gimana settingyang benar, jika kita ingin pake clock external 4M ( cristal ).saya pake ATtiny..saya sudah ganti CKsel3,cksel2,cksel1 sesuai datasheet.tapi hasilnya AVR Attiny2313 saya tidak bisa digunakan lagi…tidak bisa download dan tidak bisa dikembalikan kesemula…apakah ada yang kurang atau salah dalam hal yang saya lakukan. saya menggunakan ponyprog untuk ganti settingan fuse bit ini….saya sudah coba 3 kali dan hasilnya sama, tidak bisa. pleasee help me…
Sebagai penggemar setia keluarga 89S, rasanya tidak baik juga ninggalin mereka begitu saja. Lagipula library-nya baik skematik maupun listing program sudah banyak. Tapi skrg saya juga pake AVR. ATMEGA banyak dipake di produk komersil lho. ZELIO-nya Schneider paker ATMEGA128.
Salam,
Chandra MDE
saya juga butuh banget nih tutorial menggunaan port A =>ADC
terutama tutorial untuk penguuran SUHU..
tapi pake BASCOM…
kalo ada share ya ke email..
saya juga butuh banget nih tutorial menggunaan port A =>ADC
terutama tutorial untuk penguuran SUHU..
tapi pake BASCOM…
kalo ada share ya ke email..
email saya
adhitia.hidayat@gmail.com
hi all…
saya pelajar semester lima Diploma elektronik Komputer..
sy terlalu minat dan masih baru dalam embeeded programming
please guide me…i really need ur help!!!
thanks!!
sabaruddin_86@yahoo.com.my
Disini ada sedikit contoh aplikasi AVR ATMega8535 yang menggunakan bahasa Bascom AVR. Silahkan dicoba.
http://optix1.multiply.com
karena saya belajar AVR atmega 8535 dengan menggunakan bahsa asembly …
sekarang saya jasi bingung kalo untuk mengakses compas digital CMPS03 dengan menggunakan jalur i2c…
ribet banget..
ada ga yang punya tutorialnya dengan menggunakan bahasa asembly?
kalo g ada bahasa basic juga gpp deh..
tolong!
teman-teman,minta tolong donk…
saya mau menghitung RPM(rotasi per menit) dari motor DC (juga ada kendala dengan pengiriman data di USART nya karna data pd transmitter dr mikro yg ada di tempat lain/wireless (pake TLP dan RLP 434) dikirim terus menerus sedangkan bila di bagian receiver ini bila ditambahin sama counter dan timer itu butuh waktu juga,khan!!!Jadi pembacaanya g’ sempurna ).
tolongin donk…
dead line TA nya udah tinggal seminggu neh….
saya menggunakan sensor optocoupler…
jadi rencananya khan keluaran optocouplernya masuk ke pin eksternal interrupt…Catatan:anggap aja jumlah warna hitam putih pada gear masing-masing 4 jadi satu putaran itu terjadi misalnya 4 kali rising edge…
nah,mas bisa tidak saya minta tolong dituliskan programnya…
catatan:
1. kecepatan putar motor berubah-ubah
(tergantung input dari PWMnya)…
2. diinginkan RPMnya ditampilkan ke LCD
3. keluran optocouplerya masing-masing 0.7 V & 5 V
4. jumlah terjadinya rising edge pd satu rotasi=4
5. sekalian dgn setting2nya ya, mas…
secepatnya ya mas…
thanks banget sebelumnya…
HALLO semua…….
ada yang tau g list program untuk konversi suhu dari celcius ke fahrenheit dengn mnggnkan BASCOM AVR?sensor yg q gunain tu make interface I2C…
mohon bantuannya…………trims………..
waaaaaaaaaaaaaaaaahhh…
jadi lbih tertarik nih mo nyoba avr nya,
(kemarin main ke tempat temen lama, dpt oleh2 bascom-avr, but belum begitu diseriusin,.,)
oya mas,, bisa bantu kirimin contoh2 listing programnya dong,,unt bascom nya ke email aku…(dwijayateguh@yahoo.com)
maksih bnyk atas ilmunya dan kebaikan hatinya.,
salam hangat,
teman2 mohon pencerahanya saya masih awam di dunia mikrokontroller saya bingung mengapa atmel at89sxx dianjurkan harus menggunakan xtal 11,0592mhz tidak menggunakan xtal 12mhz, karakteristik dari osc di atmel tsb 1/12 dari frekuensi xtal jadi kita kalo pake xtal 12mhz clock nya jadi 1mhz pas, kalo pake 11,059kan jadinya kurang dari 1mhz kan ga pas mengapa??? teman2 yang baik mohon pencerahannya!!!
kalo bisa, bikin lebih banyak tutorial or contoh projek mas. THNKs
aku penghobi elektronik,aku belajar mikro dari buku2 aku sangat familier dgn mcs51 n assembler. dan ingin juga bisa tahu Avr dgn bhs C.tolongin aku untuk menerjemahkan intruksi dari C ke assemblernya. ato kalau ada buku/leteratur yg mudah di pahami untuk belajarAVR n bhs Cnya.
–>alhakim, bagaimana dengan downloadernya, dimana saya bisa dapatkan rangkaian downloadernya. ato kita bis membuatnya sendiri?
haii semua….
pernah ada yang buat project AVR dengan protocol modbuss ga? …kolo ada boleh ga minta contohnya…
hidup AT89C51/s51… murahmeriah…buat anak kos. di bandingin harus beli atmega. mumet dikit ot’s OK. sedikit di pelajari juga mudeng.
giman ya perintah program BASCOM AVR dengan menggunakan USART untuk 2 MK so program yg aq buat masih rumit kalau ada yg ngerti Bagi Ilmu dong….serrrrr
mantap.lanjutkan…
slam kenal
pa boleh saya minta informasi tentang mk cz skang q gi tugas akhir
permisi,,,
numpang tanya,,,
da yang tau coding nya cara menghitung putaran piringan pake infrared?? masih pemula,,
trims,,
kirim aja ke sukma354@gmail.com
bagaimana ya cara download program ke chip dg usb, pakai bascom avr? ada yang punya tutorialnya ?
aku lulusa ams ipa
tapi blm ngerti mengenai program2 diatas adakahsaran untuk ku ?
aku musti buka apa ya biar bisa belajar otodidak
pak!
minta kirimin doang listing programnya line follower dengan menggunakan sensor d-sonar memakai atmel 89s51.
mohon bantuannya
trims
kalau masalah kecepatan bukannya si 8051 itu CISC ya,
kalau masalah ROM,bukannya at89 itu CISC lagi ya