ENSIKLOPEDIA ELEKTRONIK RADIO DAN KEJURUTERAAN ELEKTRIK Pemain audio MP3 dan Opus. Ensiklopedia elektronik radio dan kejuruteraan elektrik Ensiklopedia elektronik radio dan kejuruteraan elektrik / Audio Artikel ini menerangkan pemain mudah alih buatan sendiri untuk fail muzik dalam format biasa daripada kad memori microSD. Ia dipasang pada mikropengawal STM32F407VGT6 dalam kes daripada telefon bimbit NOKIA 1100. Skim pemain ditunjukkan dalam rajah. 1. Ia menggunakan maksimum komponen elektronik yang terdapat pada papan pembangunan STM32F4DISCOVERY. Ini termasuk mikropengawal STM32F407VGT6 (DD1), LD3985M25R (DA1) dan LD3985M33R (DA3), pengawal selia voltan bersepadu CS43L22 (DD2) serta komponen kod pasif yang diperlukan. Daripada telefon bimbit NOKIA 1100, sebagai tambahan kepada kes dan bateri, penyambung untuk menyambungkan fon kepala XS3, panel hadapan dengan LCD HG1, membran untuk butang SB1-SB17 yang dibentuk oleh pad sesentuh sepusat pada papan litar bercetak, dan penyambung untuk menyambungkan bateri G1 digunakan. Di samping itu, papan pemain mengandungi pemegang untuk kad memori microSD TFC-WPCE-08 (XS1), sekumpulan pad kenalan untuk menyambungkan pengaturcara Xp1, penyambung miniUSB-B 5075BMR-05-SM (XS2).
Pemasangan diod VD1, VD4, VD5, VD6 digunakan untuk melindungi daripada litar nyahcas elektrostatik yang disambungkan kepada penyambung XS2 dan XS3. Penyambung yang tinggal terletak di dalam petak bateri dan tidak memerlukan perlindungan. Cip (DA2) ialah pengawal cas bateri litium-ion G1 dengan voltan maksimum 4,2 V. Perintang R9 mengurangkan penurunan voltan pada cip ini semasa mengecas, menyebabkan ia menjadi panas. Perintang R10 menetapkan arus pengecasan maksimum Isal.maks mengikut formula Isetiap ap.maks = 1000/R10. Dengan rintangan R10 ditetapkan dalam kiloohms, nilai arus pengecasan diperoleh dalam miliamp. Adalah disyorkan untuk mengecas bateri litium-ion dengan arus tidak lebih daripada 1C, di mana C ialah kapasiti bateri. Kapasiti bateri BL-5C yang digunakan ialah kira-kira 1000 mAh, arus pengecasan maksimum yang dibenarkan untuk cip LTC4054ES5-4.2 ialah 800 mA. Memandangkan pengecasan dijalankan dari bas USB, kapasiti bebannya (500 mA) juga mesti diambil kira. Oleh itu, nilai disyorkan R10 ialah 2 kOhm. Selain itu, dengan mengukur voltan merentasi R10, anda boleh menentukan nilai semasa arus pengecasan bateri menggunakan formula Izar= 1000 UR10/ R10 (semasa - dalam miliamp, voltan - dalam volt, rintangan - dalam kiloohms). Apabila penyambung XS2 disambungkan ke bas USB, transistor kesan medan VT1 memutuskan sambungan bateri G1 daripada litar kuasa pemain. Voltan 5 V dari pin 1 penyambung XS2 membuka transistor VT5, voltan get transistor VT3 menjadi negatif berbanding puncanya. Transistor VT3 terbuka, termasuk pemain. Apabila tiada voltan pada pin 1 penyambung XS2, potensi get transistor VT3 adalah hampir dengan potensi sumbernya dan transistor ditutup. Menekan butang SB1 juga membuka transistor VT3, mikropengawal mula berfungsi dan menyemak status butang ini setiap 10 ms. Jika ia ditahan selama lebih daripada 2 saat, mikropengawal akan menetapkan paras voltan tinggi pada dasar transistor VT2, membukanya dan memastikan transistor VT3 terbuka. Selepas itu, pemain masuk ke dalam keadaan berfungsi, dan butang boleh dilepaskan. Matikan pemain dengan menekan dan menahan butang SB1 sekali lagi. Selepas menghidupkan, mikropengawal memulakan LCD HG1 dan kad microSD yang dimasukkan ke dalam pemegang XS1, menyemak kehadiran fail konfigurasi player.ini dalam direktori akar kad (sistem fail FAT12, FAT16, FAT32 disokong). Ini ialah fail ini biasa, iaitu satu set baris "kunci - nilai". Ia menyimpan maklumat tentang fail audio yang dipilih untuk main semula pada masa pemain terakhir dimatikan, kedudukan di dalamnya dan kelantangan ditetapkan. Program ini cuba memulihkan keadaan ini. Sekiranya berlaku kegagalan (contohnya, jika kad telah diganti), fail audio pertama (dengan sambungan .mp3 atau .opus) pada kad dicari. Carian bermula dari direktori akar, fail dicari mengikut susunan di mana ia disenaraikan dalam jadual peruntukan fail pada peta. Semasa main balik, fungsi MainThread penyahkod semasa dipanggil secara berkala, yang melakukan pembacaan daripada kad mengikut keperluan (setiap codec bertanggungjawab untuk menimbal sendiri, kerana format bekas paket audio untuk .opus dan .mp3 adalah berbeza) dan penyahkodan. Keperluan untuk melaksanakan operasi ini ditentukan oleh kepenuhan penimbal AudioBuffer bulat, yang daripadanya codec audio membaca maklumat secara tak segerak. Apabila penyahkodan fail audio semasa selesai, yang seterusnya dicari mengikut prinsip yang diterangkan di atas. Jika lintasan sistem fail selesai, main balik berhenti. Pemain berinteraksi dengan pengguna menggunakan LCD HG1 monokrom grafik dengan resolusi 96x65 px dan butang SB 1 -SB 17. Simulasi perisian mod paparan teks digunakan dengan skrin terbahagi kepada lapan baris ketinggian 8 px. Baki bar mendatar 1px di bahagian bawah skrin digunakan untuk memaparkan secara visual kedudukan semasa dalam fail semasa main balik. Baris pertama dari bahagian atas memaparkan (dari kiri ke kanan) voltan bateri, status pemain, kelantangan. Status dicirikan oleh aksara "0" - main balik, "-" - jeda, "<<" atau ">>" - putar balik pantas atau maju pantas, masing-masing dalam fail. Simbol dalam bentuk segi empat tepat bermaksud ralat dalam komunikasi litar mikro DD1 dan DD2 melalui antara muka I2C. Baris 2-6 menunjukkan laluan penuh ke fail audio yang dimainkan. Baris 8 memaparkan masa main balik semasa di sebelah kiri, dan tempoh fail audio di sebelah kanan. Butang SB1 bertukar antara mod main balik dan jeda, butang SB3 meningkatkan kelantangan, dan butang SB5 mengurangkan kelantangan, butang SB4 dihidupkan dan kunci pad kekunci dimatikan dengan butang SB15. Apabila pad kekunci dikunci, "Dikunci" dipaparkan di tengah-tengah baris 7 paparan. Menekan butang SB6 membawa kepada peralihan kepada main balik fail sebelumnya, dan butang SB8 - seterusnya. Menekan dan menahan butang ini selama lebih daripada satu saat meletakkan pemain ke dalam mod ke hadapan pantas, gulung semula atau maju, masing-masing. Menekan butang SB9 atau SB11 memuatkan fail pertama dan terakhir direktori semasa untuk main semula, masing-masing. Penyambung XS3 - tersedia dalam perumah yang digunakan untuk menyambungkan set kepala. Alat dengar itu sendiri mempunyai bicu untuk palam audio standard dengan diameter 3,5 mm, yang mana fon kepala disambungkan. Set kepala juga mempunyai butang yang menyambungkan litar BTN dan GND apabila ditekan, dan rintangan antara kenalan butang yang dilepaskan adalah kira-kira satu kiloohm. Dalam pemain, talian BTN disambungkan ke litar 3,3 V melalui perintang R21, oleh itu, dengan mengukur voltan pada talian ini, seseorang boleh menilai kedua-dua kehadiran set kepala yang disambungkan dan keadaan butangnya. Fungsi butang set kepala adalah serupa dengan fungsi butang pemain SB1 - anda boleh menukarnya daripada mod main balik kepada mod jeda dan sebaliknya, dan juga mematikannya. Walau bagaimanapun, anda tidak boleh menghidupkan pemain yang menggunakannya. Apabila papan kekunci dikunci, butang set kepala kekal aktif. Penyambung XS2 menggantikan lensa lampu suluh LED dalam telefon. Apabila tahap logik yang tinggi dikesan pada input PA1 mikropengawal yang disambungkan ke pin 9 penyambung ini, program mula memaparkan arus pengecasan bateri dalam ampere di penjuru kanan sebelah atas paparan. Selain itu, acara ini menghidupkan pemain secara automatik jika ia dimatikan. Secara lalai, selepas itu, pemain berfungsi dalam mod main balik biasa, yang membolehkan anda mendengar muzik dan mengecas bateri pada masa yang sama. Apabila anda menekan butang SB13, program ini menyimpan keadaan pemain dalam fail player.ini dan mengkonfigurasi modul mikropengawal USB untuk berfungsi dalam mod MSC (Mass Storage Class). Dalam mod ini, komputer mengenali pemain yang disambungkan ke penyambung USB sebagai peranti storan boleh tanggal, kandungannya sepadan dengan yang dirakam pada kad microSD yang dimasukkan ke dalam pemain. Maklumat ditukar dengan komputer hanya dalam mod Kelajuan Penuh dengan lebar jalur tidak lebih daripada 12 Mbps. Paparan masih menunjukkan nilai semasa arus pengecasan, dalam baris 3 - tulisan "USB Disk", dalam baris 4 dan 5 - masing-masing, kelajuan membaca dan menulis. Dengan menekan butang SB12, peranti kembali ke mod pemain. Lukisan papan litar bercetak pemain ditunjukkan dalam rajah. 2. Dimensi dan bentuknya dipilih sama dengan papan telefon bimbit NOKIA 1100, di mana ia diletakkan (Gamb. 3). Papan mesti dibuat mengikut teknologi dengan lubang bersalut, jika tidak, ia perlu memasukkan dan memateri kepingan wayar tin di kedua-dua belah ke dalam semua vias (dengan pad pada kedua-dua belah papan) dan mematerinya di kedua-dua belah. Lokasi bahagian pada papan ditunjukkan dalam rajah. 4 dalam skala 2:1. Ia juga menunjukkan topeng yang diperbuat daripada varnis penebat tahan haba, yang mana ia perlu untuk melindungi konduktor bercetak. Jika topeng tidak digunakan, maka adalah perlu untuk mengasingkan sekurang-kurangnya kawasan di mana konduktor mendekati kenalan bercetak butang dan kawasan di bawah bekas logam pemegang kad microSD XS1.
Kod daripada fail walkgeek-v1.2-n1100-with-mp3.hex yang dilampirkan pada artikel mesti dimasukkan ke dalam memori pengawal mikro yang dipasang pada papan. Kod sumber program pemain dan semua komponennya diedarkan di bawah Lesen BSD Baharu (dan lain-lain yang serasi), yang membenarkan penggunaannya dalam projek komersial tertutup. Pengecualian ialah pustaka Mp3dec, yang penambahannya kepada produk akhir memerlukan pendedahan semua kod sumber. Projek ini sentiasa dikemas kini, dan versi terkininya disiarkan dalam [1]. Seperti yang telah disebutkan, pemain menyediakan keupayaan untuk memainkan fail Opus. Ini ialah versi stabil codec audio lossy [2] yang dikeluarkan baru-baru ini yang dibangunkan oleh projek Xiph.org, yang terkenal dengan penyelesaian seperti Vorbis, FLAC (Free Lossless Audio Codec) dan Speex (codec pertuturan). Anda juga boleh memanggilnya Ogg - bekas media universal yang digunakan secara lalai untuk membungkus strim termampat dalam fail Opus. Memandangkan codec Opus agak baru, tidak banyak pelaksanaannya pada sistem dengan jumlah RAM yang kecil. Salah satunya ialah Rockbox. Semasa bekerja dengan codec, ternyata perpustakaan Ogg secara dinamik memperuntukkan memori untuk cache seluruh halaman (saiz maksimum teori ialah 65 KB, yang sebenar adalah kira-kira 26 KB), serta untuk cache granulepos semua paket halaman (kira-kira 16 KB), yang banyak untuk peranti dengan 192 KB RAM. Selain itu, perpustakaan secara lalai memperuntukkan kawasan kecil memori untuk penimbal halaman, mengembangkannya semasa operasi dan setiap kali memperuntukkan memori "dengan margin". Perkara yang sama berlaku dengan penimbal untuk nilai lacing - maklumat tentang pengedaran pakej pada halaman. Oleh itu, jika kumpulan memori dinamik adalah kecil, ia tidak lama lagi membawa kepada pemecahan yang ketara dan kemustahilan peruntukan selanjutnya memori amaun yang diperlukan. Hasil daripada perubahan yang dibuat pada perpustakaan, caching dilakukan pada tahap paket (saiz maksimum paket maklumat stereo yang dihantar pada kelajuan 512 Kbps, dalam amalan, 1276 bait). Saiz penimbal maksimum untuk nilai lacing ialah 256 sel dua bait, dan ia juga boleh dibuat satu bait. Oleh itu, semua struktur yang dikaitkan dengan bekas Ogg, selepas pengubahsuaian, mengambil kurang daripada 2 KB RAM. Beberapa andaian telah dibuat dalam pengubahsuaian: paket tidak boleh merentasi sempadan halaman, jumlah semak halaman tidak disemak (tiada satu pun daripada ini ditemui dalam mana-mana fail Opus). Bekerja dengan fail yang mengandungi lebih daripada satu aliran, dan dengan bilangan saluran yang berbeza daripada dua belum diuji. Jumlah memori yang digunakan oleh codec Opus ialah 65088 bait, di mana 3856 bait diduduki oleh penimbal keluaran. Keputusan pemprofilan codec pada kadar aliran maklumat yang berbeza ditunjukkan dalam Jadual. 1. Jadual 1
Konsep "kerumitan" di dalamnya merujuk kepada prestasi pemproses yang diperlukan untuk penyahkodan yang berjaya. Ia dianggarkan dengan pengiraan mudah menggunakan pemasa perkakasan perbezaan antara detik kemasukan ke dalam prosedur penyahkodan setiap bingkai dan keluar daripadanya (dengan multitasking preemptive dilumpuhkan dan gangguan dilumpuhkan). Ujian menunjukkan bahawa codec MP3 memerlukan usaha pengiraan yang kurang. Tetapi Opus adalah bebas royalti, dan kualiti bunyi lebih baik apabila menggunakannya daripada semasa menggunakan MP3 dan kadar bit yang sama. Terdapat versi program pemain untuk papan nyahpepijat STM32F4DISCOVERY. Kod yang perlu dimasukkan ke dalam memori pengawal mikro yang dipasang padanya adalah dalam fail walkgeek-v1. 1 -stm32f4discovery-with-mp3.hex (juga dilampirkan pada artikel). Dalam kes ini, fail audio dimainkan daripada pemacu kilat USB yang disambungkan ke penyambung CN5 papan melalui penyesuai. Pemain bertindak sebagai Tuan bas USB. Statusnya dipaparkan oleh LED oren, merah, biru dan hijau pada papan. Merah menunjukkan tidak, hijau menunjukkan kehadiran pemacu FLASH yang disambungkan, oren menunjukkan fail audio sedang dimuatkan, main semula telah berhenti atau ralat program telah berlaku, dan biru berkelip menunjukkan mod main balik. Kebanyakan butang yang terdapat dalam rajah dalam Rajah. 1, disambungkan ke papan nyahpepijat mengikut jadual. 2 (sentuhan kedua setiap butang disambungkan ke wayar biasa). Peranan butang SB8 dilakukan oleh butang "Pengguna" papan. Paparan daripada telefon NOKIA 1100 disambungkan ke papan nyahpepijat mengikut jadual. 3. Jadual 2
Jadual 3
Kesusasteraan
Pengarang: O. Tsaregorodtsev Lihat artikel lain bahagian Audio. Baca dan tulis berguna komen pada artikel ini. Berita terkini sains dan teknologi, elektronik baharu: Kandungan alkohol bir hangat
07.05.2024 Faktor risiko utama untuk ketagihan perjudian
07.05.2024 Kebisingan lalu lintas melambatkan pertumbuhan anak ayam
06.05.2024
Berita menarik lain: ▪ Bakteria isi rumah akan memberitahu tentang kehidupan peribadi anda ▪ Penderia Imej OmniVision untuk Telefon Pintar ▪ Pengukuran ketepatan tinggi jisim W-boson ▪ Nanosensor mengesan racun perosak pada buah-buahan Suapan berita sains dan teknologi, elektronik baharu
Bahan-bahan menarik Perpustakaan Teknikal Percuma: ▪ bahagian tapak Jam, pemasa, geganti, suis beban. Pemilihan artikel ▪ Artikel Argus. Ungkapan popular ▪ artikel Mengapa kaktus mempunyai jarum? Jawapan terperinci ▪ artikel Hos program radio. Deskripsi kerja ▪ artikel Pengiraan radio amatur. Direktori ▪ artikel Gentian tiruan diperoleh daripada larutan kuprum-ammonia. Pengalaman kimia
Tinggalkan komen anda pada artikel ini: Semua bahasa halaman ini Laman utama | Perpustakaan | artikel | Peta Laman | Ulasan laman web www.diagram.com.ua |