Чтение онлайн

на главную - закладки

Жанры

Создаем робота-андроида своими руками
Шрифт:

Для компиляции программы необходимо выбрать команду компиляции в соответствующем меню или нажать клавишу F5. CodeDesigner автоматически загрузит компилятор PICPASIC Pro для осуществления компиляции. Перед началом компиляции необходимо выбрать соответствующие опции в меню компилятора. CodeDesigner «попросит» выбрать директорию, в которой находится программа PICBASIC Pro и директорию для сохранения исходного и компилированного файлов.

После завершения компиляции мы можем приступить к следующему этапу – загрузке программы в микроконтроллер с помощью программатора EPIC. Необходимо следовать порядку, изложенному ранее в

инструкции для компилятора PICBASIC.

CodeDesigner и программатор EPIC

По желанию вы можете запрограммировать ИС также с помощью CodeDesigner. Выберите опцию «загрузить программатор» в меню программатора или нажмите F6. CodeDesigner автоматически запустит EPICWIN.exe под Windows.

Когда программа EPIC под Windows запущена, необходимо установить параметры конфигурации в меню опций:

• Device: Установите тип устройства. Поставьте опцию 16F84 (по умолчанию).

• Memory size (K): Устанавливает емкость ПЗУ. Поставьте 1.

• OSC: Установка типа осциллятора. Установите ХТ – кварцевый резонатор.

• Watchdog timer: Таймер режима ожидания. Установите On.

• Code protect: Защита кода. Установите Off.

• Power-up timer enable: таймер режима включения. Установите High.

После установки параметров конфигурации вставьте микроконтроллер PIC 16F84 в панельку платы программатора EPIC. В случае если CodeDesigner при запуске программы EPIC выдает ошибку «программатор EPIC не найден» (см. рис. 6.19), вы можете либо произвести диагностику программы, либо попробовать запустить EPIC в DOS моде. Инструкции по запуску матобеспечения EPIC под DOS приведены в разделе описания PICBASIC. Схема тестового устройства аналогична схеме для компилятора PICBASIC.

Рис. 6.19. Запуск программы EPIC из CodeDesigner

Мигание

Включите питание схемы. Светодиоды, подключенные к микроконтроллеру, будут попеременно включаться и выключаться.

Движемся дальше – приложения использования микроконтроллера

Сейчас настало время продемонстрировать вам, как используются микроконтроллеры в различных схемах. Вы уже обладаете начальным опытом программирования микроконтроллера 15F84. В этой главе приведены некоторые основные функции использования микроконтроллеров в различных устройствах. Эти функции повсеместно реализуются в микроконтроллерах, используемых в различных схемах и разработках.

Для начала посмотрим, как микроконтроллер может определить замыкание цепи. Для этой цели могут быть использованы любые из 13 шин ввод/вывод, которые работают в логике TTL. Для определения замыкания мы будем использовать эти логические уровни в соединении с выключателями (см. рис. 6.20).

Выключатели низкого уровня

На рис. 6.20 выключатель с меткой А выдает на шину ввода/вывода сигнал высокого логического уровня до момента замыкания. После замыкания шина «садится» на землю, т. е. получает сигнал низкого уровня. Когда микроконтроллер получает сигнал замыкания, он может произвести ряд операций или функций управления. В нашем случае замыкание контакта

выключателя вызовет мигание светодиода. Понятно, что светодиод может быть заменен транзистором, преобразователем, электронной схемой или другим микроконтроллером или компьютером.

Рис. 6.20. Переключатели логических уровней

Программа на PICBASIC имеет следующий вид:

‘PICBASIC компилятор

‘REM проверка выключателя низкого уровня

‘ Инициализация переменных

input 4 ‘Назначить шину PB4 для определения состояния выключателя

start:

if pin4 = 0 then blink ‘Если выключатель выдает низкий уровень – све

тодиод мигает

goto start ‘Если нет – проверить состояние выключателя

blink: ‘Процедура мигание

high 0 ‘Высокий уровень на шине RB0 для зажигания светодиода

pause 250 ‘Задержка ј с

low 0 ‘Низкий уровень на шине RB0 для гашения светодиода

pause 250 ‘Задержка ј с

