Sadržaj:
- Korak 1: Nabavite dijelove
- Korak 2: Raspored komponenti plana
- Korak 3: Montaža
- Korak 4: Prevedite i učitajte firmver
- Korak 5: Shvatite krug
- Korak 6: Rukovanje uređajem
Video: MSP430 Analizator audio spektra za matičnu ploču: 6 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:08
Ovaj projekt je zasnovan na mikrofonu i zahtijeva minimalne vanjske komponente. Koriste se 2 x LR44 kovanice kako bih cijela konstrukcija radila u granicama 170 malih ploča s povezivanjem. Koriste se i demonstriraju ADC10, TimerA prekid LPM buđenja, TimerA PWM poput izlaza, upotreba dugmeta, cijela aritmetika.
Karakteristike
- 8 -bitni cijeli broj FFT 16 uzoraka na 500Hz razdvajanja
- prikazuje 8 amplituda 1K, 1.5K, 2K, 3K, 4K, 5K, 6K, 7.5K nelinearnih
- mapa djelomičnog logaritma za prikaz amplituda, ograničena jer je rezolucija smanjena za 8 -bitni FFT
- TLC272 jednofazni mikrofonski pojačivač sa pojačanjem od 100x puta 100x (možete doživjeti w/ 2 stupnja)
- izborni izborni opcionalni Hamming prozor
- meni podešava 4 nivoa osvetljenja
- meni podešava 8 nivoa brzinu uzorkovanja / vreme odziva
- 2 x LR44 dugmaste ćelije sa napajanjem "na brodu"
Korak 1: Nabavite dijelove
Evo šta je potrebno za ovaj projekat
- MSP430G2452 (dodatni čip sa TI Launchpada G2 ili bilo koji 4K 20 -pinski MCU serije MSP430G)
- mini vezana ploča sa veznim tačkama 170 ili perf ploča za konstrukciju predpojač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 se koristi za držač baterije
- 2 x dugmasta baterija LR44
Korak 2: Raspored komponenti plana
Projekt će biti izgrađen na 170 vezanih mini-ploča. Raspored komponenti je prikazan ispod. Posebno treba napomenuti da se LED matrica 8x8 postavlja na vrh MSP430 MCU. Osim komponenti, tu su i spojne kratkospojne žice 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 aplikacija za c6 + c0 + r1 | | | V+ | | | G b6 b7 T R a7 a6 b5 b4 b3 | | ovo će osloboditi b6 za 32kHz xtal sat | | | TLC272 | | | | | | | out - + 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 dugme+ -----------------+
koristimo samo jednu fazu TLC272
Korak 3: Montaža
Komponente možete početi postavljati na osnovu izgleda matične ploče. Budući da je to umjetnost ASCII, možda neće biti baš jasna. 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 od uglova 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: Prevedite i učitajte firmver
Izvorni kod obično se nalazi na mojim github spremištima.
Za ovaj konkretni projekat, pojedinačna C izvorna datoteka nfft.c je grupirana u mojem spremištu zbirki matičnih ploča. Samo vam treba nfft.c
Koristim mps430-gcc za kompajliranje firmvera, ali bi trebao ići dobro s TI CCS-om. Možete izbjeći sve probleme oko instaliranja IDE -a ili kompajlera odlaskom u TI CCS oblak, koji je web -baziran IDE. Čak će i preuzeti firmver na vaš ciljani uređaj.
Ovo je primjer naredbe za kompajliranje sa prekidačima
msp430 -gcc -Os -Wall -function -section -fdata -section -fno -inline -small -functions -Wl, -Map = nfft.map, --cref -Wl, --relax -Wl, --gc- sekcije -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 predstavljena 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 | | | / / ^ | | | | _ | | _ | 100k | _ | | / _+\ / / | | /| --- (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 8 kolona. 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.
Sound Capture
Zvuk se snima putem ugrađenog kondenzatorskog mikrofona na Educational BoosterPack -u. Kako su signali mikrofona mali, moramo ga pojačati do nivoa koji msp430 ADC10 može koristiti sa razumnom rezolucijom. U tu sam svrhu koristio dvostupanjsko op-pojačalo.
Op-pojačalo se sastoji od dvije faze, svaka sa pojačanjem od oko 100x. Morao sam usvojiti TLC272 jer je to također vrlo čest dio i radi sa 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 muzike. To se može promijeniti zamjenom LM358 sa nečim zvučno ocijenjenim i promjenom brzine uzorkovanja. Samo potražite pojačanje pojačanja op-pojačala koje odaberete.
Uzorkovanje i FFT
Korištena funkcija FFT je "fix_fft.c" kôd koji su usvojili mnogi projekti, a 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 konverzija iz vremenskog do frekvencijskog područja. To znači da će brzina (vrijeme) uzoraka zvuka, nakon unosa funkcije izračunavanja FFT -a, utjecati na frekvenciju amplitude koju dobivam kao rezultat. Tako da prilagođavanjem brzine uzorku zvuka mogu odrediti frekvencijski pojas kao rezultat.
TajmerA 0 CCR0 koristi se za čuvanje vremena uzorkovanja. Prvo određujemo brojeve koji su nam potrebni za postizanje frekvencije opsega (odgovara našoj DCO taktu od 16 Mhz). tj. TA0CCR0 postavljeno na (8000/(BAND_FREQ_KHZ*2))-1; gdje je BAND_FREQ_KHZ 8 za mene. Može se promijeniti ako imate bolje op-pojačalo i / ili želite da bude drugačije.
Frekvencijski opsezi i skaliranje amplitude
Firmver obrađuje 16 opsega u jednom zamahu, a vrijeme snimanja 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 opsega, koristi se lista nelinearnih frekvencijskih pojasa za prikaz dinamičnijih frekvencijskih opsega (u smislu muzike). Spisak je praznina od 500Hz na donjem kraju, 1KHz praznina u srednjim opsezima i 1.5Khz opsega na visokim.
Amplitude pojedinih opsega su smanjene na 8 nivoa, koji su predstavljeni brojem horizontalnih 'tačaka' na LED matričnom ekranu. Nivoi amplitude se smanjuju putem nelinearne karte koja prevodi rezultate FFT-a u jedan od 8 nivoa. tačke. Koristi se svojevrsno logaritamsko skaliranje koje najbolje predstavlja našu percepciju nivoa zvuka.
Postoji ugrađena AGC logika i analizator spektra će pokušati smanjiti nivoe amplitude kada je u prethodnim ciklusima otkriveno više vršnih nivoa. To se radi pomoću kliznog ravnala za usporedbu tablice.
Korak 6: Rukovanje uređajem
- Kratkim pritiskom na taster u režimu prikaza prikazuje se prikaz bez tačke, jedne tačke, 2 tačke i 3 tačke.
- Dugim pritiskom ulazite u način postavljanja, a zatim dugim pritiskom rotirate kroz meni.
- Stavke menija prolaze kroz opcije „Hamming Window Option“, „Dimmer“, „Sampling / Refresh Rate“.
- U načinu rada za postavljanje 'Hamming Window', kratki pritisci prolaze kroz ciklus bez zakucavanja, udaranje 1, udaranje 2, udaranje 3, dugo pritiskanje potvrđuje postavku.
- U režimu podešavanja „Dimmer“, kratki pritisci prolaze kroz dostupne nivoe osvetljenosti od 0 do 3, dugi pritisak potvrđuje postavku.
- U načinu postavljanja 'Uzorkovanje / Brzina osvježavanja', kratki pritisci prolaze kroz raspoložive brzine osvježavanja od 0 do 7, 0 znači da nema odgode, dugi pritisak potvrđuje postavku.
- Multipleksiranje LED segmenata uključuje vremenska kašnjenja radi kompenzacije razlika u svjetlini za pojedinačne redove.
Preporučuje se:
Kako napraviti LED analizator audio audio spektra: 7 koraka (sa slikama)
Kako napraviti LED analizator audio audio spektra: LED analizator audio spektra stvara prekrasan uzorak osvjetljenja prema intenzitetu muzike. Na tržištu je dostupno mnogo DIY LED muzičkih spektra, ali ovdje ćemo napraviti LED audio spektar Analizator koji koristi NeoPixe
Kako DIY 32 Band LED analizator audio audio muzičkog spektra pomoću Arduino Nano kod kuće #arduinoproject: 8 koraka
Kako DIY 32 -pojasni LED analizator audio audio muzičkog spektra koristiti Arduino Nano kod kuće #arduinoproject: Danas ćemo kod kuće napraviti 32 -pojasni analizator audio audio muzičkog spektra kod kuće koristeći Arduino, on može istovremeno prikazivati frekvencijski spektar i svirati muziku. mora biti spojen ispred otpornika od 100 k, u protivnom buka pipa
Mod kućišta za nestandardnu matičnu ploču: 7 koraka
Mod kućišta za nestandardnu matičnu ploču: Imate li staru matičnu ploču i kućište, ali bi kućište moglo koristiti više odstupanja za pravilno postavljanje ploče? Ovo uputstvo može biti za vas. U ovom primjeru, dvostruka PII Xeon matična ploča i procesori ugrađeni su u kućište Gateway G6 - 333 (L
Neuspjeli pokušaj povezivanja konektora na matičnu ploču: 6 koraka
Neuspjeli pokušaj povezivanja konektora na matičnu ploču: Prvobitno sam (u drugom uputstvu) uspješno lemio ravni fleksibilni kabel na matičnu ploču iPod -a. Međutim, odlučio sam dodati još malo lemljenja za snagu i premostio vezu. Mislio sam da bih mogao postići istu stvar sa
Jeftina utičnica za matičnu ploču za DIY SD karticu: 8 koraka
Jeftina "uradi sam" utičnica za SD karticu: Imate li projekt koji treba sučelje za masovnu pohranu, ali nemate resurse za izradu ploče za probijanje za standardnu utičnicu? U ovom Instructable -u ćete naučiti kako napraviti utičnicu za SD karticu koja se uključuje direktno u ploču za