Главная Случайная страница


Полезное:

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


Категории:

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






Лабораторная работа №2. Симулятор VMLab





Цель работы:

1) получить основные навыки работы с симулятором VMLAB;

2) ознакомиться со способом текстового описания схемы симулируемого устройства;

3) проверить работу файла «прошивки» z1.hex, полученного в лабораторной работе №1.

Ход выполнения работы:

1) Создаём новый файл z2_wm, копируем текст программы и сохраняем в формате.prj;

Листинг файла z2_wm

; Файл-проект для симуляции по задаче 2

; МК "прошит" файлом - z1.hex
; полученным в задаче 1
;
; После включения МК - НЕгорящие
; светодиоды показывают в двоичном
; виде числа от 0 до 255.
; (практически начиная с "1"), и далее
; опять с нуля и так по кругу
;
; светодиоды подключены к порту_А МК


.MICRO "ATmega16"; симулируемый МК
.TOOLCHAIN "GENERIC"
.TARGET "z1.hex";
.COFF "z1.cof";
.SOURCE "z1__.c";

.POWER VDD=5 VSS=0; Питание +5 вольт
; VSS это GND МК - "общий" провод схемы
; относительно него измеряются напряжения.

.CLOCK 4meg; частота кварца 4 МГц


; ////// =================== ///////
; Ввод схемы устройства по задаче 1

; пункт ж)

; 8 светодиодов подключаются "черточками"
; на изображении диодов на схемах
; к ножкам МК с 33 до 40.

; остальные пункты схемы считаются
; симулятором существующими.


; === Первый светодиод
D1 VDD D1_NODE
; Св. диод D1 подключить к VDD (это +5 в)
; и к узлу D1_NODE (я дал произвольное
; но осмысленное название)

R1 D1_NODE PA0 560
; резистор R1 подключить к узлу D1_NODE
; и к выводу PA0 МК
; номинал резистора 560 Ом

; =========================================
; остальные 7 светодиодов подкл. аналогично

D2 VDD D2_NODE
R2 D2_NODE PA1 560

D3 VDD D3_NODE
R3 D3_NODE PA2 560

D4 VDD D4_NODE
R4 D4_NODE PA3 560

D5 VDD D5_NODE
R5 D5_NODE PA4 560

D6 VDD D6_NODE
R6 D6_NODE PA5 560

D7 VDD D7_NODE
R7 D7_NODE PA6 560

D8 VDD D8_NODE
R8 D8_NODE PA7 560


; =========================================
; Сигналы на ножках PA0 PA1 PA2
; будем наблюдать
; в окне виртуального
; осцилографа - "Scope"

.PLOT V(PA0) V(PA1) V(PA2)
; Рисовать графики напряжения
; в перечисленных узлах схемы

 

2) Запускаем VMLAB, открываем созданный файл;

Рисунок 2.1 – рабочий экран программы VMLAB

3) Через меню View - откройте два компонента:

SCOPE - это виртуальный запоминающий осциллограф симулятора

Control Panel - это панель на которой содержатся нужные нам светодиоды;

Рисунок 2.2 – Необходимые компоненты для выполнения лабораторной работы

4) В меню Project запускаем Re-Build all, в окне messages появляется сообщение об успехе и что все готово к запуску;

Рисунок 2.3 – окно Messages

5) Два раза нажимаем на кнопку Go, наблюдаем за работой программы, замечаем следующее: не горит светодиод D1.

Рисунок 2.4 – симуляция проекта

6) Останавливаем программу, Осциллограф Scope и посмотреть каковы были напряжения в начале ее работы. Для измерения временного промежутка в окне Scope симулятора VMLab нужно установить вертикальные курсоры 1 и 2 на границах измеряемого интервала и в поле Cursor Delta Time появится значение времени между двумя курсорами.

Рисунок 2.5 – окно Scope

7) Необходимо изменить программу на Си так, чтобы двоичный код показывали горящие светодиоды, а видимый счет начинался с нуля - т.е. при запуске программы все светодиоды были бы выключены 65 мс. Для этого надо изменить PORTA++ на PORTA--;

Рисунок 2.6 – обновленная программа


 

Date: 2016-01-20; view: 888; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию