Bosh sahifa > Yangiliklar > Kontent

FT800 Audio Primer-Audio Engine

Nov 02, 2018

2 Ovozli vosita


FT800 tomonidan turli xil ovoz effektlari va fayllarni eshitish mumkin. Chiqish PWM sifatida taqdim etiladi

bir pin, AUDIO_L ustida signal berish. Ikki audio manbai, Ovoz Synthesizer va

Audio ijro.


-2.1 Ovoz Synthesizer

Ovoz effektlari ROM-to'lqinlar kutubxonasiga o'rnatiladi va FT800-dan foydalanishni talab qilmaydi

RAM maydoni. Ko'pgina eshitilayotgan foydalanuvchi geribildirimi, shu kabi effektlar orqali ta'minlanishi mumkin

ekrandagi tugma bosilganda, DTMF telekom uchun signal yoki signal panelini ogohlantirish. Eng ko'p

effektlar bir marta o'ynaydi va keyin to'xtaydi. Boshqalar esa doimo o'ynaydi. Ohanglar to'liq ro'yxati va

xususiyatlari quyida keltirilgan:

Qiymat Ta'siri Davomiy Pitch
sozlang
Qiymat Ta'siri Davomiy Pitch
sozlang
00 soat Jim Y N 32h DTMF 2 Y N
01h kvadrat to'lqin Y Y 33h DTMF 3 Y N
02h sinüs to'lqini Y Y 34h DTMF 4 Y N
03h ariqchining to'lqini Y Y 35h DTMF 5 Y N
04h uchburchak to'lqini Y Y 36h DTMF 6 Y N
05h Ovoz berish Y Y 37h DTMF 7 Y N
06h Signal Y Y 38h DTMF 8 Y N
07h Warble Y Y 39h DTMF 9 Y N
08h Karusel Y Y 40h arfa N Y
10h 1 qisqa po'lat N Y 41h ksilofon N Y
11h 2 qisqa pips N Y 42h tuba N Y
12h 3 qisqa pips N Y 43h glockenspiel N Y
13h 4 qisqa pips N Y 44h organ N Y
14h 5 qisqa pips N Y 45h karnay N Y
15h 6 qisqa pips N Y 46h pianino N Y
16h 7 qisqa pips N Y 47h chimes N Y
17h 8 qisqa pips N Y 48h musiqa qutisi N Y
18h 9 qisqa pips N Y 49h qo'ng'iroq N Y
19h 10 qisqa pips N Y 50h tugmasini bosing N N
1Ah 11 qisqa pips N Y 51h switch N N
1Bh 12 qisqa pips N Y 52h kovboy N N
1Ch 13 qisqa pips N Y 53h notch N N
1Dh 14 qisqa pips N Y 54h hihat N N
1Eh 15 qisqa pips N Y 55h kikdrum N N
1Fh 16 qisqa pips N Y 56 soat pop N N
23h DTMF # Y N 57 soat yopishqoq N N
2Ch DTMF * Y N 58h chakirasiz N N
30h DTMF 0 Y N 60h ovozsiz N N
31h DTMF 1 Y N 61 soat ovozini o'chirish N N


Ko'pgina effektlar pitch nazoratiga (MIDI yozuviga) imkon beradi, shuning uchun turli ranglar yaratilishi mumkin. Standart MIDI yozuvi belgilari ishlatiladi:

