Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Звіт до 3 лаби саніне.doc
Скачиваний:
1
Добавлен:
21.07.2019
Размер:
423.42 Кб
Скачать

МІНІСТЕРСТВО ОСВІТИ І НАУКИ,МОЛОДІ ТА СПОРТУ УКРАЇНИ

ЧЕРНІВЕЦЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ

ім. ЮРІЯ ФЕДЬКОВИЧА

ІНЖЕНЕРНО-ТЕХНІЧНИЙ ФАКУЛЬТЕТ

КАФЕДРА КОРЕЛЯЦІЙНОЇ ОПТИКИ

Лабораторна робота №3

Тема: ” Управління світловими та аудіо ефектами

Кандидат фіз.-мат. наук:

доцент

М.Т.Стринадко

Виконав:

студент 3-го курсу

314 групи

Чигура Олександр

Чернівці

2011

Завдання:

  1. Вивчити принципи роботи з програмними продуктами MPLAB-IDE та PROTEUS.

  2. Описати схему управління світловими та аудіо ефектами на базі мікроконтролера PIC16F628.

  3. Відладити приведений асемблерний код програми в середовищі MPLAB-IDE та PROTEUS.

  4. Відредагувати приведений асемблерний код програми, залишивши по одному світловому та звуковому ефекту. Відладити відредагований асемблерний код програми в середовищі MPLAB-IDE та PROTEUS.

  5. Оформити звіт.

Інтегроване середовище програмування MPLAB-IDE

Середовище має зручний графічний інтерфейс, вбудований менеджер проектів і текстовий редактор з підтримкою виділення операторів і директив кольором, вбудований асемблер і симулятор, підтримує новітні dsPIC. Середовище дозволяє підключати компілятори Сі як виробництва Microchip, так і інших фірм. MPLAB IDE працює зі всіма налагоджувальними засобами Microchip, у тому числі і ICD2 дебаггером.

Підтримується установка точок зупину, перегляд і зміна пам'яті даних EEPROM.

Програмний симулятор MPLAB SIM

Симулятор MPLAB SIM дозволяє прослідкувати виконання програми мікроконтролером на рівні команд по крокам або в режимі анімації. На довільній команді виконання програми може бути призупинено для перевірки та зміни пам’яті. Спеціальні функції дозволяють моделювати сигнали з логічними рівнями на входах мікроконтролера.

Програмний продукт ISIS з пакета PROTEUS VSM

Програма комп’ютерного моделювання електронних пристроїв ISIS, входить до складу системи PROTEUS VSM. Особливістю даної програми є здатність моделювати пристрої не тільки на дискретних компонентах, звичайних аналогових та цифрових мікросхемах, але й на мікроконтролерах.

Схема управління світловими та аудіо ефектами на базі мікроконтролера PIC16F628

Текст програми управління світо на аудіо ефектами в середомищі MPLAB-IDE

Текст програми

LIST P=16F628

#include <P16F628.inc> ;Добавляем стандартный файл заголовка MPLAB

__CONFIG 03F30h ;WDT=off, BODEN=off, LVP = off, OSC = INTRC 4MHz

radix hex

; #define BUTTON PORTA,0 ;кнопка подключена к RA0

; --- Константы ---

SONGS EQU D'12' ; количество мелодий в памяти

CYCLES EQU D'10' ; через сколько полных циклов играть мелодию

DELAY1 EQU D'110' ; начальная скорость зажигания/гашения (больше-медленнее)

DELAY2 EQU D'104' ; начальная скорость вращения

DELAY3 EQU D'65' ; начальная скорость бегущего огня

DELAY4 EQU D'65' ; начальная скорость переливания двух светодиодов и 4-2-4

DELAY5 EQU D'240' ; начальная скорость "змейки"

; --- Макрокоманды ---

jnz MACRO Metka1 ; условный переход,

btfss STATUS,Z ; если результат операции не ноль

goto Metka1

endm

jz MACRO Metka2 ; условный переход,

btfsc STATUS,Z ; если результат операции ноль

goto Metka2

endm

jnc MACRO Metka3 ; условный переход,

btfss STATUS,C ; если нет переноса

goto Metka3

endm

jc MACRO Metka4 ; условный переход,

btfsc STATUS,C ; если перенос

goto Metka4

endm

mov MACRO DEST1,SOURCE1 ; пересылка регистр-регистр

movf SOURCE1,W

movwf DEST1

endm

mvi MACRO DEST2,CONST2 ; пересылка константы в регистр

movlw CONST2

movwf DEST2

endm

play MACRO NOTA ; проиграть 1 ноту указанной длительности и высоты

movlw NOTA

call Sound

endm

; --- ОПИСАНИЕ РЕГИСТРОВ ---

W_copy EQU 070h ;В этих регистрах будет

ST_copy EQU 071h ;сохраняться контекст

ADDRESS EQU 072h ;Хранение адреса ячейки, задающей состояние светодиодов

SPEED EQU 073h ;Темп исполнения

DURATION EQU 074h ;Длительность ноты

TONE EQU 075h ;Высота тона

NUMBER EQU 076h ;Номер мелодии

COUNTER EQU 077h ;Счетчик номера ноты при воспроизведении

LONGTIMER EQU 078h ;Счетчик номера цикла

OUT EQU 079h ;Состояние звукоизлучателя

TEMP1 EQU 07Ah ;Ячейки для врЕменного

TEMP2 EQU 07Bh ; хранения данных

TEMP3 EQU 07Ch

TEMP4 EQU 07Dh

TIME EQU 07Eh ;Время паузы между комбинациями

CHANGE EQU 07Fh ;Ускорение/замедление

BYTE00 EQU 020h ;Данные для программной организации ШИМ

BYTE01 EQU 021h

BYTE02 EQU 022h

BYTE03 EQU 023h

BYTE04 EQU 024h

BYTE05 EQU 025h

BYTE06 EQU 026h

BYTE07 EQU 027h

BYTE08 EQU 028h

BYTE09 EQU 029h

BYTE0A EQU 02Ah

BYTE0B EQU 02Bh

BYTE0C EQU 02Ch

BYTE0D EQU 02Dh

BYTE0E EQU 02Eh

BYTE0F EQU 02Fh

BYTE10 EQU 030h

BYTE11 EQU 031h

BYTE12 EQU 032h

BYTE13 EQU 033h

BYTE14 EQU 034h

BYTE15 EQU 035h

BYTE16 EQU 036h

BYTE17 EQU 037h

BYTE18 EQU 038h

BYTE19 EQU 039h

BYTE1A EQU 03Ah

BYTE1B EQU 03Bh

BYTE1C EQU 03Ch

BYTE1D EQU 03Dh

BYTE1E EQU 03Eh

BYTE1F EQU 03Fh

; --- ПУСК ---

ORG 0 ;Вектор сброса

Reset bcf STATUS,RP0 ;Обращение к банку 0

movlw B'00000111' ;Кодовая комбинация для отключения компараторов

movwf CMCON ;Пересылаем в регистр управления компараторами

goto Begin ;Обходим обработчик прерываний и подпрограммы

;--------------------------------------------------------------------------------------------------

; --- ОБРАБОТЧИК ПРЕРЫВАНИЙ ---

;--------------------------------------------------------------------------------------------------

ORG 4 ;Вектор прерываний