Aplikasi Mikrokontroler AVR 8535 pengaturan kecepatan motor DC dengan PWM dan Tachometer dengan LCD menggunakan Bascom AVR
Untuk LCD dihubungkan dengan Port A
Timer1 sebagai pembangkit PWM
Timer0 sebagai penghitung pulsa encoder (sensor putaran)
Pinc.6 input berupa saklar geser
jika saklar ON maka motor akan berputar dan kecepatan motor akan di monitor pada LCD
berikut source code BASCOM AVR
$regfile = "m8535.dat"
$crystal = 11059200
$lib "lcd4busy.Lbx"
Config Lcd = 16 * 2
Const _lcdport = Porta
Const _lcdddr = Ddra
Const _lcdin = Pina
Const _lcd_e = 2
Const _lcd_rw = 1
Const _lcd_rs = 0
Cursor Off
Config Timer0 = Counter , Edge = Falling
Enable Interrupts
Enable Ovf0
On Ovf0 Int_counter
Dim speed As Integer
Dim Mulai As Bit
Config Portc.6 = Input
Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Prescale = 8
Config Portc = Input
Do
If Pinc.6 = 0 Then
Pwm1a = 500
Counter0 = 0
speed = 0
Start Timer0
Waitms 500
Stop Timer0
speed = speed + Counter0
speed = speed * 6 'Tergantung hasil kalibrasi
Cls
Lcd "***RPM****"
Locate 2 , 1
Lcd "(RPM)="
Locate 2 , 8
Lcd " "
Locate 2 , 8
Lcd speed
Else
Pwm1a = 0
End If
Loop
'---------------
Int_counter:
speed = speed+ 65535
Return
Gambar Rangkaian
To continued..
untuk pertanyaan silahkan email ke mhdyasseen@yahoo.com