MIDI yozuvi ANSI eslatmasi Freq (Hz) MIDI yozuvi ANSI eslatmasi Freq (Hz)
21 A0 27.5 65 F4 349.2
22 A # 0 29.1 66 F # 4 370.0
23 B0 30.9 67 G4 392.0
24 C1 32.7 68 G # 4 415.3
25 C # 1 34.6 69 A4 440.0
26 D1 36.7 70 A # 4 466.2
27 D # 1 38.9 71 B4 493.9
28 E1 41.2 72 C5 523.3
29 F1 43.7 73 C # 5 554.4
30 F # 1 46.2 74 D5 587.3
31 G1 49.0 75 D # 5 622.3
32 G # 1 51.9 76 E5 659.3
33 A1 55.0 77 F5 698.5
34 A # 1 58.3 78 F # 5 740.0
35 B1 61.7 79 G5 784.0
36 C2 65.4 80 G # 5 830.6
37 C # 2 69.3 81 A5 880.0
38 D2 73.4 82 A # 5 932.3
39 D # 2 77.8 83 B5 987.8
40 E2 82.4 84 C6 1046.5
41 F2 87.3 85 C # 6 1108.7
42 F # 2 92.5 86 D6 1174.7
43 G2 98.0 87 D # 6 1244.5
44 G # 2 103.8 88 E6 1318.5
45 A2 110.0 89 F6 1396,9
46 A # 2 116.5 90 F # 6 1480.0
47 B2 123.5 91 G6 1568.0
48 C3 130.8 92 G # 6 1661.2
49 C # 3 138.6 93 A6 1760.0
50 D3 146.8 94 A # 6 1864.7
51 D # 3 155.6 95 B6 1975.5
52 E3 164.8 96 C7 2093.0
53 F3 174.6 97 C # 7 2217.5
54 F # 3 185.0 98 D7 2349.3
55 G3 196.0 99 D # 7 2489.0
56 G # 3 207.7 100 E7 2637.0
57 A3 220.0 101 F7 2793.8
58 # 3 233.1 102 F # 7 2960.0
59 B3 246.9 103 G7 3136.0
60 C4 261.6 104 G # 7 3322.4
61 C # 4 277.2 105 A7 3520.0
62 D4 293.7 106 # 7 3729.3
63 D # 4 311.1 107 B7 3951.1
64 E4 329.6 108 C8 4186.0


Ovoz sintezi quyidagi registrlar tomonidan nazorat qilinadi:

 REG_SOUND

U Bit 31-16 = Sizni qiziqtirmaydi

U bit 15-8 = MIDI yozuvi (pitch)

U bitlar 7-0 Effekt

 REG_PLAY

U Bit 31-1 = Sizni qiziqtirmaydi

u Bit0 = Play / Play holatini ishga tushiring

REG_SOUND ichida tanlovni o'ynashni boshlash uchun = 1 yozing

 O'qish = 1 effekt hozirda bajarilayotganligini ko'rsatadi

 Read = 0 ta'siri tugallanganligini ko'rsatadi

 REG_VOL_SOUND

U bit 31-8 = g'amxo'rlik qilmang

u bitlar 7-0 = chiqish hajmi

FT800 xotira maydonini o'qiydi va yozadi, bu erda "kichik endian" formatida ishlaydi

birinchi bayt eng kam ahamiyatga ega bo'ladi. Misol uchun, A4 o'ynab pianino effektini (0x46) ko'rib chiqing

(0x45). SPI yoki I2C interfeysi haqidagi ma'lumotlar bilan Xost Xotira Yozish qatori mavjud

buyurtma bo'yicha quyidagi ma'lumotlarni:

0x90 = Xost Xotira Yozish klubi (0x80) plus ro'yxatga olish manzilining birinchi bayt (0x10)

0x24 = reestr manzilining ikkinchi bayti

0x84 = reestr manzilining uchinchi baytlari

0x46 = pianino effekti

0x45 = eslatma / pitch = A4 (440Hz)

0x00 = yoqtirmaslik, ixtiyoriy

0x00 = yoqtirmaslik, ixtiyoriy

Oxirgi ikki baytning yozishga hojat yo'qligini unutmang, shuning uchun 16-bit Xost Xotira Yozuvi aslida bo'lishi mumkin

reestrda talab qilinadigan qiymatlarni qondirish. Xost Xotira Yozuvi, Xost-ning qo'shimcha tavsiflari

Xotirani o'qish va Xost Xotirasi Buyum ma'lumotlarini uzatish AN_240 FT800 da joylashgan

Ground Up.


-2.2 Ovozli fayllar

Oddiy ohang sintezidan ko'proq narsani talab qiladigan ilovalar bo'lishi mumkin. Uchun

masalan, foydalanuvchiga aniqlik berish uchun ovozli buyruq xohishi yoki boshqa e'lon bo'lishi mumkin

ko'rsatmalar. FT800 quyidagi bitta kanalli (mono) formatdagi fayllarni o'qishni qo'llab-quvvatlaydi:

 8-bit imzolangan PCM - siqilmagan xom audio

 8-bit mLAW - chiziqli bo'lmagan siqilgan ovoz

 4 bitsli IMA-ADPCM - har bir baytda ikkita 4-bitlik bo'lgan yana siqilgan mLAW

