Программа 2

We use cookies. Read the Privacy and Cookie Policy

Программа 2

‘Микроконтроллер 2

b4 = 150 ‘Установка среднего положения сервомотора

start:

peek 6, b1 ‘Чтение данных микроконтроллера 1

let b0 = b1 & 7 ‘Маскирование кроме первых трех битов

if b0 = 0 then slp ‘Время спячки

if b0 = 1 then rt ‘Поворот направо

if b0 = 2 then lt ‘Поворот налево

if b0 = 3 then fw ‘Движение прямо

if b0 = 4 then avoid ‘Режим избегания

goto start

slp:

low 4: low 5 ‘Выключить двигатель

pulsout 3, b4 ‘Запустить сервомотор

pause 18 ‘Задержка включения сервомотора

goto start ‘Чтение данных микроконтроллера 1

rt: ‘Поворот направо

high 4: low 5 ‘Движение вперед

if b4 > 200 then rt1: ‘Поворот направо максимален

b4 = b4 + 1 ‘Нет

rt1: ‘Да

pulsout 3, b4 ‘Поворот сервомотора

pause 18 ‘Задержка ( 55 Гц)

goto start ‘Чтение данных микроконтроллера 1

lt: ‘Поворот налево

high 4: low 5 ‘Движение вперед

if b4 < 100 then lt1: ‘Поворот налево максимален

b4 = b4 – 1 ‘Нет

lt1: ‘Да

pulsout 3, b4 ‘Поворот сервомотора

pause 18 ‘Задержка (55 Гц)

goto start ‘Чтение данных микроконтроллера 1

fw: ‘Прямо

high 4: low 5 ‘Движение прямо

pulsout 3, b4 ‘Поворот сервомотора

pause 18 ‘Задержка (55 Гц)

goto start ‘Чтение данных микроконтроллера 1

avoid:

low 4: high 5 ‘Движение назад

if b4 > 150 then vr ‘Проверка. Перемена направления направо?

if b4 <= 150 then vl ‘Проверка. Перемена направления налево?

vr: ‘Перемена направления вправо

b5 = b4 – 30 ‘Направление поворота

for b6 = 1 to 120 ‘Цикл задержки 2 с

pulsout 3, b5 ‘Поворот сервомотора

pause 18 ‘Задержка (55 Гц)

next b6 ‘Конец цикла

goto start ‘Чтение данных микроконтроллера 1

vl: ‘Перемена направления влево

b5 = b4 + 30 ‘Направление поворота

for b6 = 1 to 120 ‘Цикл задержки 2 с

pulsout 3, b5 ‘Поворот сервомотора

pause 18 ‘Задержка (55 Гц)

next b6 ‘Конец цикла

goto start

Фотография конструкции робота в сборе показана на рис. 8.18

Рис. 8.18. Вид спереди готовой конструкции

Данный текст является ознакомительным фрагментом.