Langsung ke konten utama

Pemrograman Mikrokontroler

Belajar programpenggunaan fungsi mikrokontroler. Perangkat lunak yang diperlukan adalah
  1. Codevision AVR,
  2. PROTEUS ISIS untuk simulasi
Sebelummya, kita memerlukan sebuah indikator berupa LED yang bisa dihubungkan dengan PORT I/O mikrokontroler, sehingga kita dapat mengetahui  apakah data berhasil kita keluarkan ke PORT yang bersangkutan. Seperti contoh adalah adalah gambar berikut yang menunjukan rangkaian minimum untuk menghidupkan 8 LED melalui Port B. yang perlu diperhatikan adalah konfigurasi rangkaian LED yaitu Common Anode (CA) atau Anoda bersama yang artinya 8 Anoda LED dihubungkan jadi satu lalu dihubungkan dengan 5 V, sehingga untuk menghidupkan LED pada Port B, port B harus dikirim atau diberi logika ‘0’

 
Namun ini bukan rangkaian mutlak, anda bisa saja, menggunakan  konfigurasi rangkaian Common Cathode (CC) atau Katoda Bersama, yang maksudnya adalah katoda dari 8 LED dihubungkan jadi satu dan di-groundkan sehingga untuk menghidupkan LED pada Port B, port B harus dikirim atau diberi logika ‘1’. .  Jika anda bingung dengan istilah Anoda, Katoda, Common Anoda ataupun Common Cathoda tanyakan saja dengan om google ;) Anda bisa saja tidak menghubungkan LED array tersebut ke PORTB namun ke PORTC, itu bukanlah masalah, asalkan anda konsisten nanti ke pemrogramannya J dalam gambar diatas saya menghubungkan LED ke PORT B dengan konfigurasi Common Anode (LED menyala jika data yang dikirimkan logika 0), namun nanti dalam program dibawah saya akan menggunakan PORTC dengan konfigurasi LED Common Cathode (LED menyala jika data yang dikirimkan logika 1) seperti pada gambar dibawah ini
 
Mengapa saya buat begitu? Ya agar anda menjadi lebih fleksibel dan bebas berkreasi ;) inikan negara demokrasi, jadi bukan jamannya lagi harus gini dan harus gitu, berbeda  ga masalah asalkan programnya nanti konsisten. Enaknya bikin saja indikator LED yang bisa disambung lepas dengan minimum system anda, sehingga anda bisa memindah –mindah sambungan indikator sesuai dengan Port yang anda program JSetelah rangkaian selesei maka kita akan memulai memprogram mikrokontroler menggunakan CodeVisionAVRTEORIFasilitas input/output merupakan fungsi mikrokontroller untuk dapat menerima sinyal masukan (input) dan memberikan sinyal keluaran (output). Sinyal input maupun sinyal output adalah berupa data digital 1 (high, mewakili tegangan 5 volt) dan 0 (low, mewakili tegangan 0 volt). Mikrokontroller ATMEGA8535 memiliki 4 buah PORT 8 bit bidirectional yang dapat difungsikan sebagai PORT input maupun PORT output yaitu PORTA, PORTB , PORTC, dan PORT D. Register digunakan untuk mengatur fungsi dari pin-pin pada tiap port. Register dapat dianalogikan sebagai kumpulan switch on/off yang digunakan untuk mengaktifkan fungsi apa yang akan dipakai dari port mikrokontroller. Pada setiap port pin terdapat 3 buah register 8 bit: DDRxn, PORTxn, dan PINxn. Register DDRxn digunakan untuk menentukan arah dari pin yang bersangkutan. Jika DDRxn diberikan nilai 1 (high), maka pin digunakan sebagai output. Jika DDRxn diberikan nilai 0 (low), maka pin difungsikan sebagai input.Register PORTxn digunakan untuk mengaktifkan pull-up resistor (pada saat pin difungsikan sebagai input), dan memberikan nilai keluaran pin high/low (pada saat difungsikan sebagai output). Konfigurasi PORTxn dan DDRxn dapat dilihat pada tabel dibawah.



Tri-state adalah kondisi diantara high dan low, atau biasa disebut dengan keadaan mengambang (floating). Kondisi tri-state sangat dihindari dalam dunia digital. Terlepas dari setting DDRxn, PINxn merupakan register yang berfungsi untuk mengetahui keadaan tiap-tiap pin pada mikrokontroller. Register ini sangat dibutuhkan untuk membaca keadaan pin pada saat difungsikan sebagai inputAPLIKASI OUTPUT  1. Buka CV AVR., pilih File->New->Project.2. Klik YES ketika terdapat option untuk meggunakan codeWizardAVR.3. Pilih chip yang akan digunakan ATMEGA8535 atau sesuaikan dengan mikrokontroler yang anda gunakan atur harga clock 16 Mhz atau sesuai dengan kristal yang anda gunakan



4. Klik tab Ports, pilih tab Port C seperti pada gambar, ubah setting bit 0 – bit 7 sebagai out. Jika anda ingin mengirim data melalui Port B maka tab PortB yang anda setting, hal yang sama berlaku jika anda ingin mengirimkan data melalui Port yang lainHasil



