Студопедия

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

Разделы сайта

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






Интерфейс динамика в ПК






(Формирование звука)

 

В персональных компьютерах (ПК) используется микросхема таймера для измерения времени. Программируемый таймер – это сложная БИС, состоящая из трех узлов (трех каналов таймера), каждый из которых можно запрограммировать для работы в одном из шести режимов.

Каналы таймера выполняют следующие функции:

· Канал 0 – системные часы. Сигнал с выхода этого канала вызывает прерывание INT 8, которое отслеживает текущее время.

· Канал 1 – поддерживает процесс регенерации памяти.

· Канал 2 – управляет звуковым сигналом для динамика.

В пространстве портов ввода-вывода для таймера выделена область адресов 40Н – 43Н:

- порт 40Н - канал 0;

- порт 41Н – канал 1;

- порт 42Н – канал 2;

- порт 43Н регистр РУС.

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

· канал 2 таймера (БИС К1810 ВИ54);

· порт В (ППИ) параллельного программируемого интерфейса (К580ВВ55А).

Интерфейс динамика (схема подключения динамика в ПК) представлен на рис. 1.1.

 

f=1, 19 Мгц

 
 
CLK2   GATE2 OUT2   Канал 2


Порт А

  Порт В
&

В0
В1
В2
. .
В7
  Порт С

 

 

Рис. 1.1. Интерфейс динамика в ПК

 

Канал 2 таймера программируется на режим импульсных сигналов. Формируемые на выходе OUT2 таймера импульсные сигналы с частотой F поступают на вход элемента &, а затем на динамик.

Биты В0 и В1 порта В ППИ управляют подачей импульсных сигналов на динамик.

Бит В0 – «Разрешение счета» управляет формированием сигналов на выходе таймера. При В0=0 счетчик таймера не будет выполнять вычитание единицы, что приводит к отсутствию на выходе OUT2 запрограммированного сигнала.

Бит В1 - «Разрешение динамика» открывает элемент & для прохождения импульсов с выхода OUT2 на динамик. При В1=0 сигналы с таймера на динамик поступать не будут, и динамик не будет формировать звуковые колебания, т.е. звуки.

Как известно из курса «Микропроцессорные системы», и таймер, и ППИ имеют в адресном пространстве ввода-вывода микропроцессорной системы, в том числе ПК, по 4 адреса для обращения микропроцессора к регистрам (портам) этих БИС. В персональных компьютерах для таймера выделены адреса (40-43) H, а для ППИ - (60-63) H.

 

 

Задание на лабораторную работу.

 

Написать и отладить программу на ПК на языке Ассемблер, вызывающую звук с частотой F гц. В соответствии с полученным у преподавателя номером варианта задания (см. таблицу 1) рассчитать константу пересчета, заносимую при программировании таймера в счетчик.

 

 

Таблица 1

 

N варианта                  
  F (гц)                  

 

Программирование таймера заключается в занесении в регистр РУС канала таймера управляющего слова (см. рис.1.2) и записи константы пересчета в счетчик канала.

Формат управляющего слова показан на рис. 1.2. Управляющие слова загружаются в регистры РУС каналов таймера по команде OUT PORT, AL, где PORT – адрес регистра программируемой БИС, в который микропроцессор передает данные из регистра AL. Адрес канала указывается в самом формате управляющего слова в битах D7, D6. Загрузка управляющего слова должна предшествовать загрузке константы.

Биты D5, D4 определяют размерность и порядок загрузки констант.

Программу для лабораторной работы написать на языке Ассемблер по следующему алгоритму:

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

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

 

 


Рис. 1.2. Формат управляющего слова канала таймера

 

 

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

MOV AH, 0

INT 16H

 

3. Разрешить динамику воспроизводить звуковые колебания, для чего сформировать значения битов В0=1 и В1=1 порта В ППИ, оставляя значения остальных битов этого порта без изменений. Для этого необходимо прочитать содержимое порта В, произвести с ним логическую операцию, позволяющую установить только биты В0 и В1 в состояние «1», а затем полученное значение переслать обратно в порт В ППИ.

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

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

MOV AH, 0

INT 16H

 

5. Запретить динамику воспроизводить звуковые колебания, для чего сформировать значения битов В0=0 и В1=0 порта В ППИ, оставляя значения остальных битов этого порта без изменений. Для этого необходимо прочитать содержимое порта В, произвести с ним логическую операцию, позволяющую установить только биты В0 и В1 в состояние «0», а затем полученное значение переслать обратно в порт В ППИ.

6. Выход в MS DOS. Для завершения работы программы необходимо выполнить функцию 4СH «Завершение подпроцесса с возвратом управления» прерывания DOS INT 21H.

7. Конец программы.

 

Порядок выполнения работы

 

1. Написать программу на языке Ассемблер для формирования динамиком звука с частотой F (Гц) в следующем виде:

.model tiny

.code

.....................

......................

текст программы

 

.....................

end; конец программы

 

Файл программы должен иметь расширение “.asm”.

2. Получить исполняющий файл программы с расширением “.exe” с помощью программ tasm.exe и tlink.exe.

3. Запустить программный файл с расширением “.exe”.

 

Программа должна выполняться в следующей последовательности:

а) запуск программы;

б) нажать на любую клавишу на клавиатуре, после чего динамик должен выдавать звуковые колебания, слышимые человеком;

в) нажать на любую клавишу на клавиатуре, после чего динамик должен прекратить выдачу звука, а программа должна закончить свою работу.

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.