Sisällysluettelo:

Mikro-ohjainpohjainen metronomi: 5 vaihetta
Mikro-ohjainpohjainen metronomi: 5 vaihetta

Video: Mikro-ohjainpohjainen metronomi: 5 vaihetta

Video: Mikro-ohjainpohjainen metronomi: 5 vaihetta
Video: #5 Метроном в Cubase 2024, Heinäkuu
Anonim
Image
Image

Metronomi on ajoituslaite, jota muusikot käyttävät seuratakseen kappaleiden lyöntejä ja kehittääkseen ajoitustunnetta aloittelijoiden keskuudessa, jotka oppivat uutta soitinta. Se auttaa ylläpitämään rytmitajua, joka on ratkaisevaa musiikissa.

Tätä täällä rakennettua metronomia voidaan käyttää iskujen määrää baarissa ja lyöntejä minuutissa. Kun nämä asetustiedot on syötetty, se piippaa tietojen mukaisesti ja asianmukaisen valaistuksen avulla LED -valojen avulla. Asennustiedot näytetään nestekidenäytössä.

Vaihe 1: Tarvittavat komponentit:

·

  • Atmega8A mikrokontrolleri
  • · 16*2 LCD -näyttö
  • · Pietsosummeri
  • · LEDit (vihreä, punainen)
  • · Vastukset (220e, 330e, 1k, 5.6k)
  • · Painikkeet (2* lukkiutumaton, 1* lukitus)
  • · 3 V: n CR2032 -nappiparisto (*2)
  • Kolikon akun pidike (*2)
  • · 6pin Relimate (polarisoitu) -liitin

Vaihe 2: Piirin tekeminen

Tee piiriliitännät kuvan osoittamalla tavalla veroboardilla ja juota liitännät oikein

Vaihe 3: Metronomin ominaisuudet

Metronomin käyttöliittymä on pääasiassa lcd -näytön käytössä. Sen yläpuolella on 8A -mikrokontrolleri, joka on sijoitettu keskelle LED -valojen ja summerin oikealla puolella. Kolme kytkintä ja Relimate -liitin on sijoitettu yläosaan.

Koko projekti saa virtansa vain kahdesta nappiparistosta (sarjassa @6 V 220 mAh), joiden arvioitu käyttöaika on 20 päivästä 1 kuukauteen (ei jatkuvasti). Siksi se on kohtalaisen virransäästöinen ja sen virrankulutus on 3-5 mA.

Itselukittuva kytkin on vasemmalla ja on ON/OFF -painike. Keskellä oleva painike on Setup -painike ja oikealla olevaa painiketta käytetään lyönnin ja lyönnin arvojen muuttamiseen (baaria kohden).

Kun ON/OFF -kytkintä painetaan, LCD -näyttö kytkeytyy päälle ja näyttää iskujen arvon baarissa. Se odottaa 3 sekuntia, kunnes käyttäjä muuttaa arvoa, jonka jälkeen se ottaa tuloksena olevan arvon syötteeksi. Tämä arvo vaihtelee välillä 1/4, 2/4, 3/4, 4/4.

Sitten se näyttää lyöntejä minuutissa (bpm) ja odottaa jälleen 3 sekuntia, kunnes käyttäjä muuttaa arvoa, jonka jälkeen se asettaa tietyn arvon. Tämä 3 sekunnin odotusaika kalibroidaan sen jälkeen, kun käyttäjä on muuttanut arvoa. Bpm -arvot voivat vaihdella välillä 30 - 240. Painamalla Setup -painiketta bpm -asennuksen aikana sen arvoksi palautetaan 30 bpm, mikä vähentää painikkeiden napsautusten määrää. Bpm -arvot ovat viisinkertaisia.

Kun asetukset on tehty, LCD -taustavalo sammuu akun säästämiseksi. Äänimerkki piippaa kerran jokaisesta lyönnistä ja merkkivalot vilkkuvat vuorotellen jokaisen lyönnin kohdalla. Jos haluat muuttaa arvoja, paina Setup -painiketta. Kun tämä tehdään, LCD -taustavalo syttyy ja lyönnikehote tulee näkyviin kuten edellä mainittiin samalla tavalla myöhemmin.

