Go Down

Topic: timer probleempje  (Read 3689 times) previous topic - next topic

Smitty12

Weer bedankt voor de reacties. Hier ga ik verder mee borrelen.
Ook daar zal ik wel weer de nodig vragen hebben maar ik weet een mooie plaats om ze te stellen. ;-)

Smitty12

Dit type zou "probleemloos" en eenvoudig moeten werken op een uno board?


mp3 shield



PS en als het niet werkt, is er niets "overboard" ;-)  maar dan weet ik dat wel een kans van slagen heb.

nicoverduin

Bij mij wel...Eenvoudig is een relatief begrip..... 
Met vriendelijke groet / kindest regards
Nico Verduin
www.verelec.nl
Do not PM me for personal consultancy unless you are willing to pay for it.

Smitty12

Nico, als het jou gelukt is dan neem ik het risico ;-)
bedankt voor de reply.

Smitty12

Na de mp3 speler besteld te hebben probeer ik te bedenken hoe ik het juiste geluid kan produceren.
Stel dat na het uitrekenen een tijd van 23.15 sec op het display staat, hoe krijg ik dit dan uit de luidspreker.
De laatste decimaal mag weg dus als er uit de luidspreker 23.1 sec komt is het prima.
De tijd is altijd tussen de 20 en 30 sec.

Het idee is een aantal wav files te maken  nl :
1) van 20,21,22 ...30 erop
2) 1 wave file met "punt"
3) 10 wave files voor de getallen achter de komma.
Om deze dan samen te stellen en te laten spreken. 

Mijn eerste vraag is dit de juiste weg?

Als dit het geval is dan wordt de volgende uitdaging, hoe krijg ik 23.15 gesplitst in 23 en 1.
ik heb al lopen zoeken maar ik kan de juiste functie niet vinden in de reference.
(volgens mij heb ik ook een uitdaging met INT versus FLOAT?)
Kunnen jullie mij de juiste richting aangeven?









MAS3

#20
Nov 10, 2017, 10:09 pm Last Edit: Nov 10, 2017, 10:10 pm by MAS3
Ik heb niet in mijn hoofd zitten waar je al gedaan hebt.
Maar ik heb nog wel en opmerking of 2 over je recentste post.

Zo is drie├źntwintig punt vijftien afkappen naar 23.1 niet echt in lijn met je HiFi wensen.

En of iets een echte float is of niet, is niet heel erg interessant volgens mij.
Je kunt dezelfde waarde ook weergeven als 231, want jij weet dat je met 1 decimaal werkt.
En dan is het ineens geen float meer.
Jouw programma kan daar ook prima mee werken, maar dan moet je dat wel door je hele programma heen consequent zo doen.
Maar das wel vals spelen.

Je kunt ook iets anders doen.
Wanneer je de cijfers achter de komma weg wil hebben, dan is daar de abs() (absolute) functie.
Die geeft je de absolute waarde terug van jouw variabele.
En das altijd een integer, want vanaf de komma wordt alles gewoon weggegooid.

En je kunt ook nog een tweetal variabelen vermenigvuldigen met een slim getal.
Wanneer je dan de ene waarde van de andere aftrekt, houd je nog iets over (over het algemeen dan).

Nu mag jij lekker gaan brainstormen wat ik precies zou bedoelen, en of en hoe je dat dan kunt gebruiken.

[edit]
Oh, en of dit de juiste richting is weet ik ook niet.
Misschien stuur ik je wel het bos in.
Maar das ook een richting.
[/edit]
Have a look at "blink without delay".
Did you connect the grounds ?
Je kunt hier ook in het Nederlands terecht: http://arduino.cc/forum/index.php/board,77.0.html

Smitty12

#21
Nov 10, 2017, 10:57 pm Last Edit: Nov 10, 2017, 11:04 pm by Smitty12
Nu houd ik wel van de natuur en het bos is wel aardig

ik neem aan dat je me deze richting in wilt laten gaan.....
(is nog niet in de C++)

tijd = 23.14 sec

x= abs(tijd)    = 23  => wordt 23.wav

y = (x*10)     = 230

z = 23.14*10  = 231.4

w = abs(z)     = 231

v = w - y = 231 - 230 = 1  => wordt 1.wav



Smitty12

#22
Nov 11, 2017, 10:09 am Last Edit: Nov 11, 2017, 02:04 pm by Smitty12
Net teruggekomen uit "het bos"  :) ben ik weer op zoek naar (en dit keer geen paddesteoelen):

