BAB XII PERIPHERAL AVR RIZAL SURYANA
PHERIPERAL AVR Analog to Digital Converter (ADC) Pulse Width Modulation (PWM)
ADC Salah satu fasilitas Mikrokontroller AVR ADC berfungsi untuk mengubah data analog menjadi data digital ADC memiliki 2 karater prinsip, Kecepatan Sampling dan Resolusi Kecepatan Sampling menyatakan seberapa sering sinyal analog dikonversikan ke bentuk sinyal digital pada selang waktu tertentu
Kecepatan Sampling ADC Kecepatan sampling biasanya dinyatakan dalam sample per second (SPS)
Resolusi ADC Resolusi ADC menentukan ketelitian nilai hasil konversi ADC Contoh : ADC 8 bit kana memiliki output 8 bit data digital, sinyal input datap dinyatakan dalam 255 (2n – 1) nilai diskrit ADC 12 bit memiliki 12 bit output data digital, sinyal input dapat dinyatakan dalam 4096 nilai diskrit. ADC 12 bit akan memberikan ketelitian nilai hasil konversi yang jauh lebih baik dari pada ADC 8 bit
Prinsip Kerja ADC ADC akan mengkonversi sinyal analog ke dalam bentuk besaran yang merupakan rasio perbandingan sinyal input dengan tegangan referensi. Contoh : Tegangan Referensi 5 Volt, Tegangan Input 3 Volt, maka rasio input terhadap referensi adalah 60% Jika menggunakan ADC 8 bit dengan skala maksimum 255, akan didapatkan sinyal digital sebesar 60% x 255 = 15310 atau 100110012
Signal = (sample/max_output)*V_referensi = (153/255) * 5 = 3 Volt Pada AVR umumnya ADC memiliki resolusi sebesar 10 bit dengan tegangan referensi maksimum sebesar 5 Volt. ADC 8 bit, Range pengukuran 0 – 5 maka perubahan per 1 bit = 5/255 = 19,6 mVolt ADC 10 bit, perubahan per 1 bit = 5/1023 = 4,88 mVolt Tegangan Referensi = Vmax/2
Konfigurasi ADC Proses inisialisasi ADC meliputi proses penentuan clock, tegangan referensi, format output data dan mode pembacaan. Dalam konfigurasi ADC ada beberapa register yang harus di konfigurasi yaitu : ADC Multiplexer Selection Register (ADMUX), ADC Control and Status Register (ADCSRA) dan Special Function IO Register (SFIOR).
Konfigurasi Register ADC ADC Multiplexer Selection Register (ADMUX) Bit 7:6 REFS1:0 Reference Selection Bits Bit 5 ADLAR : ADC Left Adjust Result
Bits 4:0 – MUX4:0 Analog Channel and Gain Selection Bits
ADC Control and Status Register (ADCSRA) Bit 7 – ADEN ADC Enable 1 = Enable, 0 = Disable Bit 6 – ADSC ADC Start Conversion, 1 = enable, 0 = disable Bit 5 – ADATE ADC Auto Trigger Enable Bit 4 – ADIF ADC Interrupt Flag, 1 = ADC conversion completer and data Registers updated Bit 3 – ADIE ADC Interrupt Enable
Bits 2:0 – ADPS2:0 ADC Prescaler Select Bits, digunakan untuk menentukan frekuensi yang digunakan ADC dalam melakukan konversi Nilai frekuensi yang digunakan ADC bergantung pada frekuensi oscillator dari XTAL Pada dasarnya ADC bekerja pada Frekuensi 50 – 200 KHz Contoh : AVR menggunakan Oscillator 11 MHz, lalu kita menggunakan prescaler 64, maka nilai frekuensi ADC adalah 11 MHz /64 = 172,875 KHz
Special Function IO Register (SFIOR) Bits 7:5 – ADTS2:0 ADC Auto Trigger Source Bit 4 – ADHSM ADC High Speed Mode
Pulse Width Modulation (PWM) PWM Teknik mendapatkan efek sinyal analog dari sebuah sinyal digital yang terputus-puts PWM dibangkitkan hanya dengan menggunakan digital I/O yang difungsikan sebagai output. Pengaturan lebar pulsa PWM disebut dengan Duty cycle Duty Cycle perbandingan antara lebar sinyal High dengan lebar Low dalam satu periode
Vo = Tegangan Output (Volt) VS = Tegangan Pulsa PWM (Volt) t1 = Periode Pulsa high (Second) T = Periode Pulsa (Second)
Mode PWM Normal Mode Fast PWM Mode Phase Correct PWM
Mode Fast PWM Mode fast Pulse Width Modulation memberikan pilihan dengan membangkitan gelombang PWM yang berfrekuensi tinggi Mode Fast PWM berbeda dengan mode PWM lain yang ditandai dengan operasi kemiringan tunggal (Single Slope Operation). Counter akan mulai menghitung dari BOTTOM hingga Nilai MAX
Mode Phase Correct PWM PWM yang membangkitkan gelombang dengan resolusi tinggi phase corret Pada mode ini menggunakan operasi dual slope Frekeunsi yang dihasil akan lebih rendah dari mode fast PWM
Register Konfirugasi PWM Timer/Counter Control Register TCCR Bit 7 – FOC0 Force Output Compare, bit ini hanya aktif ketika bit WGMO0 menspesifikan mode non-PWM Bit 6, 3 – WGMO1:0 Waveform Generation Mode bit ini mengontrol urutan penghitungan dari, sumber bagi nilai counter maksimum (TOP) dan tipe apa dari waveform Generation yang digunakan
SEKIAN DAN TERIMAKASIH