Разработка программной и аппаратной поддержки к методическим указаниям Программирование микроконтроллеров
Категория реферата: Рефераты по информатике, программированию
Теги реферата: сочинения по русскому языку, культурология
Добавил(а) на сайт: Случевский.
Предыдущая страница реферата | 1 2 3 4 5 6 7 8 9 10 11 | Следующая страница реферата
Если содержимое регистра состояния сохраняется перед началом обработки прерывания, то по команде возврата производится его автоматическое обновление. Если содержимое других регистров изменяется при выполнении обслуживания прерывания, то оно также должно быть сохранено в памяти до изменения и восстановлено перед возвратом в основную программу.
«Вектор прерывания» – это адрес, который загружается в СК при переходе
к обработчику прерывания. Существует несколько типов векторов. Адрес, который загружается в СК при запуске МК (RESET) называется «вектор сброса».
Для различных прерываний могут быть заданы различные вектора. Но иногда
различным прерываниям назначается один вектор. Это не должно вызвать
проблем при работе с МК, так как чаще всего он исполняет одну единственную
программу. В МК, где аппаратная часть хорошо известна, не должно возникнуть
каких либо проблем при совместном использовании векторов прерываний.
В заключении можно добавить, что системные подпрограммы – это своего рода программные прерывания, которые с помощью специальных процессорных команд имитируют аппаратные прерывания. Они располагаются в произвольном месте памяти, или могут требовать для обращения к ним межсегментных переходов.
Таймеры.
Таймеры в микропроцессорных системах используются не только для обеспечения заданной задержки, но и для решения гораздо более широкого круга задач. Обычно для переключения таймера используют тактовые импульсы процессора. Загрузив в таймер начальное значение, можно отсчитывать определенные интервалы времени, фиксируя окончание интервала по моменту переполнения таймера. Часто перед таймером включают предварительный делитель тактовой частоты, чтобы иметь возможность отсчитывать более длинные интервалы времени. Делитель обеспечивает инкремент содержимого таймера после поступления определенного числа тактовых импульсов.
Их можно использовать для точного формирования временных интервалов, подсчета импульсов на выходах МК, формирования последовательности
импульсов, тактирования приемопередатчика последовательного канала связи.
Таймеры/счетчики способны вырабатывать запросы прерываний, переключая ЦП на
их обслуживание по событиям и освобождая его от необходимости
периодического опроса состояний таймеров. Поскольку основное применение МК
находят в системах реального времени, таймеры/счетчики являются их
обязательным элементом. В некоторых модификациях число таймеров достигает
32.
1.2.5. Ввод/вывод данных
Основной интерфейс между МК и внешними устройствами реализуется через параллельные порты ввода/вывода. Во многих МК выводы этих портов служат также для выполнения других функций, например последовательного или аналогового ввода/вывода.
Во многих МК отдельные выводы портов могут быть запрограммированы на ввод или вывод данных. Необходимо обратить особое внимание на то, при вводе данных считывается значение сигнала, поступающего на внешний вывод, а не содержимое триггера данных. Если к внешнему выводу подключены выводы других устройств, то они могут установить свой уровень выходного сигнала, который будет считан вместо ожидаемого значения данных, записанных в триггер. В некоторых МК существует возможность выбора между чтением данных, установленных на выходе триггера или на внешнем выводе.
Когда на шину необходимо вывести «0» или «1», то сначала записывают
соответствующее значение в триггер данных, а затем с помощью триггера
управления на выходе устанавливается необходимый уровень потенциала.
Триггер управления разрешает вывод данных на шину. В современных МК
обеспечивается индивидуальный доступ к триггерам данных и управления с
помощь адресной шины.
Внешний вывод может быть также использован для подачи запроса прерывания. Это обычно реализуется, когда вывод работает в режиме ввода.
Наиболее распространенный вид связи между различными электронно- вычислительными системами – это последовательный обмен. В этом случае байт данных передается по единственному проводу бит за битом с обеспечением синхронизации между приемником и источником данных. Очевидное преимущество последовательной передачи данных состоит в том, что она требует небольшого количества линий связи.
Существует множество стандартных последовательных протоколов передачи данных. В некоторых МК эти протоколы реализуются внутренними схемами, размещенными на кристалле, что позволят упростить разработку различных приложений.
Аналоговый компаратор.
Часто в МК встраивается аналоговый компаратор напряжений. Компаратор
представляет собой простую схему, которая, которая сравнивает два
напряжения. Обычно один сигнал называют входным, а другой опорным.[7] На
выходе устанавливается «1», если входное напряжение больше, чем опорное
(см. рис. 1.6). этот способ наиболее удобно использовать в таких
устройствах, как термостаты, где необходимо контролировать достижение
определенного уровня измеряемой величины, которая задается значением
входного напряжения.
Рис. 1.6. Сигналы на входе и выходе аналогового компаратора.
Программирование устройств.
Программирование устройств, в том числе и микроконтроллеров обычно
происходит следующим образом. В регистр программатора загружается значение, которое необходимо разместить по определенному адресу, затем включается
схема, которая пересылает содержимое этого регистра по заданному адресу, проходит некоторое время ожидания, пока завершиться процесс
программирования выбранной ячейки памяти и, на конец, выполняется
верификация, т.е. проверяется правильность записанного значения.
Программирование всего устройства может занять от нескольких секунд до
нескольких минут в зависимости от размера памяти и алгоритма
программирования.
Часто оборудования для программирования оказывается слишком дорогим, особенно для радиолюбителей и предприятий малого бизнеса. Но в некоторых случаях для программирования требуется весьма простое и доступное оборудование. К примеру, некоторые модели PIC и AVR микроконтроллеров программируются очень легко. Существует также устройства, которые не требуют оборудования для программирования, на пример, МК Basic STAMP, или имеют встроенный аппаратно-программный блок, избавляющий от необходимости использования внешнего оборудования, кроме источника повышенного напряжения для программирования, как МК 68НС05.
Очень важный аспект, касающийся программирования устройств, заключается в том, что может ли устройство быть запрограммировано в системе. Это называется внутрисистемное программирование (ВСП) – от английского In-System Programming (ISP). Если МК допускает возможность такого программирования, то это означает, что он может быть смонтирован на плату с пустой памятью программ, которая затем может быть запрограммирована без какого либо влияния на остальные компоненты схемы. Это может стать важным обстоятельством при выборе МК. Использование ВСП избавляет МК от необходимость покупать специальный программатор, дает возможность обновлять программное обеспечения без изменения расположенных на плате аппаратных средств и позволяет производителям создавать запас готовых изделий, которые могут легко модифицироваться в соответствии с поступающими заказами.
Безопасность памяти программ.
Для многих приложений желательно защитить программный код, записанный в МК. Чтобы обеспечить такую возможность многие МК содержат специальные средства для предотвращения считывания хранящихся в них программ. Часто такая возможность реализуется путем установки определенного значения конфигурационного бита в процессе программирования. Обычно значения этого бита можно изменить только в процессе перепрограммирования содержимого памяти МК, например при УФ стирании содержимого EPROM.
Встроенная защита не может предотвратить все возможности считывания программного кода. Такое считывание можно произвести во многих лабораториях, выполняющих анализ причин отказов микросхем, причем за очень короткое время. Чтобы усложнить и сделать операцию считывания менее эффективной, некоторые компании зашифровывают записанные программы путем перемешивания команд и включают специальные аппаратные блоки, которые преобразуют перемешенные данные в поток команд процессора. И все же, установка бита защиты не может гарантировать абсолютную защиту программного кода загруженного в МК.
1.3. Инструментальные и программные средства разработки и отладки
Самый эффективный способ отладки программ для МК – применение
специализированных профессиональных инструментальных отладочных средств, к
которым следует отнести:
. внутрисхемные эмуляторы (ВСЭ) – программно аппаратное средство, способное замещать собой эмулируемый процессор в реальном устройстве;
. программные симуляторы – программное средство способное имитировать работу МК и его памяти;
. мониторы отладки – специальная программа, загружаемая в память отлаживаемой системы.
. платы развития (Evaluation Boards – оценочные платы) – своеобразные конструкторы для макетирования прикладных систем;
. эмуляторы ПЗУ – программно-аппаратное средство, позволяющее заменить ПЗУ отлаживаемого устройства на ОЗУ, в которое можно загрузить программу с компьютера через один из стандартных каналов связи.
Рекомендуем скачать другие рефераты по теме: социальная работа реферат, изложение язык.
Предыдущая страница реферата | 1 2 3 4 5 6 7 8 9 10 11 | Следующая страница реферата