Stap 2: De functie van de ARDUINO
ARDUINO VOOR HET METEN VAN DE PULSBREEDTE
De output (3) van de 555 is aangesloten op de arduino (ik gebruikte voor dit project de arduino een) op twee van haar terminals (2 en 3) die programmatisch zijn gekoppeld aan de interrupts 0 en 1 om ze te detecteren veranderingen van het spanningsniveau van de op de uitgang van de 555-terminal.
Dus de pin 2, die is gekoppeld aan de Interrupt 0 zal de stijgende-rand van de pulse uitgang detecteren en onmiddellijk stoppen (interrupt) wordt in alle activiteiten die plaatsvinden op dat moment en arduino was de code in de functie Start() dat we schreven uitgevoerd.
De code in de functie van Start() Sla gewoon de tijd geretourneerd door de functie millis() in een vluchtige (globale) variabele. Een led is ook ingeschakeld hier te geven een visuele teken dat de interrupt plaatsvond. Vervolgens de functie eindigt en doet de interrupt.
Vervolgens, wanneer de pulse uitgang van de 555 eindigt, de arduino pin 3 die is gekoppeld aan de interrupt 1 detecteert de vallende rand triggering van een onderbreking in de werking van de arduino te voeren nu de code in een andere functie die we genoemd Stop(). Net als in de functie van Start(), de code hier gewoon instellen een andere vluchtige variabele (t_final) met de waarde die wordt geretourneerd door de functie millis() en schakelt de led, markering van het einde van de pols.
De code in de lus () functie is verantwoordelijk voor het voortdurend controleren of de waarde van de variabele t_final is niet langer nul, evenement dat aan het einde van de pols gebeuren zal.
Wanneer de voorwaarde in onze als blokkeren bevestigt dat t_final effectief niet langer 0 is, de code tot de bepaling van T (de impulstijd overgaat) en daarmee de capaciteit wordt berekend.
T = T_final - T_inicial
C1 = T / (1.1 x R1)
In het schema van het circuit zien we de waarden van de gebruikte componenten.
1 Mohm voor R1 is geschikt voor condensatoren in het bereik van ongeveer 1 nF tot 1uF.
Hogere waarden van capaciteit zal leiden tot de duur van de pulsen van enkele seconden, dus in het geval van het meten van deze waarden zou het raadzaam om gebruik van een 1 kohm weerstand.