Ik zoek een HEEL simpel programma voor mijn mp3 shield zodat ik kan begrijpen hoe ik het programma moet integreren in mijn projectje. (van diverse zoek acties raak ik het spoor bijster). Misschien een algemeen dingetje voor het forum.

Heb ik deze libriarie vs1053-for-use-with-sd-fat nodig? of moet ik een andere gebruiken?

Deze vond ik ook maar hoe weet je nu zeker dat je de goede hebt?

Weer bedankt voor de reacties, langszaam maar zeker wordt het iets.

MAS3

Zoals gezegd, Adafruit en Sparkfun bieden veel ondersteuning.
Zeker weten dat daar ook de vs1053 onder valt, want ze gebruiken dat ding zelf ook.
Natuurlijk kan het wel zijn dat er dingen zijn die op een andere wijze werken, bijvoorbeeld omdat de verschillende fabrikanten verschillende pinnen gebruiken, maar das nou juist weer leuk om uit te zoeken.
Have a look at "blink without delay".
Did you connect the grounds ?
Je kunt hier ook in het Nederlands terecht: http://arduino.cc/forum/index.php/board,77.0.html

nicoverduin

Wat ik me kan herinneren is er gewoon een standaard layout en zijn die chinese dingen gewone replica's.
Ik heb er toen mee gepield om er een melodie te spelen met een orgel :)
Met vriendelijke groet / kindest regards
Nico Verduin
www.verelec.nl
Do not PM me for personal consultancy unless you are willing to pay for it.

Smitty12

Met MAS3 en Nico hun antwoorden,  ben ik in het bos en ben verdwaald. (dit zonder navigatie).
(en dat is absoluut niet vervelend bedoeld).
Als "zware newbie" weet ik niet hoe ik dit zou moeten aanpakken.
Ik hoef niet iets kant en klaar voorgekauwd te hebben maar nu weet ik ff niet..

nicoverduin

Er zijn nu eenmaal mensen die gelijk hard willen rennen terwijl ze eerst nog moeten leren lopen. En dat werkt niet zo. Je zult eerst moeten experimenteren met dat shield om er gevoel bij te krijgen hoe de dingen werken. Ook moet je beter naar jouw probleem kijken of de keuzes die je maakt wel haalbaar zijn.
Vragen die je jezelf kunt stellen zijn bijvoorbeeld moet ik waves achter elkaar plakken of ga ik elke 2 cijfers als een wave file maken. Denk aan "vierentwintig.wav" en bijv. "vier" + "en" + "twintig".
Het eerste levert je een stuk of 60 wave files(0-59). Het laatste slechts 19 (0-19)+4(20-30-40-50)+1 (en)=24 wave files. Of dat op die manier kan met de MP3 dat is wat je dus moet uitzoeken. En dat kan alleen door experimenteren.  
Tot nu toe laat je voorbereiding nog veel te wensen over. Die vragen ga ik (en ik vermoed anderen) en kan ik niet antwoorden. En de grap is dat dit nog eigenlijk niets te maken heeft met programmeren in C/C++ of welke taal ook. Eerst moet je jouw probleem begrijpen voordat je iets kan bouwen. Anders blijft het bij "prutsen" op goed geluk...
Dus volgens mij kun je jezelf 2 opdrachten geven:
a) leer de materialen die je gebruikt hoe ze werken
b) begrijp jouw eigen vraagstuk en ga ermee aan de slag om dit uit te werken.
Pas dan ben je klaar om die sketch te schrijven. Eerder niet lijkt mij. En zoals je al hebt gemerkt zijn er niet veel die met de MP3 zitten te prutsen.... 
Met vriendelijke groet / kindest regards
Nico Verduin
www.verelec.nl
Do not PM me for personal consultancy unless you are willing to pay for it.

Smitty12

Beste Nico,

Bedankt voor de ( positieve) kritiek want daar kan ik wel mee omgaan ;-)
Je hebt gelijk dat je schrijft dat ik de marathon probeer te lopen, terwijl ik nog niet op mijn eigen benen kan staan. Zoals ik al schreef heb ik de starterskit nog niet binnen en kan dus nog niet experimenteren
(gaat zeker gebeuren). Daarnaast heb ik geen verstand van electronica dus dat is nog een extra probleem maar wel oplosbaar.
Ik gok dat mijn project voor de wat meer ervarene programmeur , een eitje zal zijn.

