Stap 3: Testen van de schets en ontwerpnotities
In deze stap die ik over enkele van de proeven en beproevingen spreken zal zal dat ik tegenkwam op de weg, en hoe ik werkte via hen, in de hoop dat het nuttig zijn. Viel vrij om naar de volgende stap als Science Content is niet uw ding :-)De eerste stap was beslissen of capacitieve sensing of resistief sensing wilt gebruiken. Resistive sensing is het aansluiten van de sensor via een weerstand aan één van de analoge pinnen doen analogRead en vergelijken met een drempel. Dit is het eenvoudigst te implementeren, maar neemt veel van kalibratie.
De theorie van capacitieve sensing is dat wanneer de omgekeerde bevooroordeeld (- de + lood en vice versa), een LED niet zal toestaan dat huidige te stromen, maar elektronen zal verzamelen aan de ene kant en laat de andere kant, effectief het opladen van een condensator. Licht valt op de LED op de frequentie die het normaal stoot zal daadwerkelijk leiden tot een smal huidige aan stroom, die lozingen van deze condensator.
Dus als we de LED 'condensator' in rekening brengen en hoe lang het duurt tellen om de kwijting door middel van een weerstand, krijgen we een ruw idee van hoeveel licht op de LED valt. Dit werkte eigenlijk als betrouwbaarder op verschillende apparaten, en zelfs werken voor fototransistoren! Aangezien we niet een nauwkeurig lumen meting doen, en de laseraanwijzer moet worden weergegeven voor een veel helderder dan ambient, kijk we maar voor een keer thresholded kwijting.
De andere belangrijk onderdeel van dit avontuur is debugging. Voor die vertrouwd zijn met de programmering van de niet-embedded systemen, is een populaire methode om toe te voegen print verklaringen op kritische punten in de code. Dit geldt ook voor ingesloten systemen, maar wanneer elke microseconde telt, de hoeveelheid tijd aan Serial.write ("x is"); Serial.writeln(x); eigenlijk heel belangrijk is, en u mag missen een heleboel gebeurtenissen in het proces. Dus onthoud altijd dat uw print verklaringen buiten kritische lussen of elk gewenst moment je verwachten een gebeurtenis. Soms knippert een LED is genoeg voor verhuren u weet je op een bepaald punt in de code.