bascom ngeselin banget yacoyo wrote:Ini source code-nya:Code: Select all
$regfile = "m48def.dat" 'MCU yg dipakai ATMEGA48 $crystal = 8000000 'Frekuensi 8MHz (internal clock, tanpa kristal) $hwstack = 32 'default use 32 for the hardware stack $swstack = 10 'default use 10 for the SW stack $framesize = 40 'default use 40 for the frame space Config Pind.5 = Output ' PD5 (Pin 11) sebagai output Config Pind.6 = Output ' PD6 (Pin 12) sebagai output Config Pind.7 = Output ' PD7 (Pin 13) sebagai output ' Untuk clock 4MHz satuan dalam 1uS (microdetik), ' jadi untuk 8 MHz harus dikalian 2 Const Servomax = 4000 ' = 2000uS * 2 Const Servocen = 3000 ' = 1500uS * 2 Const Servomin = 2000 ' = 1000uS * 2 ' Nilainya dari GETADC berkisar antara 0~1023 ' Sedangkan pulsa yg akan dihasilkan berkisar 2000~4000 ' Pengali = (servo max-servomin)/1024) = 1.95 dibulatkan jadi 2 ' Penambah = Servocen - 1024 Const Pengali = 2 Const Penambah = 1976 ' Definisikan variable yg dipakai Dim A As Word Dim B As Word Dim C As Word ' Konfigurasi ADC (Analog to Digital Converter) Config Adc = Single , Prescaler = Auto , Reference = Avcc Start Adc Do A = Getadc(0) ' baca nilai Trimpot 1 B = Getadc(1) ' baca nilai Trimpot 2 C = Getadc(2) ' baca nilai Trimpot 3 A = A * Pengali A = A + Penambah B = B * Pengali B = B + Penambah C = C * Pengali C = C + Penambah Pulseout Portd , 5 , A ' kirim sinyal ke Servo 1 Pulseout Portd , 6 , B ' kirim sinyal ke Servo 2 Pulseout Portd , 7 , C ' kirim sinyal ke Servo 3 Waitms 13 ' tunggu selama 13 milidetik Loop ' ulangi terus sampai bosen End
#nyesel belajar C