namunalari

FT800 obyekti ramka 256Kbyt (RAM_G) va video moslamalarni (tasvirlar va shriftlar) va

audio moslamalari (yozilgan tovushlar). Xotining asosiy MCU tomonidan boshqarilishi kerak

Ma'lumotlar endi talab qilinmagunga qadar yozilmaydi.

Ovozli fayllar Xost Xotira Yozma jarayoni orqali mavjud maydonga o'rnatiladi va ular

8-byte hizalagan (64-bit) bo'lishi kerak.

RAM_G xotirasiga audio fayli qo'yilgandan keyingina ijro quyidagi nazorat qilinadi

ro'yxatdan o'tkazadi:

 REG_PLAYBACK_START

U bitlar 31-20 = g'amxo'rlik qilmang

U bittadan 19-0 = RAM_G ichida faylning 20-bitli boshlanish manzili

 REG_PLAYBACK_LENGTH

U bitlar 31-20 = g'amxo'rlik qilmang

u fayllar RAM_G ichida faylning 19-0 = 20 bitli uzunligi

 REG_PLAYBACK_FREQ

U bitlar 31-16 = g'amxo'rlik qilmang

U bit 15-0 = 16-bit Tinglash namunalarini olish chastotasi,

 REG_PLAYBACK_FORMAT

U bitlar 31-2 = ahamiyat bermang

u bitlar 1-0 = 2-bitli ijro formati

 0 = Lineer yoki siqilmagan PCM

 1 = mLav

 2 = ADPCM

 3 = undefined

 REG_PLAYBACK_LOOP

U bitlar 31-1 = g'amxo'rlik qilmang

o Bit 0 = 1-bit Ijro uslubi

 0 = bir marta o'ynash

 1 = doimo ijro etish

 REG_PLAYBACK_PLAY

U bitlar 31-1 = g'amxo'rlik qilmang

U Bit 0 = Play / Play holatini ishga tushiring

REG_SOUND ichida tanlovni o'ynashni boshlash uchun  Write = 0 yoki 1 ni yozing

 Read = 1 fayl hozirda o'ynab turganligini ko'rsatadi

 Read = 0 fayl tugallanganligini ko'rsatadi

 REG_PLAYBACK_READPTR

U bitlar 31-20 = g'amxo'rlik qilmang

u Bit 19 - 0 = 20 - bitli pointer joriy ijro etiladigan joy

 REG_VOL_PB

U bit 31-8 = g'amxo'rlik qilmang

u bitlar 7-0 = chiqish hajmi


-2.2.1 Konversiya dasturi

FTDI umumiy fayl formatini olish uchun "AUD_CVT" deb nomlangan ovozli fayllarni qayta ishlash xizmatini taqdim etadi

FT800 tomonidan qo'llab-quvvatlanadigan uchta fayl turini yarating. Ushbu yordam dasturiga havola berilgan

Ushbu hujjatning "Qo'shimcha A - Zikr qilish" bo'limida.

Resurs fayl xom (siqilgan) 16bit PCM, mono WAV fayli sifatida qabul qilinadi. Bunday fayllar bo'lishi mumkin

Audacity kabi keng tarqalgan ovozli tahrirlash dasturi yordamida yaratilishi mumkin. Bir marta

manba fayli mavjud, faqat buyruq irodasi yordam dasturini ishga tushirish:

aud_cvt -i inputfilename -f formati

bu erda 8 formatli "PCM" formatida "format" = 0

8-bit mLav uchun = 1

4 bitli IMA ADPCM uchun 2 ta

Olingan fayllar bilan jild yaratiladi. Keyinchalik, bu fayllar

FT800 RAM_G xotira maydoni.

Ovozni ayirboshlash dasturi har bir tanlangan format uchun xom va siqilgan faylni chiqaradi. Bu

siqilgan fayllarni saqlash uchun uy egasi MCU da foydali bo'lishi mumkin va ularni keyinchalik kengaytiradi

Zarur bo'lganda RAM_G bufer. Tafsilotlar uchun 4 bo'limga qarang.