Wat mijn projectje betreft ,weet ik precies wat ik wil.
Omdat ik nog geen ervaring heb,  heb ik het project in 4 delen gesplitst, nl timer, display, spraak en nog wat extra hardware.
De uitdaging is dat ik (nog) niet weet hoe dit te realiseren daar ik de programmeertaal niet machtig ben.
Zolang je niet weet wat de mogelijkheden zijn in de programmeertaal, kun je volgens mij ook geen oplossingen bedenken. Dit zal door de starterskit zeker verbeteren.

Omdat ik nog niet kan experimenteren en ik natuurlijk toch het nodige probeer voor te bereiden stel ik misschien vragen die onlogisch voorkomen.

Ik wil wel duidelijk zijn dat ik het waardeer dat jullie mijn vragen beantwoorden!
Ook hoef ik geen pas klaar antwoord zoals al eerder in dit draadje gebeurd is.
Als ik de juiste richting krijg wil ik het zeker eerst zelf proberen uit te zoeken.
Dit project zal dadelijk zeker vaak in de praktijk gebruik gaan worden.

Ik hoop dat jullie in de toekomst mijn vragen willen blijven beantwoorden.

MAS3

Quote from: Smitty12
De uitdaging is dat ik (nog) niet weet hoe dit te realiseren daar ik de programmeertaal niet machtig ben.
Zolang je niet weet wat de mogelijkheden zijn in de programmeertaal, kun je volgens mij ook geen oplossingen bedenken.
Ik snap waarom je dit zegt, maar het is een aanname van jou.
En daarom zal het je niet verbazen als ik je zeg nu dat je statement niet waar is.

Lees eens de welkomstthread hier in het Nederlandstalige deel eens door.
Daar staan al veel tips in.
Een tip die ik heel veel geef zal ik zometeen nog eens herhalen.

Maar eerst deze andere veelgegeven tip:
Probeer niet je project meteen te maken.
Ga eerst leren.
Dat is moeilijk als je je spullen nog niet hebt, snap ik.
Maar wanneer je je spullen wel hebt, ga dan eerst eens spelen.
Met de simpelste examples die je in de IDE vindt.
Aangezien de meeste Arduino producten worden uitgeleverd met de blink sketch er in (omdat dan de bootloader er ook in gezet word), is dat dus waar je eens mee moet beginnen.
Ga die eens aanpassen zodat ie net ff anders werkt, om vervolgens te kijken of dat doet wat jij ervan verwachtte (en waarom dan niet).
In de welkomstthread staat dat ik me een weekend lang uitermate vermaakt heb met alleen maar de blink sketch en een handjevol onderdelen die je zonder twijfel in je starterskit gaat terugvinden.

Dat waren al 2 tips die ik veel vaker geef.
Maar dit is de tip waar ik het eerder over had:

Je hebt het gehad over je planning.
En daarbij heb je jouw project in 4 delen gesplitst.
Maar daarmee ben je er nog bij lange na niet.
Jij noemt ze delen, ik noem het problemen.
Analyseer elk van je 4 problemen, en identificeer dan uit welke deelproblemen dat probleem bestaat.
Hierbij ga je nog niet werken aan het oplossen van dat probleem, want dat komt later.
Neem nu een deelprobleem, en identificeer daar weer de delen uit.
Als je dit vaak genoeg doet, heb je een hele rits met kleine en eenvoudig op te lossen problemen.
Wat je dan op papier (jawel, zo old school) zou moeten hebben staan, is al bijna je code uitgeschreven.
Dan alleen nog "even" vertalen naar echte code.

Dit is wat ik doe als ik (mogelijk voor mn werk) een lange autorit aan het maken ben (uiteraard alleen in mn hoofd en zonder papier).
Of als ik aan het 'niksen' ben.
Iemand zou dan kunnen denken dat ik aan het dagdromen ben, maar stiekem ben ik dan dus problemen aan het ontrafelen.
Uiteraard alleen zolang er niet een werkgerelateerd probleem ontrafeld hoeft te worden, want dat heeft dan voorrang.
Maar dat gaat dan wel op dezelfde manier.
Have a look at "blink without delay".
Did you connect the grounds ?
Je kunt hier ook in het Nederlands terecht: http://arduino.cc/forum/index.php/board,77.0.html

Go Up