analoge potmeter als soort schakelaar

Arduino specifieke Software
Gebruikers-avatar
Berichten: 229
Geregistreerd: 20 Jan 2013, 12:01

Re: analoge potmeter als soort schakelaar

Berichtdoor astrofrostbyte » 02 Jun 2013, 17:05

Tja tis al een redelijke lap code. is wel uit te komen als ik het zo doorloop.

De main() sorry loop() is wat lang en iets wat moeilijk te begrijpen. Ik probeer meestal functies niet langer dan een pagina/scherm te maken, dit maakt het dan wat makkelijker om functioneel gedrag er in terug te zien.
Mischien dat je het deel code voor het bepalen van de delays eruit kan isoleren en in functie(s) stoppen.

Kijk ook eens of je variabelen evt. kan groeperen door ze bv. in struct op te nemen, of gelijkaardige namen te gebruiken.
Wat ook wel te adviseren is om zo min mogelijk global variabelen te gebruiken, dit bemoeilijkt het lezen van lange code.

De main() zal als ik tijd heb nog eens doorlezen,
Gear: Arduino- Uno,Due,Ethernet,Mega2560 , OLS LogicAnalyser, TDS1002, Rigol DG1022, J-Link EDU, BusPirate

Advertisement

Berichten: 10
Geregistreerd: 31 Mei 2013, 00:26

Re: analoge potmeter als soort schakelaar

Berichtdoor mattnezz » 03 Jun 2013, 00:18

Dank voor de moeite.
Ja, de code is een beetje zoals ik werk... Ik begin ergens en loop al doende tegen problemen aan, plak stukken aan elkaar etc.
Ik zal beginnen aan het inperken van global variabelen...
Eigenlijk is een variabele die je 1 keer gebruikt niet global dus.

Functies buiten de main() of loop() ;) probeer ik nu voor het eerst, zoals de debounce, smoothing en spi naar digipots sturen. Maar als ik het goed begrijp is het beter/overzichtelijker om meer dat soort functies buiten de loop() te gooien en vanuit daar op te roepen.

Je begrijpt dat dit voor n noob behoorlijk gepuzzel is haha, maar ik zal eens een poging doen.

Bijvoorbeeld het hele stuk wat de tijdmetingen doet...
if(runCheck==true){
//... alles hiertussen
}
Hoeft maar 1 keer doorlopen te worden, lijkt me een goede kandidaat maar ik heb geen idee hoe ik het buiten de loop krijg...
Laatst gewijzigd door mattnezz op 03 Jun 2013, 00:19, in totaal 2 keer gewijzigd.

Berichten: 10
Geregistreerd: 31 Mei 2013, 00:26

Re: analoge potmeter als soort schakelaar

Berichtdoor mattnezz » 03 Jun 2013, 00:18

Dank voor de moeite.
Ja, de code is een beetje zoals ik werk... Ik beging ergens en loop al doende tegen problemen aan, plak stukken aan elkaar etc.
Ik zal beginnen aan het inperken van global variabelen...
Eigenlijk is een variabele die je 1 keer gebruikt niet global dus.

Functies buiten de main() of loop() ;) probeer ik nu voor het eerst, zoals de debounce, smoothing en spi naar digipots sturen. Maar als ik het goed begrijp is het beter/overzichtelijker om meer dat soort functies buiten de loop() te gooien en vanuit daar op te roepen.

Je begrijpt dat dit voor n noob behoorlijk gepuzzel is haha, maar ik zal eens een poging doen.

Bijvoorbeeld het hele stuk wat de tijdmetingen doet...
if(runCheck==true){
//... alles hiertussen
}
Hoeft maar 1 keer doorlopen te worden, lijkt me een goede kandidaat maar ik heb geen idee hoe ik het buiten de loop krijg...

Vorige

Terug naar Arduino software

Wie is er online?

Gebruikers in dit forum: oxiriewatizi en 32 gasten