На днях для своего проекта собрал модуль : http://robozone.su/2008....mi.html
Начал его тестировать.. а там работает только 1 мотор:((
Не знаю что прям делать, очень жалко детали которые потратил, может поможете, чем сможете...
Code
$regfile = "m16def.dat" ' файл спецификации Меги8
$crystal = 16000000 ' указываем на какой частоте будем работать
'----------------------------------------------------------------------------
Config Timer1 = Pwm , Pwm = 8 , Prescale = 8 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down
Config Pind.3 = Output : Dr1 Alias Portd.3 'ногу сконфигурировали как выход и обозвали Dr1
Config Pind.6 = Output : Dr2 Alias Portd.6 'ногу сконфигурировали как выход и обозвали Dr2
Config Pind.5 = Output 'ногу ШИМа 1-ого движка сконфигурировали как выход
Config Pind.4 = Output 'ногу ШИМа 2-ого движка сконфигурировали как выход
'----------------------------------------------------------------------------
Dim Speed As Byte
Speed = 255 ' указываем скорость робота
Config Rc5 = Pinc.6
Enable Interrupts
Dim Address As Byte , Command As Byte
Print "Start" ' выводим в терминал отладочное сообщение
Do
Gosub Прием_rc5
If Command = 255 Then
Gosub Стоп
Waitms 0
Elseif Command = 1 Then
Gosub Прямо
Waitms 0
Elseif Command = 2 Then
Gosub Назад
Waitms 0
Elseif Command = 3 Then
Gosub Влево
Waitms 0
Elseif Command = 4 Then
Gosub Вправо
Waitms 0
End If
Loop
Прием_rc5:
Getrc5(address , Command)
If Address <> 255 And Command <> 255 Then
Command = Command And &B01111111
'Print Chr(12); ' выводим в терминал символ
'Print "Address - " ; Address; ' выводим в терминал адрес
'Print "Command - " ; Command; ' выводим в терминал номер команды
End If
Return
Стоп: ' стоим на месте
Dr1 = 0 : Dr2 = 0 : Pwm1a = 0 : Pwm1b = 0
Return
Прямо:
' едим вперёд на заданной скорости
Dr1 = 1 : Dr2 = 0 : Pwm1a = 1 : Pwm1b = 0
Return
Назад: ' едим назад на заданной скорости
Dr1 = 0 : Dr2 = 1 : Pwm1a = 0 : Pwm1b = 1
Return
Вправо: ' делаем Разворот_вправо на заданной скорости
Dr1 = 1 : Dr2 = 0 : Pwm1a = 0 : Pwm1b = 1
Return
Влево: ' делаем Разворот_влево на заданной скорости
Dr1 = 0 : Dr2 = 1 : Pwm1a = 1 : Pwm1b = 0
Return
ШИМ 1 и ШИМ 2 по 4.6В.