www.electrik.org
сайт Электрик - электрика и энергетика
Главная Статьи по электричеству Вопросы и ответы по электричеству Нормативные документы, файлы, электроные книги для электриков Форум Каталог товаров и услуг Электротехника - тендеры Реклама на сайте Новости предприятий  Реклама на этом сайте и контакты  
 
 
  Добро пожаловать !  
Суббота, 16 декабря 2017 г.
 
 


РАЗМЕЩЕНИЕ ИНФОРМАЦИИ И РЕКЛАМЫ НА ЭТОМ САЙТЕ



СВАЛКА СХЕМ
(более 1000 схем)

Поиск на электросайтах

Поиск на сайте

Поиск на сайте


Навигация

· Главная

Разделы
· Новости
· Документы по энергетике и электричеству
· Статьи для электриков и энергетиков
· История исследования электричества
· Теория электротехники
· Ссылки

Контакт
· Форумы - электрикам - электричество и сварка
· FAQ
· Задать вопрос
· Гостевая книга

· Поиск
· Спонсорам, рекламодателям, обмен кнопками
· Все статьи для электриков и энергетиков
· Все файлы для электриков
· Все элекрические и электронные схемы
· Все электронные книги
· Электротехнический словарь
· Новости энергетики

Популярные статьи

  • Как воруют электроэнергию
  • Электронные электросчетчики
  • Осциллятор для сварочного аппарата от Nexor
  • ОСЦИЛЛЯТОР С НЕПРЕРЫВНЫМ ПИТАНИЕМ
  • Метод испытания трансформаторного железа для изготовления сварочного трансформатора
  • Сварочный трансформатор с падающей характеристикой
  • Способ определения начала и конца обмотки трансформатора и электродвигателя
  • КАК ПОДКЛЮЧИТЬ ТРЕХФАЗНЫЙ ЭЛЕКТРОДВИГАТЕЛЬ К ОДНОФАЗНОЙ СЕТИ
  • История электротехники
  • Энергетика

    Если ваше предприятие выпускает элекрооборудование или оборудование для энергетических хозяйств и вы хотите что бы о вашем предприятии узнали посетители нашего сайта - напишите нам. Если вам интересны проблемы атомной энергетики, энергетики в промышленности, вопросы и проблемы развития альтернативной энергетики в России - всех, от главного энергетика промышленного предприятия до электрика или просто интересующегося вопросами и проблемами развития электрики и энергетики принять участие в создании и развитии этого сайта. Будем рады услышать ваши предложения.

    Не можете найти схему? Лучшая поисковая система RadioNet

    HARDW.net - Все о компьютерном "железе": статьи, документация, форум по ремонту "железа"



    Free Service Manuals

    Сейчас на сайте

    На сайте сейчас 63 посетителей.
     
    Принтеры Brother Вентиляторы и фильтры IEK >Югтелекабель Автоматизированные беспроводные системы контроля и учета коммунальных ресурсов
    Содержание
    Тип: HTML
    Print version...

    АНАЛОГО-ЦИФРОВОЙ ПРЕОБРАЗОВАТЕЛЬ ИЗ ЗВУКОВОЙ КАРТЫ


    Сегодня каждый пользователь ПЭВМ знаком с термином "мультимедиа". У многих он ассоциируется с качественным звуком, анимацией и т.п. Однако звуковую карту Sound Blaster можно использовать как аналого-цифровой и цифро-аналоговый преобразователь с исключительно широкими возможностями обработки данных. Компьютер с такой картой можно использовать в качестве осциллографа, генератора или анализатора сигналов. Дело в том, что ее "сердцем" является цифровой сигнальный процессор DSP (Digital Signal Processor). Для того чтобы использовать его возможности, необходимо иметь непосредственный доступ к буферам, содержащим звуковые данные и управляющим режимом работы DSP, т.е. использовать интерфейс низкого уровня. В этой статье мы рассмотрим устройство звуковой карты и формат стандартных типов файлов данных, в которых в памяти компьютера хранятся данные, полученные в результате оцифровки сигналов, поступающих на вход звуковой карты. Такие же файлы можно синтезировать программно с целью получения сигналов заданной формы.

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

    puc.1

    Данные, имеющие отношение к мультимедиа, хранятся в файлах в так называемом RIFF-формате (Resource Interchange File Format — формат файла для обмена ресурсами) [1]. Файл в формате RIFF содержит вложенные фрагменты (chunk's). Внешний фрагмент состоит из заголовка и области данных (рис.2). Первое двойное слово заголовка содержит четырехсимвольный код, который идентифицирует данные, хранящиеся во фрагменте.

    puc.2

    Второе двойное слово заголовка — размер области данных в байтах (без учета размера самого заголовка). Область данных имеет переменную длину с условием ее выравнивания на границу слова и дополнения в конце нулевым байтом до целого числа слов в случае необходимости.

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

    Область, обозначенная на рис.2 как "Данные", могут содержать внутри себя другие фрагменты. Для файла, в котором хранятся звуковые данные (wav-файл), эта область содержит идентификатор данных "WAVE", фрагмент формата звуковых данных "fmt" (три символа "fmt" и пробел на конце), а также фрагмент звуковых данных (рис.2). Файл может дополнительно содержать фрагменты других типов, поэтому не следует думать, что заголовок wav-файла имеет фиксируемый формат. Например в файле может присутствовать фрагмент "LIST" или "INFO", содержащий информацию о правах .копирования и другую дополнительную информацию.

    Рассмотрим, как происходит запись данных. Вначале требуется открыть устройство ввода, указав ему формат звуковых данных. Затем нужно заказать один или несколько блоков памяти и подготовить их для ввода, вызвав специальную функцию. После этого подготовленные блоки нужно по мере необходимости передавать драйверу устройства ввода, который заполняет их записанными звуковыми данными. Для сохранения записанных данных в wav-файле приложение должно сформировать и записать в файл заяаловок wav-файла и звуковые данные из подготовленных заполненных драйвером устройств ввода блоков памяти.

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

    uses
          SysUtils, MMSystem;
     type 
          TWaveData = array[0..0) of word ;
    const
          Discret = 22050;
    WaveHdr:TWaveHdr=(
       lpData		: nil;	(address of the waveform buffer)
       dwBufferLength	: 0;	(length, in bytes, of the buffer)
       dwBytesRecorded	: 0;	(How much data is in the buffer )
       dwUser		: 0;
       dwFlags		: 0; 
       dwLoops	: 0;
       IpMext		: nil; 
       reserved		: 0 
       ) ;
    WaveFormat: TWaveFormatEx=(
       wFormatTag	: WAVE_FORMAT_PCM;
       nChannels	: 1;
       nSamplesPerSec	: Discret;
       nAvgBytesPerSec	: Discret;
       nBllockAlign	: 1;
       wBitsPerSample	: 8;
       csSize		: 0
       ) ;
    var
       WaveDate	: ^TWaveDate;
       HSoundDevice	: HWaveIn;
       hfile		: HMMIO;
       res		: MMResult;
    begin
       with WaveHdr do
               begin
    	dwBufferLehgth : =round(Discret/10);
    	dwBytesRecorded: =round(Discret/10);
    	GetMem(WaveData, dwBytesRecorded);
    	lpData : =PChar(WaveData);
              end;
       res : =waveInOpen (@HSoundDevice, WAVE_MAPPER, @WaveFormat, 0,0,0);
       res : =waveInPrepareHeader (HSoundDevice, @WaveHdr, SizeOf (WaveHdr));
       res : =waveInUnprepareHeader (HSoundDevice, @WaveHdr,SizeOf(WaveHdr)) ;
       FreeMem (WaveData) ;
       res: =waveInStart (HSoundDevice) ;
       hfile:=mmio0pen ("d: \work\data_1. txt",nil, 
    		MMIO_CREATE or MMIO_READWRITE);
       mmioWrite(hfile,WaveHdr.IpData, WaveHdr,dwBytesRecorded);
       mmioClose(hfile,0);
       waveInReset(HSoundDevice) ;
       waveInClose(HSoundDevice) ;
    end.
    

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

    Литература
    1. Фролов А.В., Фролов Г.В. Мультимедиа для Windows. Руководство для программиста. — М,"ДИАЛОГ-МИФИ", 1994, 284 с. (Библиотека системного программиста; Т. 15).

    О.БАРАНОВСКИЙ
    220116,г.Минск-116,а/я202, БГУ, фак. РФиЭ, 5 курс.

    (РЛ 3/98)



        
     
     
         
     
     Copyright © 2002-2006 by Koutsnetsov Oleg