Frequentie verlagen

*Ja ik heb andere forums gelzen, nee dit gaf mij niet het antwoord dat ik zoek.

Ik zit (alweer) met een probleem.
Arduino heeft een limitatie op de PWM pin, 36hz om precies te zijn.

Nu is voor mijn project een freqeuntie van 6-7 nodig.
er zijn een paar schakelingetjes op het internet en een forumpjes.
maar eerlijk gezegt snap ik daar de ballen van, en werkt (ik heb er 1 gebouwt op een breadbord) dit ook niet.

Kan iemand mij op weg helpen?

De ideale situatie is dat wanneer ik 80 hz wegzend vanaf de arduino. dit door een exstern circuit gaat en er een 8 uitkomt. (10/1)

ik hoop dat iemand een antwoord hierop heeft.

mvg

pp

Shiptronic

Overleden

Je kan om de xx aantal miliseconden een intrupt maken die een pin toggeld?

Wie de vraag stelt, zal met het antwoord moeten leren leven.

Hier heb ik na zitten kijken.

maar dit is niet het gene waar ik naar zoek.

een normale I/O poort op de arduino kan niet zo snel schakelen.

en de PWM pin reageert heel slecht op dit.

[Bericht gewijzigd door Henry S. op donderdag 10 maart 2016 19:29:25 (14%)

Lambiek

Special Member

Je kan om de xx aantal miliseconden een intrupt maken die een pin toggeld?

Op 10 maart 2016 09:52:45 schreef Piet potlood:
Hier heb ik na zitten kijken.

een normale I/O poort op de arduino kan niet zo snel schakelen.

dat lijkt mij stug, je kan toch wel met milliseconden werken?

De ideale situatie is dat wanneer ik 80 hz wegzend vanaf de arduino. dit door een exstern circuit gaat en er een 8 uitkomt. (10/1)

Dan haal je het signaal door een tien deler, bijv. met een 4017.

Als je haar maar goed zit, GROETEN LAMBIEK.

Je zegt dat 36Hz een limiet is. Is dat de hoogste waarde die je krijgt? De laagste? Wil je sneller? Wil je langzamer? Waarom?

Dan zeg je dat je 6 of 7 wilt hebben. Zijn dat Hz, kHz of MHz, of nog wat anders?

Met wat fantazie is die 36Hz inderdaad een ondergrens voor de laagste frequentie die de standaard arduino software aankan. Wil je langzamer dan kan het zijn dat je eea moet aanpassen.

Maar dan ga je klagen

een normale I/O poort op de arduino kan niet zo snel schakelen.

dus kennelijk wil je SNELLER?

Ik snap echt niet meer wat je wilt.

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/

als ik de 6hz wil halen op mijn speakertje, geduurde een tijd van 60miliseconden slaat de arduino sommige pulsen over.
Tenminste dat geeft mijn ossiloscoop weer.

Je zegt dat 36Hz een limiet is. Is dat de hoogste waarde die je krijgt? De laagste? Wil je sneller? Wil je langzamer? Waarom?

de 36hz is een ondergrends gegeven door arduino hardware.

Dan haal je het signaal door een tien deler, bijv. met een 4017

Heeft u hier een voorbeeld van?
Het lijkt me wel interesant om te onderzoeken, zou je hier direct een klein 8 ohm speaker mee aan kunnen stuuren?

buckfast_beekeeper

Golden Member

Ik ken de Arduino niet. Als ik me niet vergis zit daar een AVR op. De standaard frequentie van een AVR op interne clock is 8MHz gedeeld door 8. Dus 1MHz. Zet ik 1MHz als startfrequentie en 6HZ als resultaat in deze tool. Dan lijkt het best mogelijk. Met Timer0 prescaller 1024 TCCR0 |= (1 << CS00) | (1 << CS02) OCR0 = 0xA3. Foutmarge -2,45%. met Timer1 prescaller 8 TCCR1B |= (1 << CS11) en OCR1AL = 0x5161. Foutmarge +0.03%.

EDIT: Met een horlogekristal is 1Hz zeer goed haalbaar.

Van Lambiek wordt goede geuze gemaakt.
Arco

Special Member

De ideale situatie is dat wanneer ik 80 hz wegzend vanaf de arduino. dit door een exstern circuit gaat en er een 8 uitkomt. (10/1)

CD4017? Is dit trouwens niet hetzelfde topic: http://www.circuitsonline.net/forum/view/130985

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Shiptronic

Overleden

ik bedoel niet de PWM, maar een willekeurige output pin, die je bv om de 100MS toggelt, dan zou je daar toch een frequentie van 5Hz moeten krijgen?

Wie de vraag stelt, zal met het antwoord moeten leren leven.

Is dit trouwens niet hetzelfde topic

nee, dit is wel door mij aangemaakt voor de goede iplementatie van de milliseconden,

maar dit gaat puur en enkel om een hz signaal te verlagen.

ik bedoel niet de PWM, maar een willekeurige output pin,

dat nam ik ook aan, maar dan nog blijft hij sommige stapjes skippen.

Arco

Special Member

Als je 10:1 extern wilt is een CD4017 toch prima?

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com

Jazeker!

Ik heb de datasheet bekeken en ziedaar, dat is mijn oplossing!

hartelijk bedankt :)

Shiptronic

Overleden

Op 10 maart 2016 13:09:30 schreef Piet potlood:

dat nam ik ook aan, maar dan nog blijft hij sommige stapjes skippen.

Dan klopt er in de software iets niet? heb je daar een plaatje van, en de code ?

Wie de vraag stelt, zal met het antwoord moeten leren leven.
Lambiek

Special Member

Het lijkt me wel interesant om te onderzoeken, zou je hier direct een klein 8 ohm speaker mee aan kunnen stuuren?

Misschien een klein torretje er achter zetten.

Als je haar maar goed zit, GROETEN LAMBIEK.

Ahumm: 6 Hz gedurende 60 ms....... Als je een blokgolf neemt dan ben je met 6 Hz al 83 ms "op" en 83 ms "neer". In 60ms kan je net aan een enkele 16Hz cyclus vol maken.

Na dat geheel onbelangrijk detail: het lijkt me heel stug dat een AVR op 1 - 8 MHz geen 6 Hz op een pin kan uitsturen, al dan niet met interrupt of gewoon een lusje..

Zet je code hier eens neer dan?

Als je 't mij vraagt, wil je de PWM uitgang van de Arduino verkeerd gebruiken. PWM betekent Pulse Width Modulation, oftewel: puls breedte modulatie. Daarbij blijft de frequentie van het signaal altijd gelijk, maar verandert de puls/pauze tijd, ofwel de tijd dat het uitgestuurde signaalniveau hoog is.
Wat jij (de TS) wilt doen is blijkbaar de frequentie regelen van een uitgangssignaal. Daar is de PWM functionaliteit van de Arduino gewoon niet voor bedoeld.

Fan van Samsung (en repareer ook TV's). :)

Gedeeltlijk ben ik het hier met u eens. maar ik verander ook de amplitude van het signaal. en dat kan enkel op de pwm pen :)

Arco

Special Member

Er valt niks te veranderen aan de amplitude. (zonder externe hardware)

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com