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

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

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






Запуск интегрированной среды 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; просмотров: 910. Нарушение авторских прав; Мы поможем в написании вашей работы!



Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

Логические цифровые микросхемы Более сложные элементы цифровой схемотехники (триггеры, мультиплексоры, декодеры и т.д.) не имеют...

Прием и регистрация больных Пути госпитализации больных в стационар могут быть различны. В цен­тральное приемное отделение больные могут быть доставлены: 1) машиной скорой медицинской помощи в случае возникновения остро­го или обострения хронического заболевания...

ПУНКЦИЯ И КАТЕТЕРИЗАЦИЯ ПОДКЛЮЧИЧНОЙ ВЕНЫ   Пункцию и катетеризацию подключичной вены обычно производит хирург или анестезиолог, иногда — специально обученный терапевт...

Ситуация 26. ПРОВЕРЕНО МИНЗДРАВОМ   Станислав Свердлов закончил российско-американский факультет менеджмента Томского государственного университета...

Примеры задач для самостоятельного решения. 1.Спрос и предложение на обеды в студенческой столовой описываются уравнениями: QD = 2400 – 100P; QS = 1000 + 250P   1.Спрос и предложение на обеды в студенческой столовой описываются уравнениями: QD = 2400 – 100P; QS = 1000 + 250P...

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

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

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