Задание№3-1

Материал из roboforum.ru Wiki
Версия от 13:48, 28 марта 2009; Galex1981 (обсуждение | вклад) (ошибка в программе - до этого шел вечный 1 на вход сервы)
Перейти к: навигация, поиск

Сигнальный провод сервы подключен к ножке МК B.0

<source lang="vb"> $prog &HFF , &HE4 , &HD9 , &H00 'указываем какие фусибиты надо прошить $regfile = "m32def.dat" ' файл спецификации Меги32 $crystal = 8000000 ' указываем на какой частоте будем работать $baud = 2400 ' указываем частоту дла usart (теперь нужно только для отладки программы)

'---------------------------------------------------------------------------- Config Timer1 = Pwm , Pwm = 8 , Prescale = 1 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down Config Pinc.2 = Output : Drl Alias Portc.2 'ногу сконфигурировали как выход и обозвали Drl Config Pinc.3 = Output : Drr Alias Portc.3 'ногу сконфигурировали как выход и обозвали Drr Config Pind.4 = Output 'ногу ШИМа левого движка сконфигурировали как выход Config Pind.5 = Output 'ногу ШИМа правого движка сконфигурировали как выход '---------------------------------------------------------------------------- Declare Sub Povorot(byval Gradus As Byte)

Do

  Call Povorot(30)

Loop


Sub Povorot(byval Gradus As Byte) Local A As Byte Local Temp As Word

  Temp = Gradus / 10
  Portb.0 = 1
  Waitus 500
  For A = 1 To Temp
     Waitus 111
  Next
  portb.0=0
  Waitus 18000

End Sub

</source>