Atmega8A -mikrokontrolleri koostuu 500 tavusta EEPROM -järjestelmästä, mikä tarkoittaa, että kaikki syötetyt lyönti- ja bpm -arvot pysyvät tallennettuina myös metronomin sammuttamisen jälkeen. Näin ollen sen käynnistäminen uudelleen saa sen jatkumaan samoilla tiedoilla kuin aiemmin.

Relimate -liitin on itse asiassa SPI -otsikko, jota voidaan käyttää kahteen tarkoitukseen. Sitä voidaan käyttää Atmega8A -mikrokontrollerin uudelleenohjelmointiin sen laiteohjelmiston päivittämiseksi ja uusien ominaisuuksien lisäämiseksi metronomiin. Toiseksi, ulkoista virtalähdettä voidaan käyttää myös metronomin virtalähteeksi hardcore -käyttäjille. Mutta tämä virtalähde ei saa olla suurempi kuin 5,5 volttia ja se ohittaa ON/OFF -kytkimen. Turvallisuussyistä tämän kytkimen TÄYTYY olla pois päältä, jotta ulkoinen virtalähde ei aiheuta oikosulkua sisäänrakennettujen akkujen kanssa.

Vaihe 4: Kuvaus

Tämä projekti on tehty Atmel Atmega8A -mikro -ohjaimella, joka on ohjelmoitu Arduino IDE: n kautta Internet -palveluntarjoajan ohjelmoijana käytettävän Arduino Uno/Mega/Nanon kautta.

Tämä mikro -ohjain on Atmel Atmega328p: n vähäisempi versio, jota käytetään laajasti Arduino Unossa. Atmega8A sisältää 8 kt ohjelmoitavaa muistia ja 1 kt RAM -muistia. Se on 8 -bittinen mikro -ohjain, joka toimii samalla taajuudella kuin 328p eli 16 MHz.

Tässä projektissa, koska virrankulutus on tärkeä näkökohta, kellotaajuutta on pienennetty ja käytetään sisäistä 1 Mhz: n oskillaattoria. Tämä vähentää huomattavasti nykyistä tarvetta noin 3,5 mA: een 3,3 V: n ja 5 mA: n 4,5 V: n jännitteeseen.

Arduino IDE: llä ei ole mahdollisuutta ohjelmoida tätä mikro -ohjainta. Näin ollen”Minicore” -paketti (laajennus) asennettiin ajamaan 8A: ta sisäisellä oskillaattorillaan käyttäen Optiboot -käynnistyslatainta. Huomattiin, että projektin tehontarve kasvoi jännitteen kasvaessa. Optimaalisen tehonkäytön vuoksi mikrokontrolleri oli asetettu toimimaan 1 MHz: n taajuudella yhdellä 3 V: n kolikkoakulla, joka vetää vain 3,5 mA. Mutta havaittiin, että lcd ei toiminut kunnolla niin pienellä jännitteellä. Siksi päätöstä käyttää kahta kolikkoakkua sarjassa sovellettiin jännitteen nostamiseen 6 V. Mutta tämä tarkoitti, että nykyinen kulutus nousi 15 mA: ksi, mikä oli valtava haittapuoli, koska akun käyttöikä heikkeni. Lisäksi se ylitti 8A -mikrokontrollerin turvallisen jänniterajan 5,5 V.

