Управление mp3-проигрывателем


Главная / ЭКВМ / Программы / Примеры

Управление mp3-проигрывателем TDR025 и аналогичными может выполняться различным образом с использованием последовательного или параллельного порта, а также кнопками. Способ управления записывается в файле конфигурации.

Рассмотрим управление проигрывателем в режиме 7 (кодированное воспроизведение) при помощи ЭКВМ. В этом режиме номер выбранного для воспроизведения файла от 0 до 255 записывается в модуль проигрывателя через параллельный порт.

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

.CHARSET 1251
; Управление проигрывателем MP3
; Перед запуском программы в RX занести номер файла от 0 до 255.

.ORG 0
	MA		; номер файла
	1 
	PP M 9090	; статический режим
	PP M 9093	; передача данных
	RMA
	K NOT
	PP M 9091	; номер файла

	254		; сигнал STROBE
	PP M 9092

	2		; задержка 20 мс
A1:	PP M 9050
	PP RM 9050
	F X=0 A1

	255
	PP M 9092	; конец сигнала STROBE
	R/S

Примечание. Номер файла записывается в регистр R9091 в инверсном виде.



Следующая программа проверяет сигнал BUSY для проверки текущего состояния mp3-проигрывателя - при окончании воспроизведения очередного файла устанавливается бит 3 в регистре R9092. Программа циклически проигрывает все 256 файлов, начиная с номера, введённого при запуске в RX. Отсутствующие файлы игнорируются.

.ORG 0
	MA		; номер файла
	1 
	PP M 9090	; статический режим
	PP M 9093	; передача данных

A1:
	RMA 
	K NOT
	PP M 9091	; номер файла
	K NOT
	K SCR
	1 +
	MA

	254		; сигнал STROBE
	PP M 9092

	2		; задержка 20 мс
	GSB S1

	255
	PP M 9092	; конец сигнала STROBE
	
	50		; задержка 500 мс
	GSB S1

A2:	PP RM 9092
	8
	K AND
	F X!=0 A2	; проверка окончания файла
	GOTO A1

S1:	PP M 9050
	PP RM 9050
	F X=0 S1
	RTN

Для приведения номера файла к допустимому диапазону здесь используются последовательно выполняемые команды "K NOT" - это более эффективно, чем проверка условия.

Программа выполняется непрерывно до останова командой "С/П" или выключением питания.



НПП "СЕМИКО" (383) 271-01-25 (многоканальный)