Студопедия — Начало работы
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Начало работы






Запуск интегрированной среды ProView32 осуществляется через меню Пуск(Windows): Пуск ->Программы -> Franklin Software -> ProView32.

Далее необходимо создать новый файл. Для этого в разделе меню File выбираем пункт New, в появившемся окне выбираем Assembler Files (см. рис.1).

 

 

Рис. 1. Выбор типа программы

 

Новый файл необходимо сохранить на диск (File->Save as…), присвоив ему имя, состоящее из латинских букв и цифр, длина имени не должна превышать 8 символов, расширение файла - asm. Пример имени «Lab1.asm». Теперь можно приступать к написанию программы для микроконтроллера на языке Ассемблер.

Рассмотрим простейшую программу ( Задание1 этих методических указаний). После того как текст программы набран и сохранен приступаем к компиляции программы - переводу текста в машинный код, предназначенный для загрузки в память программ микроконтроллера.

Для компиляции программы необходимо выбрать пункт меню Project -> Build all. ProView отображает окно, показывая текущее состояние процесса. Когда процесс компиляции закончится, в окне сообщений (Message) (рис.3) отображается сообщение завершения. Если были обнаружены какие-нибудь ошибки, о них сообщается здесь же.

 

Рис. 3. Окно сообщений Message

 

Если программа не содержит ошибок, которые отображаются в окне то можно запускать отладчик (меню Debug -> Start). При первом запуске отладчика появится окно (см. рис. 4), в котором необходимо указать тип микроконтроллера (Microcontroller: 80c51), а также тактовую частоту (Frequency) в мегагерцах.

 

Рис. 4. Выбор типа контроллера и тактовой частоты

 

Запустив отладчик, мы видим несколько окон (см. рис. 5):

- окно с текстом программы;

- окно кода Code, в котором каждой инструкции на ассемблере соответствует её машинный код;

- окно основных регистров Main Registers, в котором отображено текущее состояние каждого из регистров;

В строке состояния показано время, за которое микроконтроллер выполнил команды программы с момента старта до курсора.

 

Используя меню View отладчика можно добавлять новые окна. Например, пункт меню View->Data dump позволяет отобразить окна с содержимым различных областей памяти данных микроконтроллера:

Xdata – внешняя память (ОЗУ) данных;

Data –внутренняя память данных (внутреннее ОЗУ);

Sfr – область регистров специальных функций (РСФ);

Bit – область прямо адресуемых битов.

В наших заданиях необходимо вводить тестовые числа в ячейки памяти ОЗУ(внутренней памяти данных) для проверки правильности работы написанных программ. Для этого выбираем пункт меню View->Data dump-> Data view (рис.6). В окне Data view отображается содержимое ячеек ОЗУ, которое группируется по 8 ячеек в строке с указанием адреса первой ячейки в группе (адрес указан слева с двоеточием).

 

Рис. 5 Экран режима Debug

 

Для проверки задания 1: [(20H)*10H – (21H)/07H] → (22H) необходимо загрузить тестовые числа в ячейки с адресами 20H и 21H (например, в (20H) загрузим 05H, а в (21H) загрузим С4H (см. рис.6)). При вводе данных в ячейки не забываем нажимать кнопку ENTER на клавиатуре.

Рис. 6 Окно отображения содержимого ячеек ОЗУ Data view

 

Для удобства работы оптимизируем содержимое экрана: окно кода Code для работы в нашем курсе работ нам не нужно, поэтому его можно свернуть в трей, далее подгоним размеры окна с программой так, чтобы были видны команды и хватило места для окон Data view и Main Registers (см. рис.7).

Перед запуском программы необходимо нажать кнопку Animate , затем нажать кнопку сброса Reset и запустить программу кнопкой Run .

Так как по условию задания 1: [(20H)*10H – (21H)/07H] → (22H) результат запоминается в ячейке с адресом 22H, то смотрим содержимое этой ячейки после выполнения программы в окне Data view. На рис.7 в этом окне результат равен 34Н.

Рис.7 Окно Debug после выполнения программы

 

Для проверки этого результата вызываем калькулятор Windows через меню Пуск(Windows): Пуск ->Программы -> Стандартные -> Калькулятор. Переводим его в инженерный режим(рис. 8). Переводим в режим работы в шестнадцатеричной системе счисления (переключатель Hex) и ограничиваем размер чисел одним байтом (переключатель 1байт).

