Вторая программа на PICBASIC
Вторая программа на PICBASIC
Вторая программа на PICBASIC является гораздо более гибкой. Пользователь может изменять параметры программы (время задержки) во время ее работы с помощью одного из четырех выключателей, соединенных с портом А. При нажатии кнопки 1 время задержки между импульсами увеличивается, и соответственно ротор ШД вращается медленнее. Кнопка 2 обладает противоположным действием. При нажатии кнопки 3 двигатель останавливается и находится в режиме ожидания, пока эта кнопка нажата. Кнопка 4 управляет направлением вращения ШД (по часовой стрелке или против часовой стрелки). Нажатие кнопки 4 изменяет направление вращения на противоположное. Реверсирование направления вращения сохраняется на все время нажатия кнопки.
‘Контроллер вращения ШД
Symbol TRISB = 134 ‘Инициализация TRISB как 134
Symbol TRISA = 133 ‘Инициализация TRISA как 133
Symbol PortB = 6 ‘Инициализация portb как 6
Symbol PortA = 5 ‘Инициализация porta как 5
symbol ti = b6 ‘Начальное время задержки
ti = 100 ‘Установка времени задержки 100 мс
Poke TRISB,0 ‘Установка PORTB как выхода
start: ‘Вращение ШД вперед
poke portb, 1 ‘Шаг 1
pause ti ‘Задержка
poke portb,2 ‘Шаг 2
pause ti ‘Задержка
poke portb,4 ‘Шаг 3
pause ti ‘Задержка
poke portb,8 ‘Шаг 4
pause ti ‘Задержка
goto check ‘Переход на проверку состояния кнопок
start2: ‘Вращение ШД назад
poke portb,8 ‘Шаг 1
pause ti ‘Задержка
poke portb,4 ‘Шаг 2
pause ti ‘Задержка
poke portb,2 ‘Шаг 3
pause ti ‘Задержка
poke portb,1 ‘Шаг 4
pause ti ‘Задержка
goto check ‘Переход на проверку состояния кнопок
Check: ‘Состояние кнопок
Peek PortA, B0 ‘Загрузка состояния
if bit0 = 0 then loop1 ‘Если кнопка 1 нажата, увеличить ti
if bit1 = 0 then loop2 ‘Если кнопка 2 нажата, уменьшить ti
if bit2 = 0 then loop3 ‘Остановка ШД
if bit3 = 0 then start ‘Вращение вперед
goto start2 ‘Реверсивное вращение
loop1: ‘Увеличение времени задержки
poke portb,0 ‘Выключение транзисторов
ti = ti +5 ‘увеличение задержки на 5 мс
pause 50 ‘Пауза 50 мс
if ti > 250 then hold1 ‘Ограничение задержки 250 мс
peek porta,b0 ‘Проверка состояния кнопок
if bit0 = 0 then loop1 ‘Продолжать увеличивать задержку?
goto check ‘Если нет, переход на основную проверку состояния
loop2: ‘Уменьшить задержку
poke portb,0 ‘Выключение транзисторов
ti = ti – 5 ‘Уменьшение задержки на 5 мс
pause 50 ‘Пауза 50 мс
if ti < 20 then hold2 ‘Ограничение задержки 20 мс
peek porta,b0 ‘Проверка состояния кнопок
if bit1 = 0 then loop2 ‘Продолжать уменьшать задержку?
goto check ‘Если нет, переход на основную проверку состояния
hold1: ‘Верхний предел задержки
ti = 245 ‘Задержка до 250 мс
goto loop1 ‘Идти назад
hold2: ‘Нижний предел задержки
ti = 25 ‘Задержка 25 мс
goto loop2 ‘Идти назад
hold3: ‘Остановка ШД
poke portb,0 ‘Выключение транзисторов
peek porta,b0 ‘Проверка состояния кнопок
if bit2 = 0 then hold3 ‘Держать мотор выключенным?
goto check ‘Если нет, переход на основную проверку состояния
Схема устройства изображена на рис. 10.13. На фотографии (рис. 10.14) трудно различить конструкцию кнопок выключателей. Они представляют собой четыре оголенных проводящих полоски позади микроконтроллера.
Рис. 10.13. Схема шагового микроконтроллера с дополнительными выключателями
Рис. 10.14. Схема микроконтроллера шагового двигателя
Верхние половины оголенных полосок соединены с источником питания 5 В через резисторы сопротивлением 10 кОм. Проводник от каждой полоски соединен с соответствующим выводом порта А ИС. Второй контакт представляет собой оголенный одножильный проводник, соединенный с землей, на который замыкаются при нажатии на соответствующие полоски.
Половинный шаг
Использование режима половинного шага эффективно удваивает разрешение ШД. В этом случае для завершения полного оборота требуется 400 импульсов. Таблица 10.4 представляет логику переключений, необходимую для работы программы. Когда вы дойдете до конца таблицы, то вы циклически вернетесь к ее началу.
Таблица 10.4. Логика переключений транзисторов для половинного шага
Переменная задержки ti
Переменная ti в каждой из программ на PICBASIC определяет время задержки, целью которой является снижение скорости следования выходных импульсов на шине В. Без этой задержки скорость следования выходных импульсов может оказаться слишком большой для обеспечения нормальной работы ШД, что приведет к сбоям в его функционировании.
Вы можете захотеть изменить значение переменной ti в зависимости от тактовой частоты работы микропроцессора, определяемой кварцевым резонатором. Проведя эксперименты, вы подберете наилучший диапазон изменения переменной ti для конкретного PIC.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКДанный текст является ознакомительным фрагментом.
Читайте также
Глава 3. Программа
Глава 3. Программа Полное её название «Рабочая программа испытаний турбогенератора № 8 Чернобыльской АЭС в режимах совместного выбега с нагрузкой собственных нужд».Ничего выдающегося в Программе нет, обычная программа, нормально написанная. Известность она получила
Программа «HYWARDS»
Программа «HYWARDS» В поддержку проектов «РоБо» и «Брасс Белл» ВВС инициализировали программу исследований, названную «Программа изучения гиперзвукового оружия» — «Хьювардс» («HYWARDS»).Решаемые в ее рамках задачи были впервые сформулированы в требованиях к перспективному
Программа «Холод»
Программа «Холод» Выше я уже упоминал, что с 1993 по 1996 год по заказу Российского космического агентства в рамках поддержанной государством научно-исследовательской и экспериментальной программы «Орел» проводились исследования тенденций развития и возможностей
Программа «СОИ»
Программа «СОИ» Как очень быстро выяснилось, ассигнования на «СОИ», предусмотренные бюджетом, не могли обеспечить успешного решения грандиозных задач, поставленных перед программой. Не случайно многие эксперты оценивали реальные расходы на программу в течение всего
Программа «Фон»
Программа «Фон» В начале 70-х годов в СССР были проведены научно-исследовательские и опытно-конструкторские работы по программе «Фон» с целью создания перспективной системы ПРО. Суть программы состояла в создании системы, которая позволила бы держать «на прицеле» все
Компилятор PICBASIC Pro
Компилятор PICBASIC Pro Существует старшая версия компилятора PICBASIC, которая имеет название PICBASIC Professional компилятор. Версия Pro компилятора гораздо бо-: лее дорогая и стоит порядка $249,95. Версия Pro имеет гораздо больший и развернутый набор команд, чем стандартная версия
Первая программа на PICBASIC PRO
Первая программа на PICBASIC PRO Данная программа аналогична по функции программе wink.bas для PICBASIC, но текст ее имеет отличия. Запустите программу CodeDesigner (Lte) – см. рис. 6.18 – и введите следующий текст:‘ Программа мигалка‘ Попеременное мигание двух светодиодов, подключенных к
Программа
Программа Блок-схема программы изображена на рис. 8.17. После включения питания ходовой двигатель отключен, и микроконтроллер начинает искать наиболее яркий источник света, поворачивая сервомотор. Если источник света имеет слишком большую яркость, то включается режим
Программа 1
Программа 1 ‘Микроконтроллер 1start:High 4: low 4 ‘Мигание светодиодаb7 = 0button 5,0,255,0,b7,1,avoid ‘Проверка препятствияpot 7, 255, b0 ‘Считывание датчика CdS 1pot 6, 255, b1 ‘Считывание датчика CdS 2if b0 <= 250 then skip ‘Достаточно темно?If b1 >= 250 then slp ‘Даskip: ‘Нетif bo > 25 then skip 2 ‘Слишком много светаif b1 < 25
Программа 2
Программа 2 ‘Микроконтроллер 2b4 = 150 ‘Установка среднего положения сервомотораstart:peek 6, b1 ‘Чтение данных микроконтроллера 1let b0 = b1 & 7 ‘Маскирование кроме первых трех битовif b0 = 0 then slp ‘Время спячкиif b0 = 1 then rt ‘Поворот направоif b0 = 2 then lt ‘Поворот налевоif b0 = 3 then fw ‘Движение
Программа для микроконтроллера
Программа для микроконтроллера Микроконтроллер 16F84 управляет работой трех сервомоторов. Наличие большого числа незадействованных шин ввода/вывода и места под программу предоставляет возможность совершенствования и модификации базовой модели
Программа PICBASIC
Программа PICBASIC ‘Шестиногий шагающий робот‘Соединения‘Левый сервомотор Pin RB1‘Правый сервомотор Pin RB2‘Сервомотор наклона Pin RB0‘Движение только впередstart:for B0 = 1 to 60pulsout 0, 155 ‘Наклон по часовой стрелке, подъем правой стороныpulsout 1, 145 ‘Левые ноги на местеpulsout 2, 145 ‘Правые
Программа на BASIC
Программа на BASIC Программа на BASIC очень проста. После нахождения адреса порта прин тера, программа управляет работой воздушного клапана через вывод 2.5 REM Контроллер соленоида воздушного клапана10 REM Джон Иовин15 REM Найти адрес порта принтера20 DEF SEG = 025 a = (PEEK(1032) + 256 * PEEK(1033))30 REM
Программа «Меркурий»
Программа «Меркурий» Практически в течение того же периода времени, начиная с 1958 г., в США также широким фронтом развернулись работы по осуществлению первой в этой стране пилотируемой космической программы «Меркурий». В конце 50-х годов в США не было достаточно мощной РН,
Программа «Аполлон»
Программа «Аполлон» Под этим названием в 60-х годах в США проводился огромный комплекс работ, основной задачей которого была высадка человека на Луну. Выполнение программы, престижное значение которой занимало далеко не последнее место, потребовало израсходования около
Программа «ТУ-204»
Программа «ТУ-204» На 38-ом Международном авиасалоне, проходившем в 1989 г. на парижском аэродроме «Ле Бурже», в экспозиции советской авиакосмической техники внешнеэкономическое объединение «Авиаэкспорт» впервые продемонстрировало магистральный самолет Ту-204 с
Ловин Джон
Просмотр ограничен
Смотрите доступные для ознакомления главы 👉