Hasil setting ini berpengaruh pada nilai register DDRxn, dan PORTxn.5. Setting selesai, untuk mengenerate program pilih File >> Generate, Save, and Exit.6. Buat direktori dengan nama io1.7. Save file CV AVR dengan nama io1.cwp pada direktori io1.8. Save file .C dengan nama io1.c pada direktori io1.9. Save file project dengan nama io1.prj pada direktori io1Listing Program1. Sekarang perhatikan kode bahasa C pada bagian setting register DDRxn, dan PORTxn, tampak sebagai berikut,


 
DDRC = 0xFF yang berarti 8 bit port C difungsikan sebagai output. PORTC = 0×00 berarti nilai awalan output adalah 0(low).Jika yang anda setting adalah PortB maka DDRB yang bernilai 0xFF,dan PORTB = 0×00  sesuaikan dengan hasil pengaturan pada wizard2. Nilai register PORTC diatas adalah nilai awalan pada saat mikrokontroller start-up, kita bisa mengubah nilai output port C dengan mengubah nilai register PORTC pada looping while.



 
PORTC = 0xCD, nilai output port C adalah CD dalam bentuk hexa atau 11001101 dalam bentuk biner.3. Program chip dengan memilih menu Project >> Build atau dengan menekan shift + F9. Jika pada kode masih terdapat kesalahan/error akan terlihat pada message

 

4. Setelah itu download hasil file kompilasi (hex) ke dalam mikrokontroler menggunakan software ponyprog..5. Hubungkan portC dengan indikator LED array.6. Perhatikan led array, lampu led akan menyala 11001101 jika diurut dari Port7- Port0.



sumber : http://elektronikayuk.wordpress.com/2011/08/22/pemrograman-mikrokontroler-b-ab-output/
.............................................................................................................................................................
Note : Teman iini postingan tentang mikrokontroler, yang ke berapa aku sendiri lupa soalnya budreg ...haha.
yasudahlah yang penting sudah ada kemauan untuk belajar. Semangat! :)

Komentar

Postingan populer dari blog ini

Profile Tokoh (Eko Pratomo Suyatno) : Ayah Berhati Malaikat

  Eko Pratomo Suyatno, siapa yang tidak kenal lelaki bersahaja ini? Namanya sering muncul di koran, televisi, di buku-buku investasi dan keuangan. Dialah salah seorang dibalik kemajuan industri reksadana di Indonesia dan juga seorang pemimpin dari sebuah perusahaan investasi reksadana besar di negeri ini. Dalam posisinya seperti sekarang ini, boleh jadi kita beranggapan bahwa pria ini pasti super sibuk dengan segudang jadwal padat. Tapi dalam note ini saya tidak akan menyoroti kesuksesan beliau sebagai eksekutif. Karena ada sisi kesehariannya yang luar biasa!!!! Usianya sudah tidak terbilang muda lagi, 60 tahun. Orang bilang sudah senja bahkan sudah mendekati malam, tapi Pak Suyatno masih bersemangat merawat istrinya yang sedang sakit. Mereka menikah sudah lebih 32 tahun. Dikaruniai 4 orang anak. Dari isinilah awal cobaan itu menerpa, saat istrinya melahirkan anak yang ke empat. tiba-tiba kakinya lumpuh dan tidak bisa digerakkan. Hal itu terjadi selama 2 tah...

“Internet Sehat Writing Competion” Bangunlah Generasi Dahsyat Negeriku

Internet adalah media sumber pengetahuan yang tidak ternilai dan menyediakan kekayaan informasi untuk mendukung pembelajaran siswa. Secara harfiah, internet (kependekan dari interconnected-networking) dalam wikipedia ialah rangkaian komputer yang terhubung di dalam beberapa rangkaian. Banyak manfaat yang kita dapat dari penggunaan internet antara lain sarana memperoleh informasi ,berita ,pendidikan,berbelanja online, dan lain sebagainya. Seluruh dunia telah terhubung dan menggunakan internet ,bahkan tidak menutup kemungkinan internet akan menjadi kebutuhan pokok manusia dan sarana mendapatkan penghasilan atau dngan kata lain internet sebagai sarana bekerja. Menurut Internet World Stats tahun 2009, Indonesia menempati rangking ke 13 dalam penggunaan internet , yaitu sejumlah 30 juta user, atau setara dengan 1,7% total pengguna di dunia. Situs malware,perjudian,pornografi,phising, dan sejenisnya merupakan situs – situs yang harus dihindari ,tapi pada kenyataannya situs ini just...

Hanya Aku dan Harapanku

T ak tahu apa yang sedang aku pikirkan. Saat ini aku bingung, hanya berharap Tuhan berbelas kasih padaku untuk menunjukkan jalan yang terbaik yang harus aku ambil. Semalam aku mengamati deretan  foto-foto seorang wanita , wanita itu adalah sosok masa lalu dari orang yang saat ini sangat menyayangiku. Aku merasa sangat tak pantas menggantikan sosok wanita seperti dia. Dia terlihat sangat baik, dewasa, pintar, cantik, dan banyak kelebihan pada dirinya yang mungkin tak kumiliki. Masih berkecamuk dalam pikirku apa pantas orang seperti diriku ini dikagumi oleh banyak orang? Malu rasanya mengingat semuanya.           Beberapa menit mata ini memandangi foto di album foto FB wanita itu, terdiam, terpaku, meratap,    mengapa wanita sebaik dia ditinggalkan?  apa salahnya?  Bagaimana perasaannya waktu mereka berdua berpisah? Apakah dia merasa sakit?   Dia yang sudah menjadi seseorang...