Рис.8 Окно калькулятора Windows

Программу проверяем в соответствии с заданием с соблюдением приоритетов. По условию задания 1: [(20H)*10H – (21H)/07H] → (22H) первыми по приоритету необходимо выполнить умножение и деление, а затем вычитание. Выполним эти дейтвия с тестовыми данными и запишем подробно результаты промежуточных вычислений:

05Н*10Н=50Н

С4Н:07Н=1СН

50Н-1СН=34Н

Как видим, результат расчетов совпал с результатом в окне Data view, что говорит о правильности программы.

Если результат не совпадает, то необходимо выяснить причину ошибки. Отладку программы в этом случае удобно производить в пошаговом режиме (кнопка Step into или F7). Если вы используете пошаговый режим, то при каждом нажатии кнопки F7 будет выполняться только одна инструкция на языке ассемблера. При этом в открытых вами окнах с регистрами и содержимым памяти будет обновляться информация в соответствии с ходом выполняемой программы. Сравнивая результаты выполнения шага по содержимому в окне Main Registers с результатами промежуточных вычислений выявляем ошибки в вашей программе.

Если во время отладки программы выяснилось, что алгоритм необходимо скорректировать, то следует прервать процесс отладки, выбрав пункт меню Debug->Terminate. После внесения необходимых изменений программу необходимо повторно откомпилировать (пункт меню Project -> Build all) и повторить процесс отладки.

Если ваша программа достаточно большая и требуется отладить только некоторые её фрагменты, то обычно используют точки останова (Breakpoint), которые устанавливают в начале интересующего фрагмента программы. При этом переход к точке останова производится нажатием кнопки GO (Ctrl-F9). Переход может занять от нескольких секунд до нескольких минут, однако он будет быстрее, чем в режиме пошаговой отладки.

 

 

6. СПИСОК ЛИТЕРАТУРЫ

1. Сташин В.В., Урусов А.В.Молногонцева О.Ф. "Проектирование цифровых устройств на одно кристальных микроконтроллерах" – М.:Энергоатомиздат 1990. - 224с.

2. Самофалов К.Г. "Микропроцессоры" - Киев: Техника, 1986. - 278с.

3. Каган Б.Н., Сташин В.В. "Основы проектирования микропроцесорных устройств автоматики." - М.: Энергоиздат 1987. - 304 с.

4. Справочник под редакцией Хвощ С.Т. "Микропроцессоры и микроЭВМ в системах автоматического управления." - Л.: Машиностроение, 1987. -640 с.

5. Микушин А. В. Занимательно о микроконтроллерах. — СПб.: БХВ - Петербург, 2006. — 432 с.

6. Белов А.В. Конструирование устройств на микроконтроллерах — Санкт - Петербург: Наука и техника, 2005. - 256 с.

7. "Полупроводниковые приборы. Диоды. Оптоэлектронные приборы" / А.Б.Гитцевич и др. - М.: Радио и связь, 1988. - 592 с.

2. Шило В.Л. "Полупроводниковые цифровые микросхемы. Справочник." - М.: Радио и связь. 1987. - 352 с.

3. "Микропроцессоры в 3х томах для техн. вузов" /В.Д. Вернер и др. под редакцией А.Н. Преснухина -Минск: Высшая школа. 1987-303с. ил.

 







Дата добавления: 2015-10-15; просмотров: 893. Нарушение авторских прав; Мы поможем в написании вашей работы!



Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Седалищно-прямокишечная ямка Седалищно-прямокишечная (анальная) ямка, fossa ischiorectalis (ischioanalis) – это парное углубление в области промежности, находящееся по бокам от конечного отдела прямой кишки и седалищных бугров, заполненное жировой клетчаткой, сосудами, нервами и...

Основные структурные физиотерапевтические подразделения Физиотерапевтическое подразделение является одним из структурных подразделений лечебно-профилактического учреждения, которое предназначено для оказания физиотерапевтической помощи...

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

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

В теории государства и права выделяют два пути возникновения государства: восточный и западный Восточный путь возникновения государства представляет собой плавный переход, перерастание первобытного общества в государство...

Закон Гука при растяжении и сжатии   Напряжения и деформации при растяжении и сжатии связаны между собой зависимостью, которая называется законом Гука, по имени установившего этот закон английского физика Роберта Гука в 1678 году...

Studopedia.info - Студопедия - 2014-2024 год . (0.013 сек.) русская версия | украинская версия