Sadržaj:
- Korak 1: Nabavite dijelove
- Korak 2: Raspored komponenti plana
- Korak 3: Montaža
- Korak 4: Sastavite i učitajte firmver
- Korak 5: Shvatite krug
- Korak 6: Rukovanje uređajem
Video: MSP430 Analizator audio spektra na matičnoj ploči: 6 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:37
Ovaj projekt temelji se na mikrofonu i zahtijeva minimalne vanjske komponente. Koriste se 2 x kovanice LR44 tako da cijela struktura može funkcionirati u granicama 170 malih mini ploča s povezivanjem. Koriste se i demonstriraju ADC10, TimerA prekid LPM buđenja, TimerA PWM poput izlaza, upotreba gumba, cjelobrojna aritmetika.
Značajke
- 8 -bitni cijeli broj FFT 16 uzoraka na 500Hz razdvajanja
- prikazuje 8 amplituda 1K, 1.5K, 2K, 3K, 4K, 5K, 6K, 7.5K nelinearno
- karta djelomičnog logaritma za prikaz amplituda, ograničena jer je rezolucija smanjena za 8 bit FFT
- TLC272 jednofazni mikrofonski pojačivač pri pojačanju od 100x puta 100x (možete doživjeti s 2 stupnja)
- izborni izborni izborni prozor Hamming
- izbornik podešava 4 razine svjetline
- izbornik podesite 8 razina brzina uzorkovanja / vrijeme odziva
- 2 x LR44 dugmaste ćelije s napajanjem "na brodu"
Korak 1: Nabavite dijelove
Evo što je potrebno za ovaj projekt
- MSP430G2452 (dodatni čip s TI Launchpada G2 ili bilo koji 4K 20 -pinski MCU serije MSP430G)
- mini veznu ploču od 170 veznih točaka ili perf ploču za izradu pretpojačala
- TLC272 Dvojno op-pojačalo
- mini elektronski mikrofon
- 47k (pull-up), 100k, 2 x 10k, 1k otpornici
- 1 x 0,1 uF
- kratkospojne žice
- dvoredni muški pin pin koji će se koristiti za držač baterije
- 2 x dugmasta baterija LR44
Korak 2: Raspored komponenti plana
Projekt će biti izgrađen na mini ploči sa 170 vezanih točaka. Raspored komponenti je prikazan dolje. Posebno treba napomenuti da se LED matrica 8x8 postavlja na vrh MSP430 MCU. Osim komponenti, tu su i spojne žice kratkospojnika prikazane znakovima "+------+".
G V + Gnd (jednostupanjski raspored) KORISTIMO OVAJ RASPORED + ==================================== =================+ c0 ………… c7 | MIC……. + -----++-+…. | r0 o o o o o o o o | o || o + ----- [100k] --------------- +….. | r1 X o o o o o o o |. +--------------+-+. C7 C6 R1 C0 R3 C5 C3 R0 |. o o o o o o o o |…… |.. | b6 a7 | | c0 i r1 dijele isti pin i neće se prikazati | +. +-+-+-+| +-+-+-+-+-+-+-+-+-+-+| *moguća primjena za c6 + c0 + r1 | | | V+ | | | G b6 b7 T R a7 a6 b5 b4 b3 | | ovo će osloboditi b6 za xtalni sat od 32 kHz | | | TLC272 | | | | | | | izlaz - + G | | |+ a0 a1 a2 a3 a4 a5 b0 b1 b2 | | | +. +-+-+-+| +-+-+-+-+-+-+-+-+-+-+| | o || o o o. +-+.. R4 R6 C1 C2 R7 C4 R5 R2 | |…. o- [10k]-o……… | |. o- [1k] o o o………._. | | o ---- [10k] ----------- o……. o o | +=================================================== ====+.1uF 100k 10k ADC tipka+ -----------------+
koristimo samo jednu fazu TLC272
Korak 3: Montaža
Komponente možete početi postavljati na temelju izgleda matične ploče. Budući da je to umjetnost ASCII, možda nije baš jasno. U ovom koraku možete upariti fotografije i identificirati sve veze.
Mora se voditi računa o postavljanju IC čipova. Obično se na jednom kutu nalazi točka koja označava pin 1 uređaja.
Koristio sam CAT5 Ethernet kabelske žice i vrlo ih je lako raditi na projektima matične ploče. Ako imate stare kabele CAT5, možete ih prerezati i vidjet ćete da unutra ima 6 upletenih žica. Savršeni su za matične ploče.
Korak 4: Sastavite i učitajte firmver
Izvorni kod obično se nalazi u mojim spremištima za github.
Za ovaj projekt, pojedinačna izvorna datoteka C C nfft.c grupirana je u moje spremište zbirki matičnih ploča. Trebate samo nfft.c
Koristim mps430-gcc za sastavljanje firmware-a, ali trebao bi se slagati s TI CCS-om. Možete izbjeći sve probleme oko instaliranja IDE -a ili kompajlera odlaskom u TI CCS oblak, koji je web -temeljen IDE. Čak će i preuzeti firmver na vaš ciljani uređaj.
Ovo je primjer naredbe za kompajliranje s prekidačima
msp430 -gcc -Os -Wall -function -section -fdata -section -fno -inline -small -functions -Wl, -Map = nfft.map, --cref -Wl, --relax -Wl, --gc- odjeljci -I/energia -0101E0016/hardver/msp430/jezgre/msp430 -mmcu = msp430g2553 -o nfft.elf nfft.c
Koristim TI Launchpad G2 kao programer za programiranje MCU -a.
Korak 5: Shvatite krug
Shema kola prikazana je u nastavku
MSP430G2452 ili slično, potrebno je 4K Flash TLC272 dvostruko op-pojačalo, GBW @1,7 Mhz, @x100 pojačanje, propusnost do 17 kHz
* koristimo samo jednu fazu TLC272
._.
| MSP430G2452 | Vcc | | | + ----------------------- 2 | ADC0 | 1-+ | | | |. | Vcc | | | | pull-up (47k) Vcc Vcc | --------------- | | | | _ | | | +-1 | ----. Vcc | 8-+ | | | |. |. |. | ^.--- | 7 | | 16-+ | | 10k | | 10k | | | / / ^ | | | | _ | | _ | 100.000 | _ | | / _+\ / / | | /| --- (vidi izgled matične ploče) |.1u | | | | | /_+\ | | / | ------_+-|| --- |-[1k]-+-2 | ---+| | | | | 15 GPIO | | | | +---------- 3 | ----- + +-|-| 6 | P1.1-P1.7 | | 8x8 | | | +-4 | Gnd +-| 5 | P2.0-P2.7 | | LED | |+ | | --------------- | | | matrica | ((O)) |. | | / | | _ | | MIC | | 10k | +-20 | Gnd / | -------- | | _ | | | | _ | _ | _ _ | _ _ | _ _ | _ /// /// /// ///
LED vožnja
LED matrica ima 8 x 8 elemenata. Pokreće ih 15 GPIO pinova. Oni su multipleksirani sa 8 redova i shemom od 8 stupaca. Budući da nakon upotrebe 1 pina za ADC ulaz postoji samo 15 pinova, multipleksiranje ima red 1 i stupac 0 koji dijele jedan pin. To znači da se posebna LED dioda u retku 1 i stupcu 0 ne može paliti. Ovo je kompromis jer jednostavno nema dovoljno GPIO pinova za pogon svih LED elemenata.
Snimanje zvuka
Zvuk se snima putem ugrađenog kondenzatorskog mikrofona na Educational BoosterPack -u. Kako su signali mikrofona mali, moramo ga pojačati do razine koju msp430 ADC10 može koristiti s razumnom razlučivošću. U tu sam svrhu koristio dvostupanjsko pojačalo.
Op-pojačalo se sastoji od dvije faze, svaka sa pojačanjem od oko 100x. Morao sam usvojiti TLC272 jer je također vrlo čest dio i radi s 3V. Širina pojasa pojačanja od oko 1,7 Mhz znači da za naš dobitak od 100x možemo samo jamčiti da će raditi dobro (tj. Održavati željeni dobitak) ispod 17 KHz. (1,7 MHz / 100).
U početku namjeravam napraviti ovaj analizator spektra do 16-20Khz, ali na kraju sam otkrio da je oko 8Khz dovoljno dobro za prikazivanje glazbe. To se može promijeniti zamjenom LM358 sa audio-ocjenom i promjenom brzine uzorkovanja. Samo potražite pojasni opseg op-pojačala koje odaberete.
Uzorkovanje i FFT
Korištena funkcija FFT je "fix_fft.c" kôd koji su usvojili mnogi projekti, već nekoliko godina lebdi na internetu. Probao sam verziju od 16 bita i verziju od 8 bita. Na kraju sam se odlučio za 8 -bitnu verziju što se moje svrhe tiče, nisam vidio veći napredak u 16 -bitnoj verziji.
Ne razumijem dobro mehanizam FFT -a osim što je to pretvorba vremenske domene u frekvencijsku domenu. To znači da će brzina (vrijeme) uzoraka zvuka, nakon unosa u funkciju izračuna FFT -a, utjecati na frekvenciju amplitude koju dobivam kao rezultat. Tako prilagođavanjem brzine uzorkovanju zvuka mogu odrediti frekvencijski pojas kao rezultat.
TimerA 0 CCR0 koristi se za čuvanje vremena uzorkovanja. Najprije utvrđujemo brojeve koji su nam potrebni za postizanje frekvencije pojasa (odgovara našoj DCO frekvenciji od 16 Mhz). tj. TA0CCR0 postavljeno na (8000/(BAND_FREQ_KHZ*2))-1; gdje je za mene BAND_FREQ_KHZ 8. Može se promijeniti ako imate bolje op-pojačalo i / ili želite da bude drugačije.
Frekvencijski rasponi i skaliranje amplitude
Firmver obrađuje 16 opsega u jednom zamahu, a vrijeme hvatanja proizvodi razdvajanje od 500Hz između ovih banaka. LED matrica ima 8 stupaca i prikazat će samo 8 opsega / amplituda. Umjesto prikazivanja svakog svaka dva pojasa, nelinearni popis frekvencijskih pojaseva koristi se za prikaz dinamičnijih frekvencijskih pojaseva (u smislu glazbe). Popis se sastoji od praznina od 500Hz na niskim razinama, 1KHz praznina u srednjim i 1.5Khz opsega na visokim.
Amplituda pojedinih pojaseva smanjena je na 8 razina, koje su predstavljene brojem vodoravnih 'točaka' na LED matričnom zaslonu. Razine amplitude su smanjene putem nelinearne karte koja prevodi rezultate FFT-a u jednu od 8 razina. točkice. Koristi se svojevrsno logaritamsko skaliranje koje najbolje predstavlja našu percepciju razine zvuka.
Postoji ugrađena AGC logika i analizator spektra pokušat će smanjiti amplitudne razine kada je u prethodnim ciklusima otkriveno više razina vrha. To se radi pomoću kliznog ravnala za usporedbu tablice.
Korak 6: Rukovanje uređajem
- Kratkim pritiskom tipke u načinu prikaza prikazuje se prikaz bez točke, jedne točke, 2 točke i 3 točke.
- Dugim pritiskom ulazi se u način postavljanja, a slijedećim dugim pritiskom rotira se kroz izbornik.
- Stavke izbornika prolaze kroz 'Hamming Window Option', 'Dimmer', 'Sampling / Refresh Rate'.
- U načinu postavljanja 'Hamming Window', kratki pritisci prolaze kroz ciklus bez udarca, udarca 1, udarca 2, udarca 3, dugog pritiska potvrđuje postavku.
- U "Dimmer" načinu rada za postavljanje, kratki pritisci prolaze kroz dostupne razine svjetline od 0 do 3, dugi pritisak potvrđuje postavku.
- U načinu postavljanja 'Uzorkovanje / učestalost osvježavanja', kratki pritisci prolaze kroz dostupne brzine osvježavanja od 0 do 7, 0 znači da nema odgode, dugi pritisak potvrđuje postavku.
- Multipleksiranje LED segmenata uključuje vremenske odgode radi kompenzacije razlika u svjetlini za pojedine retke.
Preporučeni:
Kako napraviti LED analizator audio audio spektra: 7 koraka (sa slikama)
Kako napraviti LED analizator audio audio spektra: LED analizator audio spektra generira prekrasan uzorak osvjetljenja ovisno o intenzitetu glazbe. Na tržištu je dostupno mnogo DIY LED glazbenih spektra, ali ovdje ćemo napraviti LED audio spektar Analizator koji koristi NeoPixe
Kako sam napraviti 32 -band LED analizator audio audio glazbenog spektra pomoću Arduino Nano kod kuće #arduinoproject: 8 koraka
Kako DIY 32 -pojasni LED analizator audio audio glazbenog spektra pomoću Arduino Nano kod kuće #arduinoproject: Danas ćemo kod kuće napraviti 32 -pojasni analizator audio audio glazbenog spektra kod kuće pomoću Arduina, on može istovremeno prikazivati frekvencijski spektar i reproducirati muisc. mora biti spojen ispred otpornika od 100 k, u protivnom buka pipa
Srčani privjesak na matičnoj ploči: 10 koraka
Privjesak u obliku srca na matičnoj ploči: Ako volite razdvajati stvari (osobito računala) koliko i ja, morate imati jednu ili dvije matične ploče u blizini, pa evo projekta koji će ih pretvoriti u zaista lijep nakit. U vrijeme ovog posta bio sam na Instructables
Regulator napona na matičnoj ploči s zaslonom / regulatorom napona Com Display za placa de ensaio: 8 koraka
Regulator napona na ploči s zaslonom / Regulator napona Com zaslon Para Placa De Ensaio: Nabavite potrebne komponente koje se nalaze na priloženom popisu (postoje veze za kupnju ili pregled njihovih karakteristika). lá os links para poderem comprar ou ver as caracteristicas d
Samostalni Arduino / ATMega čip na matičnoj ploči: 8 koraka (sa slikama)
Samostalni Arduino / ATMega čip na Breadboard -u: Ako ste poput mene, nakon što sam nabavio svoj Arduino i izveo posljednje programiranje na svom prvom čipu, želio sam ga izvući sa svog Arduino Duemilanove i staviti ga u svoj krug. Ovo bi također oslobodilo moj Arduino za buduće projekte. Problem