Микроконтроллеры фирмы ATMEL - ATMegaXX схемы, программы, исходники |
|
Остановимся более подробно на том, как осуществлять управление микроконтроллером с компьютера. Существует великое множество вариантов для обмена информацией между различными устройствами. Нас же интересует только один - RS232 или, если быть точнее, USART. В классическом варианте передача информации по RS232 осуществляется последовательно, используя следующее: +12В - передача "1", -12В - передача "0". В настоящее время, в связи с тем, что разработчики устройств стремятся как можно более уменьшить энергопотребление, а следовательно увеличить энергоресурс элементов питания - стандартом обмена является напряжение +5В. Протокол остался старым (его алгоритм), а вот сигналы изменились: теперь "1" - это +5В, а "0" - 0В. Чтобы не изобретать новое название для протокола просто слегка изменили старое: был UART, стал USART. Для сопряжения по напряжению на сигнальных линиях применяются специальные микросхемы по сопряжению уровней. Одной из представительниц таких является MAX232. Но, если не заморачиваться пайкой и монтажом платы, то можно у успехом воспользоваться уже готовой сборкой: нас выручит старый, добрый сотовый телефон, точнее DATA-шнурок к нему. Чтобы распознать какой шнур является каким проделайте следующее: (для USB - порта) посередине шнура должна быть полупрозрачная коробочка, сквозь стенки которой должна проглядываться плата, с напаянными на ней радиодеталями. Эти шнуры обысно китайского производства, стоят недорого. Проблема с ними только одна, надо в систему доустановить "драйвер", поскольку базовой микросхемой является PL2303, а "винда" такого драйвера не имеет. Скачать его можно по ссылке ниже: Шнур, имеющий классический 9-ти штырьковый разъем для подключению к компьютеру, в любом случае, будет со встроенным преобразователем. Драйвер для такого шнура не нужен. Найдя такой шнур проделайте следующее: аккуратно разбираете разъем со стороны телефона. К нему обыxно приходит 3 провода это: RxD, TxD и GND (земля или общий "-"). GND прозванивается на корпус компьютера. Если перепутаете RxD с TxD ничего страшного не произойдет, просто ваш контроллер не будет откликаться. Порядок подключения к контроллеру следующий: RxD подсоединяется к TxD, TxD подсоединяется к RxD, а GND идет напрямую к GND. Итак: шнур есть, проводки к контроллеру подсоединили - что дальше? А дальне ничего - обмен информацией между компьютером и контроллером пошел с момента подачи питания на контроллер, только Вы в этом процессе пока не учавствуете. Для участия в процессе обмена, вам нужно, чтобы в контроллере сидела программа, которая хоть чем-нибудь отвечала бы на ваши действия. Например вот эта (при прошивке контроллера - используем ВНУТРЕННИЙ генератор на частоту 1МГц): В FastAVR открываем встроенный в программу терминал, в настройках к терминалу выбираем COM-порт, к которому физически подключен шнур(с контроллером на конце), выбираем скорость обмена 4800 и устанавливаем соединение. Отключаем контроллер от питания, затем подключаем питание на контроллер - в окне терминала должна появиться надпись "System Ready" и "ОК". Надпись не появилась - внимательно посмотрите все ли у вас подключено, есть ли питание на контроллере, не конфликтует ли драйвер порта или есть ли у вас порт. Если появились "кракозяблы" - неправильно установлена внутренняя частота генератора в контроллере. Маленькое дополнение: при подключении шнура USB (с PL2303 на борту) питание с контроллера должно быть снято, иначе драйвер порта выдает ошибку. |