BPM-generator med skjerm?

Prøver å finne ut hvordan du kan designe dette med anstendig presisjon, men har problemer med å få dette i gang. Jeg har jobbet med 555 «s før, men ikke for presis telling som kan modifiseres trinnvis.

Jeg prøver å finne på et 5 volt system som nøyaktig pulserer en utgang på + 5v som er målt og vises i pulser per minutt, eller slag per minutt, mellom 60 og 240. BPM bør justeres med to øyeblikkelige knapper som vil tråkke timeren +1 og -1. Det ville også være flott om det også kunne være et sekund sett med knapper for trinn +10 og -10.

Bruker du en 555-timer på feil måte om dette? Er det noe mer presist jeg kan bruke for å referere til porten? Er det allerede en IC der ute som kan gjøre dette alene og gjøre en sammenligning for å beregne matematikken?

Beklager at jeg ikke har lagt ut det jeg har så langt. Jeg er på versjon 80-noe på brødbordet mitt og ingenting har fungert nøyaktig så langt. Jeg vil også holde meg borte fra å måtte programmere rom og holde meg til diskrete IC-er. Igjen, jeg vil ikke programmere sjetonger.

Jeg tenker at det jeg er etter kan være en funksjonsgenerator med en frekvensmåler, men jeg vet ikke om det er den beste måten å gå.

Kommentarer

  • 555s og nøyaktighet blandes ikke. Dette passer mye bedre for en mikrokontroller (Arduino osv.) Med en krystalloscillator.
  • @BrianDrummond Jeg ‘ Jeg prøver å holde meg borte fra Adruino og holde ting enkelt og rimelig skjønt …
  • Jeg synes at du har en forferdelig misforståelse om et MCU-basert design. Det er mange valg av MCU-komponenter som gir enkelhet, lave kostnader og presisjon du søker etter. En diskret IC-design vil være langt mer komplisert i sammenligning, spesielt når du tar med knappene og displayet. MCU kan gjøre alt med letthet. En siste tanke er at når du først har oppnådd den MCU-baserte designen, vil du aldri se tilbake på å prøve å gjøre 1970 ‘ s eller 1980 ‘ s stildesign for denne typen prosjekter.
  • @MichaelKaras Det er også noe nytt som jeg ‘ ikke er sikker på at jeg vil komme inn på. For meg får transistorer og vakuumrør ting til å gjøre lol IC ‘ s er også bra, men fortsatt nytt for meg. Men MCU ‘ s, jeg vet ikke ‘ ikke engang hvor jeg skal begynne der, og jeg vet ikke ‘ t ønsker å komme inn i programmeringsbrikker …
  • Hvor mye av denne funksjonaliteten har du på brødbordet for versjon 80?

Svar

Hvis du vil implementere noe uten å bruke noen programmerbare deler utover en tilpasset frekvensoscillator, bør det være mulig å bygge en krets som tar en 3-sifret BCD-frekvens og sender ut et signal med så mange slag per minutt ved hjelp av en oscillator pluss fem hyllebrikker. Mat en 1.092.267Hz oscillator inn i en CD4060 for å skalere den ned med en faktor på 16 (DIP-pakket oscillatorer på Digi-Key har en minimumshastighet på 1MHz). Mat det 68 266,7 Hz signalet inn i en kaskadet sekvens av tre CD4527-brikker satt opp for «ADD» -modus for å gi en utgang på (1-999) / 4096 bpm, og mat utgangen av den til en CD4040 for å få ønsket utgangshastighet. så vel som forskjellige kraft-av-to multipler og submultipler av det. Høyere trykk på den første CD4060 kan brukes til å gi forskjellige kraft-av-to-multipler på 66,7Hz [kanskje brukbar som «pipetoner».

Hvis du har tre BCD-tommelhjul, kan du bare trenge seks viktigste elektroniske deler, alle DIP; antall på én pris på Digikey vil være:

3x CD4527BE -- $0.80ea ($2.40 total) 2x CD4060BE -- $0.56ea ($1.12 total) oscillator -- $3.02ea ($3.02 total) $6.54 total 

Montering skal være ganske grei på 0,1 «perfboard, siden de eneste sammenkoblingene annet enn strøm og bakken ville være oscillatoren utgang som mater den første CD4060, utgangen fra den som mater alle tre CD4527, hver av de to første CD4527 som mater to signaler til den neste, og den siste CD4527 som mater ett signal til den siste CD4060.

Kommentarer

  • Ah ja! Nå snakker du ‘ språket mitt 🙂 Dette er det perfekte startpunktet jeg trengte! Enkel maskinvare og ikke rotet med noen programmering. Takk!
  • Hvis du vil unngå til og med en programmerbar oscillatorbrikke og gjøre alt med ‘ classic ‘ CMOS-deler kan du bruke en 3,2768 MHz krystall og dele med 3, ved å bruke f.eks. en 4018 og en 4011, for å produsere 1.092267 MHz-klokken. bør du prøve å gjøre den samme jobben med en mikrokontroller og bestemme hva som var enklere.
  • @nekomatic: Jeg liker ideen om å bruke 3.2768Mhz-krystallet med en divisjon av tolv (jeg tror det ville være tilstrekkelig for å få antall slag per minutt i rekkevidde for 4060; Jeg synes det er rart at det er 14-biters og 24-biters tellere med de øvre bitene tilgjengelig, men ingenting jeg kunne se med f.eks.bit 18-20 tilgjengelig). Så samme antall sjetonger, men ingen tilpasset oscillator. Ikke sikker på hvordan en 4011 ville passe inn, siden jeg bare ser syv-segment mønstre tilgjengelig fra det. BTW, en annen tilnærming som kan være lærerik hvis man hadde en EPROM-programmerer tilgjengelig, men ikke en for en mikrokontroller …
  • … ville være å bygge en skiftregisterbasert statsmaskin. Jeg ‘ er ikke sikker på hvor stor den trenger å være for det angitte formålet, men slike ting kan være ganske kraftige. Til slutt er en annen interessant observasjon at COSMAC-mikroprosessoren fra 1970-tallet hadde nok oppstartsstropplogikk som det var mulig å bruke i en ROM-fri konfigurasjon hvis man gikk inn i et program ved hjelp av IIRC ti brytere, åtte lysdioder og en knapp. Det kan få en langt nok til å ha noe som kan programmere en moderne parallell EEPROM-brikke.
  • @supercat 4018 databladet ti.com/lit/ds/ symlink / cd4018b.pdf sier at det kreves ytterligere 4011 for å dele med et oddetall, og jeg siterte det ordrett – hvis du ser nærmere på, det du faktisk trenger er en AND-funksjon som du kan implementere med flere andre mulige deler , eller (sannsynligvis) to dioder og en motstand mot Vdd.

Svar

Dette kan lett gjøres med en mikrokontroller. 240 BPM er 4Hz. Ved å bruke en mikrokontroller med timerutstyr vil det være enkelt å få nøyaktighet i området +/- 0,01%.

Foreslå en mikrokontroller som PIC eller AVR eller MSP430 med en liten skjerm, knapper. En LCD-skjerm kan brukes til å spare strøm, og det er mikroer med LCD-kontrollere om bord. Kostnad og krets kompleksitet ville være veldig lav.

Du kan prototype dette med noe som en Arduino.

Mens du kunne bruke en 555 og feste en frekvens teller til den (og justere knotten når den kjører av frekvensen), ville frekvens telleren best implementeres med en mikro og dermed er det lettere å bare syntetisere frekvensen du ønsker riktig i utgangspunktet.

Du kan finne LCD-moduler med åpen kildekode for å vise frekvensteller design basert på PIC16F628, for eksempel, men de er sannsynligvis ikke direkte brukbar for så lave frekvenser. For å få 1 BPM-oppløsning med en enkel frekvensteller, krever det 1 minutts portetid, så periodetelling og matematikk ville være en bedre tilnærming – faktisk vanskeligere enn å generere en angitt frekvens.

Svar

Som de andre har sagt, er en PIC eller Arduino veien å gå, men hvis du er fast bestemt på å unngå programmering …

Du kan vurdere å bruke CMOS-sjetonger med en høyfrekvent oscillator med en krystall for stabilitet. Du vil da bruke en motbrikke til å telle pulser og gi nåværende telling på utgangspinnene. Disse ville bli matet til noen logikk for å gi en utgangspuls ved et visst antall og tilbakestille telleren.

Ved siden av dette trenger du noen andre tellere for å sette tilbakestillingspunktet for sammenligning. Dessverre er det her ting blir rotete Hvis du gjerne teller 100, 200, 300, 400 osv., Kan det være mulig å gjøre pulser, men problemet er at du vil spesifisere slag per minutt, så du må beregne 1 / BPM for å gi deg teller til og med BPM trinn.

Tenk om programmeringen. Mikroer har hatt det bra den siste tiden. Jeg tror de kommer til å fange opp!

Kommentarer

  • Hvis man kan bruke en tilpasset oscillatorfrekvens, jeg tror ikke ‘ t ting fungerer for vanskelig for å konvertere en desimal BPM-verdi til frekvens ved bruk av CMOS fra hyllen. Selv å bruke en kjedelig frekvens på 1,00 MHz ville ikke ‘ ikke være for dårlig, selv om det ville være nødvendig å ha en delerkjede som kunne dele med 60000 (dvs. 240×250). Kom faktisk til å tenke på det, det kan være mulig i to sjetonger, noe som gir de samme delene som min andre design, selv om jeg tror at det å ha kraften til to submultipler kan være nyttig og to-brikken dele på -60000 ville ikke ‘ t oppnå tat.
  • Kanskje, men problemet er at hver gang du trykker på + eller – knappen, må du beregne en ny skillelinje og det ‘ er en gjensidig funksjon (1 / BPM). f.eks. for din 1 MHz hovedklokke vil antall tellinger være – 60 BPM – > 1.000.000 pulser; 61 BPM – > 983,606,6 pulser; 62 BPM – > 968,741,9 pulser. Å få enda en-BPM-trinn vil være veldig komplisert, mens det ‘ er en enkel beregning i en mikro.
  • Ved å bruke multiplikatorbrikker med tre desimalfrekvenser vil det være mulig for å ta en 12-sifret BCD-verdi og gi en utgang ved et multiplum av ønsket hastighet, som deretter kan skaleres ned ved hjelp av en fast skillelinje. Ingen grunn til å generere noen form for gjensidig.Å bruke opp-ned-knapper og tellere for å stille hastigheten i stedet for tommelhjul ville kreve mer kretsløp, men jeg vet ikke ‘ hvor fleksibelt dette kravet er.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *