Ik ben wat aan het oefenen geslagen met een Servomotor, type SG-90.
Met een MikroBasic Proramma wil ik het ding in twee standen heen en weer zetten.
Volgens de data aheet moet je dan een puls kiezen van 1,5 ms (=666 Hz) voor de middenstand en 1 ms (= 1000 Hz) voor de meest linkse stand.
Maar bij de 2e PWM_INT reboot de processor.
Wat doe ik fout?
pic basic code:
program PWM_Test
Main:
OSCCON = %01110000 '8 Mhz internal
ANSEL = 0 ' Configure AN pins as digital I/O
ANSELH = 0
PORTA = 255
PORTB = 255
TRISA = 255 ' configure PORTA pins as input
PORTB = 0 ' set PORTB to 0
TRISB = 0 ' designate PORTB pins as output
PORTB.6 = 1 'Test LED On
Delay_ms(1000)
while True
PORTB.6 = 0 'Test LED Off
Delay_ms(1000)
PWM1_Init(1000)
PWM1_Set_Duty(67)
PWM1_Start()
Delay_ms(1000)
PWM1_Stop()
PWM1_Init(666)
PWM1_Set_Duty(67)
PWM1_Start()
Delay_ms(1000)
PWM1_Stop()
wend
end.