Näin ollen 330 ohmin vastus kytkettiin sarjaan 6 V: n virtalähteen kanssa päästäkseen eroon tästä ongelmasta. Vastus aiheuttaa pohjimmiltaan jännitehäviön itsessään alentamaan jännitetasoa 5,5 V: n sisällä mikrokontrollerin turvalliseksi ajamiseksi. Lisäksi arvo 330 valittiin ottamalla huomioon eri tekijät:

  • · Tavoitteena oli käyttää 8A: ta mahdollisimman alhaisella jännitteellä virran säästämiseksi.
  • · Havaittiin, että LCD -näyttö lakkasi toimimasta alle 3,2 V: n, vaikka mikrokontrolleri toimi edelleen
  • · Tämä arvo 330 varmistaa, että jännitehäviöt äärimmäisyyksissä ovat täsmälleen tarkkoja, jotta voit käyttää kolikkoakkuja täysimääräisesti.
  • · Kun kolikkokennot olivat huipussaan, jännite oli noin 6,3 V, ja 8A: n tehollinen jännite oli 4,6 - 4,7 V (@ 5 mA). Ja kun paristot olivat melkein kuivuneet, jännite oli noin 4 V 8A: n kanssa ja LCD vastaanotti juuri tarpeeksi jännitettä eli 3,2 V toimimaan oikein. (@3,5 mA)
  • · Paristojen 4v -tason alapuolella ne olivat käytännössä hyödyttömiä ilman, että mehua jätettiin virtaamaan. Jännitehäviö vastuksessa vaihtelee koko ajan, koska 8A -mikrokontrollerin ja LCD: n virrankulutus pienenee pienentyneellä jännitteellä, mikä olennaisesti auttaa pidentämään akun käyttöikää.

16*2 LCD -näyttö ohjelmoitiin Arduino IDE: n sisäänrakennetun LiquidCrystal -kirjaston avulla. Se käyttää 6 datanappia 8A -mikrokontrollerista. Lisäksi sen kirkkautta ja kontrastia hallittiin kahdella datanastalla. Tämä tehtiin siten, ettei käytetty ylimääräistä komponenttia eli potentiometriä. Sen sijaan datanastan D9 PWM -toimintoa käytettiin näytön kontrastin säätämiseen. Myös lcd -taustavalon oli sammuttava, kun sitä ei tarvita, joten tämä ei olisi ollut mahdollista ilman datanapin käyttöä. 220 ohmin vastusta käytettiin taustavalon LEDin virran rajoittamiseen.

Summeri ja LEDit liitettiin myös 8A: n datanastakoihin (yksi kullekin). 5,6 k ohmin vastusta käytettiin rajoittamaan punaisen LEDin virtaa, kun taas 1 k ohmia käytettiin vihreään. Vastusarvot on valittu hankkimalla makea kohta kirkkauden ja virrankulutuksen välillä.

PÄÄLLE/POIS -painiketta ei ole kytketty datanappiin, ja se on yksinkertaisesti kytkin, joka vaihtaa projektin. Yksi sen liittimistä on kytketty 330 ohmin vastukseen, kun taas toinen liitetään LCD: n ja 8A: n Vcc -nastoihin. Kaksi muuta painiketta on kytketty datanappeihin, jotka on vedetty sisäisesti syöttöjännitteeseen ohjelmiston kautta. Tämä on tarpeen kytkinten toiminnalle.

Lisäksi datanappi, johon Setup -painike muodostaa yhteyden, on laitteiston keskeytystappi. Sen keskeytyspalvelurutiini (ISR) aktivoidaan Arduino IDE: ssä. Tämä tarkoittaa sitä, että aina kun käyttäjä haluaa suorittaa asetusvalikon, 8A keskeyttää nykyisen toimintansa metronomina ja suorittaa ISR: n, joka aktivoi periaatteessa asetusvalikon. Muuten käyttäjä ei pääse Setup -valikkoon.

Edellä mainittu EEPROM -vaihtoehto varmistaa, että syötetyt tiedot säilyvät muistissa myös sen jälkeen, kun kortti on sammutettu. Ja SPI -otsikko sisältää 6 nastaa - Vcc, Gnd, MOSI, MISO, SCK, RST. Tämä on osa SPI -protokollaa, ja kuten aiemmin mainittiin, ISP -ohjelmoijaa voidaan käyttää 8A: n uudelleen ohjelmointiin uusien ominaisuuksien tai muun lisäämiseksi. Vcc -nasta on eristetty akun positiivisesta navasta, ja siksi Metronome tarjoaa mahdollisuuden käyttää ulkoista virtalähdettä pitäen mielessä edellä mainitut rajoitukset.

Koko projekti rakennettiin veroboardiin juottamalla yksittäiset komponentit ja asianmukaiset liitännät piirikaavion mukaisesti.

Suositeltava: