Aplikasi Mikrokontroler AVR 8535 pengaturan kecepatan motor DC dengan PWM dan Tachometer dengan LCD dengan BASCOM AVR

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