Mäta SMD kondensatorer på Arduino (4 / 6 steg)
Steg 4: Sista förbättringar
Sedan jag var ganska nöjd med algoritmen mätning bestämde jag mig att slutföra skissen förbättring. Framför allt, jag ville ha det för att kunna arbeta med både stora och små Rc motstånd och växla mellan dem automatiskt beroende på värdet av kondensatorn kontrolleras, att undvika onödig omlastning av skiss. Andra ändringar är automatisk herrelösa kapacitans justering för både lägen, större styrelse installationsalternativ (pin valet, förklaras i nästa steg) och en lättläst display.
Innan jag får koden skulle jag vilja föreslå att du får en bra seriell övervaka program, om du inte redan. De närvarande i IDEs (Arduino och UECIDE) är ganska primitiva. Arduino en kan inte Visa CR (vagnretur) ordentligt och UECIDE känner igen inte tabulering; både ASCII-symboler finns i min skiss. Jag använder RealTerm, men du kanske föredrar något annat. Om du får RealTerm, se till att välja Ansi i fliken Visa som. också använda knappen Öppna på fliken Port för att vända port input på och av (kan användas som en återställning också). Om du vill få behandlingen i en lista, inte på samma rad, byta Display som tillbaka till ascii. Om du vill hålla sig till Arduino/UECIDE seriell monitor, du kan bara kommentar/avkommentera ett par rader i den definierar Inställningar-sektionen av skiss.
Den nya styrelse setup är över (hoppas jag inte strula till det) och koden är längst ner i detta steg, eftersom det är omöjligt att inkludera det ordentligt i en instructable.
Försök att göra anslutningar så kort som möjligt för att minimera herrelösa kapacitans; följer inte Fritzing scheman till punkt och pricka, det har dragit detta sätt bara för att Fritzing inte kan pressa motstånd i intilliggande rader. Men du kan.
Denna skiss tar lite tid att starta upp: "herrelösa kapacitans" beräknas för både Rc motstånd, sedan det testar jitter på den stora en. Detta steg behövs för att se till att justeringen var korrekt. om jag ser att jitter lutar för mycket till – eller + sida, jag bara starta om Arduino (jag försökte denna jitter i genomsnitt och inkludera det i justeringen pF men gillade inte resultatet). Det är möjligt att inaktivera nF eller pF läge om det behövs av jordning motsvarande stift (11 och 12 som standard). Detta kan göras både innan du startar upp och arbetar enheten (du kanske vill ansluta vissa växlar). Det kan vara nödvändigt när man mäter vissa mycket små mössor, som 15pF eller mindre, som programmet kommer att överväga deras värde obetydligt i normalt läge. Automatiska övergången från nF (standard) läge till pF sker inte omedelbart att undvika fel medan du lägger en kondensator på ett test-säng (vissa slumpmässiga resultat skapas i denna process).
Först är 60 rader i koden ett "definierar inställningen" avsnitt som enkelt kan ändras enligt din layout. Förhoppningsvis, det är nog att förstå arbetet. Test spänning stift (de tillhandahåller 5V för att ladda kondensatorn via Rc motstånd) är begränsad till en av de två kombinationerna: stift 9 och 10 eller stift 3 och 4. Anledningen till dessa två uppsättningar kommer att förklaras senare. Om du behöver använda helt olika stift måste att leka med port manipulation makro VPIN_HIGH (eller ens ignorera det helt och skriva något annat).