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 tahun,

Berlapang Dada - Sekuat Karang

  Aku tidak boleh menangisi nasibku yang bersuamikan siapa. Ini pilihanku sendiri. Kalaupun pilihanku ini membuat hidupku susah dan hidup sengsara lagi seperti apa yang dialami orangtuaku dulu, semoga Alah kuatkan pundakku. Aku tak boleh meratapi apa yang terjadi padaku kemarin, saat ini ataupun yang terjadi di masa depan meski itu akan terasa pahit dan menyedihkan dijalani. Menangis hanya akan membuatku tidak berani menerima kenyataan dan takut unntuk melangkah maju meninggalkan beban yang ada di pundaku saat ini. Kalaupun aku melangkah untuk melepaskan beban di pundak yang nantinya hanya untuk berganti dengan beban lain yang mungkin lebih berat, berharap saja agar beban itu akan dibuatNya lebih ringan untuk dijalani. Allah, aku tak ingin menyesali keputusanku. Tuntun aku dan kuatkan aku untuk menjalani hari-hari esok sebagai seorang anak, seorang istri dan juga seorang ibu bagi anakku. Aku pasrahkan masa depan anak dan keluargaku padaMu Ya Allah. KepadaMu aku berserah.

cord d'bagindas empat mata

Empat Mata d'Bagindas [intro] E B C#m A 3x E B Biarkanlah diri ini C#m A Untuk mencoba mendekatimu E B Mendekati indahnya dirimu C#m A Dirimu yang hadir di mimpiku [int] E B C#m A E B Berikanlah aku waktu C#m A Dan keadaan yang engkau mampu E B Empat mata yang ku mau C#m A B Untuk katakan cinta padamu F#m B Hati ini takkan bisa F#m B Lebih lama tuk memendam rasa [chorus] A E Empat mata bicara padamu C#m B Ku katakan aku cinta kamu A E Empat mata ku ingin bertemu C#m B Tuk ungkapkan isi di hatiku E B Berikanlah aku waktu C#m A Dan keadaan yang engkau mampu E B Empat mata yang ku mau C#m A B Untuk katakan cinta padamu F#m B Hati ini takkan bisa F#m B Lebih lama tuk memendam rasa [chorus] A E Empat mata bicara padamu