Разработка и отладка программ для микроконтроллеров. Однокристальные микроконтроллеры семейства MCS-51

Страницы работы

Фрагмент текста работы

                         Однокристальные микроконтроллеры семейства MCS-51

                                                    Лабораторная  работа  № 2

                            Разработка и отладка программ для микроконтроллеров

1.  Цель работы

Изучить и практически исследовать методы разработки и отладки программ для однокристальных микроконтроллеров семейства MCS-51 (МК51) на персональном компьютере.

                                        2.Основные теоретические сведения

Однокристальные микроконтроллеры широко используются для построения микроконтроллерных устройств (МКУ) и микроконтроллерных  систем (МКС), предназначенными для управления работой различных устройств промышленной автоматики, связи, измерительной техники.  Применение однокристальных микроконтроллеров, называемых иногда ОЭВМ, позволяет резко уменьшить трудозатраты на разработку схем МКУ и МКС. Основные трудозатраты (до 90 % от общих) составляет разработка программного обеспечения  микроконтроллера. 

Существенное снижение трудозатрат на разработку программного обеспечения дают системы автоматического проектирования (САПР). Эти системы применяются, в основном, в специальных комплексах, называемых системами разработки, основу которых составляют большие и средние ЭВМ. Эти системы позволяют выполнять разработку программ, их отладку, занесение программ в ПЗУ и отладку опытного образца (прототипа) МКУ или МКС. Так как  ЭВМ, входящие в системы разработки, выполнялись на микропроцессорах, которые, как правило, отличались от микропроцессоров разрабатываемой системы, то они получили название кросс-ЭВМ, а программные средства, которые они использовали, стали называть кросс-средствами. Системы разработки имеют высокую стоимость, сложны в обслуживании и поэтому малодоступны широкому кругу инженеров-разработчиков.

В настоящее время, в связи с распространением персональных компьютеров (ПК), кросс-средства для автоматизации разработки микропроцессорных и микроконтроллерных систем стали общедоступными.

В состав кросс-средств обычно входят программы: редактор текста, ассемблер, компоновщик (редактор связей), отладчик.

Редактор текста предназначен для ввода исходного текста прикладной программы, написанной на языке ассемблера, его редактирования и записи на внешний носитель информации (как правило, на диск).

Программа-ассемблер, называемая часто транслятором, обеспечивает перевод исходной программы в объектную программу в машинных кодах микропроцессора (микроконтроллера) проектируемой системы. Транслятор выдает также листинг программы, содержащий распечатку исходной и объектной программ, сообщения об обнаруженных ошибках и другие виды информации, необходимой для анализа и отладки.

Программа-компоновщик, называемая также редактором связей, производит объединение объектных модулей отдельных программ в одну объектную программу. Он может также подключать так называемые библиотечные программы - либо стандартные, разработанные фирмами-производителями программного обеспечения, либо программы, разработанные самим пользователем (чаще всего библиотечные программы – это программы по обработке данных – арифметические и т.д.).

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

Обнаружить смысловые ошибки в программе позволяют отладчики программы, которые оперируют с программно-логической моделью микроконтроллерной  системы. Такие отладчики получили название программных симуляторов. Программный симулятор представляет собой программно-логическую модель МК на персональном компьютере. Он позволяет загрузить файл кода разработанной программы управления в память МК и исполнить любой фрагмент этой программы, наблюдая за изменением состояния любого программно доступного ресурса МК. Современные симуляторы обладают полноэкранным графическим интерфейсом пользователя, предоставляя разработчику программного обеспечения возможность одновременного контроля в процессе выполнения программы за изменением содержимого регистров и ячеек памяти. Симулятор имитирует работу не только процессорного ядра, но и всех периферийных модулей. Причем при отладке программы по шагам остановка в контрольной точке эквивалентна останову системы тактирования МК. Вследствие этого одновременно с остановкой программы «приостанавливают» работу и все периферийные модули. При дальнейшем прогоне программы работа периферийных модулей возобновляется с того состояния, в котором они были «приостановлены». Именно такой режим работы наиболее удобен для наблюдения за процессом реализации микроконтроллером управляющей программы.

С точки зрения современной терминологии, программный симулятор можно охарактеризовать как «виртуальный микроконтроллер». Алгоритмы такого «виртуального МК» полностью совпадают с алгоритмами

Похожие материалы

Информация о работе