Python Terminal för billigt Pi Arduino anslutning (4 / 4 steg)
Steg 4: Ändra för dina egna inställningar
Innan du ändrar koden är det bäst att förstå hur det fungerar. Här är en översikt över den allmänna planen, Detaljer kan fyllas i genom att läsa koden.
Den allmänna arkitekturen kallas model view controller eller MVC. I det här programmet MyApp (i mcuterminal.py) är ansvarig för alla övergripande kontroll av beteendet program, det är platsen för huvudprogrammet, det skapar andra viktiga objekt.
Visa komponenten kallas GUI (i gui.py). Det skapar alla synliga komponenter och reläer användarindata till styrenheten.
Komponenten modell är den komponent som faktiskt gör meddelandet kallas RS232Driver (i rs232driver.py) och som GUI styrs av registeransvarige.
GUI är inte tillåtet att direkt kommunicera med modellen och vise versa. Således kan du dra ur dem från programmet och koppla in nya komponenter. Gillar inte GUI? Du kan ändra mig, eller du kunde göra en ändring och välja vilken som ska användas. Detta är ungefär som en hud för ett program. Du kan även ställa in för att köra med ingen GUI alls. RS232Driver som GUI lätt att avlägsna och ersätta i programmet, dess användning har parameteriserats i parametern objektet, så för att använda SPI istället för RS232 alla vi har att göra är att skriva ett SPI objekt och ändra värdena i parametern.
Två andra viktiga komponenter kallas Logger (i logger.py) och parametrar (i parameters.py). Styrenheten skapar en av varje, och göra dem tillgängliga för andra komponenter. Andra komponenter kan interagera med dem och använder dem respektive för loggning av händelser, och få tillgång till parametrar (de aspekter av programmet som är särskilt lätt att ändra).
Med denna bakgrund bör du vara redo att läsa och ändra koden. Det finns massor av kommentarer, även en hel del bortkommenterad felsökning kod. Frågor? Låt mig veta.
Möjlig Expansion/ändringar, dessa är de saker som jag funderar för närvarande på:
- GUI kan vara mycket trevligare, rensa upp, fixa färger, teckensnitt...
- Lägg till tydliga knappar till områdena skicka.
- Gå åtminstone vissa av parametrarna till en textfil ini.
- Lägga till andra kommunikationsprotokoll.
- Gör ansökan söka tillgängliga comm hamnarna för att hitta eventuella bifogade arduino.
- Låt användaren spara överförda och mottagna data till en fil.
- Visa tillgängliga comm portar.