8(495)909-90-01
8(964)644-46-00
pro@sio.su
Главная
Системы видеонаблюдения
Охранная сигнализация
Пожарная сигнализация
Система пожаротушения
Система контроля удаленного доступа
Оповещение и эвакуация
Контроль периметра
Система домофонии
Парковочные системы
Проектирование слаботочных сетей
Аварийный
контроль
Раздел: Документация

0 ... 2 3 4 5 6 7 8 ... 55

лет назад выполнить программирование микроконтроллера можно было только с помощью специального программатора, который программировал микроконтроллер по параллельному интерфейсу (или в параллельном режиме).

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

В последнее время появились микроконтроллеры, которые могут быть запрограммированы по последовательному интерфейсу RS232. Такой режим программирования микроконтроллера еще называют последовательным или программированием в системе (in system programming). Это название режима программирования появилось в связи с тем, что такие микроконтроллеры совершенно необязательно вытаскивать из панельки, расположенной в готовом устройстве, вставлять (микроконтроллер) в программатор, программировать, а затем опять возвращать на место.

Кстати, если микроконтроллер изготовлен в планарном корпусе и впаян в плату, программирование его с помощью программатора, естественно, исключено.

Необходимо добавить, что программирование микроконтроллера в системе или последовательный режим программирования необязательно означает программирование по интерфейсу RS232. Существуют и другие последовательные интерфейсы (например, SPI, 12С), и другие микроконтроллеры, которые можно запрограммировать, пользуясь этими интерфейсами. Примером могут служить 51-совместимые микроконтроллеры фирмы ATMEL, имеющие в названии суффикс "S"(AT89S51, AT89S52, AT89S53, AT89S8252), которые могут быть запрограммированы при помощи интерфейса SPI. По этому же интерфейсу могут быть запрограммированы микроконтроллеры фирмы GOAL (VERSA DSP, VERSA HV100/HV300, VERSA1, VERSA МГХ). Микроконтроллеры фирмы CYGNAL (все, кроме C8051F3XX) могут быть запрограммированы с помощью интерфейса JTAG (это физически - SPI, но с дополнительными свойствами), a C8051F3XX — с помощью интерфейса 12С.

Впервые, насколько это известно автору, 51-совместимые микроконтроллеры, имеющие возможность программирования по интерфейсу RS232, были выпущены фирмой Dallas (1993 г.). Эти 18


икроконтроллеры содержат программу-загрузчик (bootstrap loader) располагающуюся в недоступном пользователю месте памяти микроконтроллера. Программа-загрузчик имеет много различных опций (например, запись/чтение памяти программ, запись/чтение памяти данных и различных регистров и т.п.).

В последнее время фирма Analog Devices выпустила целое семейство 51-совместимых микроконтроллеров ADUC8XX, в некоторые из которых входят 16- или 24-разрядные сигма-дельта АЦП с самокалибровкой, низкочастотные фильтры, память программ объемом до 62 кбайт и многие другие новшества. Программирование микроконтроллеров ADUC8XX может производиться как в параллельном режиме, так и в последовательном - по интерфейсу RS232.

фирма Texas Instruments (а точнее, влившаяся в нее фирма Burr-Brown) также выпустила семейство микроконтроллеров MSC1210YX, содержащих 24-разрядный сигма-дельта АЦП с самокалибровкой, низкочастотные фильтры, память программ объемом до 32 кбайт. Программирование этих микроконтроллеров может быть произведено как по RS232, так и в параллельном режиме.

Может сложиться мнение, что если микроконтроллер оборудован устройством программирования в последовательном режиме, то использовать параллельный режим совершенно бессмысленно, и про него (режим) можно забыть. Однако это не совсем так. Дело в том, что некоторые микроконтроллеры имеют специальные биты защиты памяти программ от несанкционированного доступа (или секретности), в том числе бит, запрещающий последовательный режим программирования. Так вот, снять этот бит защиты можно только в режиме параллельного программирования (правда, путем стирания всей памяти микроконтроллера). Так что режим параллельного программирования не надо сбрасывать со счетов. Теперь несколько слов о последовательном режиме программирования. Как уже указывалось, для запуска и остановки микроконтроллера используется вывод RESET. При программировании микроконтроллера в последовательном режиме используется еще один сигнал, который, как правило, подается на вывод PSEN микроконтроллера. Сигналы RESET и PSEN, таким образом, в различных комбинациях (а их, понятно, четыре) определяют режим работы микроконтроллера.

Обратимся к интерфейсу RS232. В RS232 компьютера есть только два (выходных) сигнала управления, которыми можно программно манипулировать. Это сигналы DTR и RTS. Если устройство, сопряженное с компьютером по RS232, необходимо только запускать и останавливать, то для этого достаточно одного сигнала, например DTR, который следует предварительно преобразовать в уровень TTL. Соответствующую линию следует подключить 2*19


КомпьютерМикроконтроллер

ИнтерфейсИнтерфейс

RS232 Преобразователи RS232 уровней RS232

RxD

TxD

DTR

RTS

Передатчик

Приемник

Приемник

Приемник —» PSEN

TxD

RxD

RST

Запуск и остановка микроконтроллера

Запуск, остановка и программирование микроконтроллера

Рис. 2.1. Структурная схема сопряжения компьютера и микроконтроллера

по RS232

к выводу RESET. Если же микроконтроллер, находящийся в устройстве, необходимо еще и программировать, то нужно использовать второй управляющий сигнал — RTS (подключив соответствующую линию к выводу PSEN). Кроме сигналов DTR и RTS, естественно, с микроконтроллером необходимо сопрячь еще и основные сигналы, по которым происходит обмен информацией: TxD и RxD.

Таким образом, получаем схему сопряжения микроконтроллера с компьютером (рис. 2.1). Из схемы следует, что для запуска (и остановки) микроконтроллера требуются два приемника RS232 и один передатчик; для запуска и программирования микроконтроллера нужно уже три приемника и один передатчик. Этой схемой мы будем неоднократно пользоваться в дальнейшем при рассмотрении как аппаратных, так и программных средств сопряжения микроконтроллера с компьютером по RS232.



0 ... 2 3 4 5 6 7 8 ... 55