goto start ‘Проверка состояния выключателя

Программу на PICBASIC Pro можно составить следующим образом:

‘REM BASIC Pro компилятор

‘Rem проверка выключателя низкого уровня

input portb.4 ‘Назначить шину PB4 для определения состояния выключателя

start:

if port.b = 0 then blink ‘Если выключатель выдает низкий уровень – све

тодиод мигает

goto start ‘Если нет – проверить состояние выключателя

blink: ‘Процедура мигание

high 0 ‘Высокий уровень на шине RB0 для зажигания светодиода

pause 250 ‘Задержка ј с

low 0 ‘Низкий уровень на шине RB0 для гашения светодиода

pause 250 ‘Задержка ј с

goto start ‘Проверка состояния выключателя

Схема устройства для выключателя низкого уровня приведена на рис. 6.21. Выключатель соединен с шиной ввода/вывода, помеченной RB4. Светодиод соединен с шиной RB0 через ограничительный резистор 470 Ом.

Рис. 6.21. Схема ключа низкого уровня

Выключатели высокого уровня

Программы и схемные решения для данного случая комплементарны предыдущему примеру. Посмотрим снова на рис. 6.20 – вариант В. Если переключатель с меткой В находится в положении «выключено», то шина выхода имеет низкий логический уровень. При замыкании переключателя на шину поступает сигнал высокого логического уровня.

Программа на PICBASIC имеет следующий вид:

‘PICBASIC компилятор

‘REM проверка выключателя высокого уровня

‘ Инициализация переменных

input 4 ‘Назначить шину PB4 для определения состояния выключателя

start:

if pin4 = 1 then blink ‘Если выключатель выдает высокий уровень – све

тодиод мигает

goto start ‘Если нет – проверить состояние выключателя

blink: ‘Процедура мигание

high 0 ‘Высокий уровень на шине RB0 для зажигания светодиода

pause 250 ‘Задержка ј с

Поделиться:
Популярные книги

Невеста на откуп

Белецкая Наталья
2. Невеста на откуп
Фантастика:
фэнтези
5.83
рейтинг книги
Невеста на откуп

Газлайтер. Том 3

Володин Григорий
3. История Телепата
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Газлайтер. Том 3

Орден Багровой бури. Книга 6

Ермоленков Алексей
6. Орден Багровой бури
Фантастика:
попаданцы
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Орден Багровой бури. Книга 6

Мастер Разума VII

Кронос Александр
7. Мастер Разума
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Мастер Разума VII

Возвышение Меркурия. Книга 5

Кронос Александр
5. Меркурий
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Возвышение Меркурия. Книга 5

Газлайтер. Том 2

Володин Григорий
2. История Телепата
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Газлайтер. Том 2

Гранд империи

Земляной Андрей Борисович
3. Страж
Фантастика:
фэнтези
попаданцы
альтернативная история
5.60
рейтинг книги
Гранд империи

Звездная Кровь. Изгой

Елисеев Алексей Станиславович
1. Звездная Кровь. Изгой
Фантастика:
боевая фантастика
попаданцы
рпг
5.00
рейтинг книги
Звездная Кровь. Изгой

Мастер темных Арканов 4

Карелин Сергей Витальевич
4. Мастер темных арканов
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Мастер темных Арканов 4

Завод 2: назад в СССР

Гуров Валерий Александрович
2. Завод
Фантастика:
попаданцы
альтернативная история
фэнтези
5.00
рейтинг книги
Завод 2: назад в СССР

Имя нам Легион. Том 8

Дорничев Дмитрий
8. Меж двух миров
Фантастика:
боевая фантастика
рпг
аниме
5.00
рейтинг книги
Имя нам Легион. Том 8

Генерал Империи

Ланцов Михаил Алексеевич
4. Безумный Макс
Фантастика:
альтернативная история
5.62
рейтинг книги
Генерал Империи

На границе империй. Том 7. Часть 3

INDIGO
9. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.40
рейтинг книги
На границе империй. Том 7. Часть 3

Офицер-разведки

Поселягин Владимир Геннадьевич
2. Красноармеец
Фантастика:
боевая фантастика
попаданцы
5.00
рейтинг книги
Офицер-разведки