Stap 4: Aanpassen voor uw eigen voorkeuren
Voor het wijzigen van de code is het best om te begrijpen hoe het werkt. Hier is een overzicht van het algemene plan, details kunnen worden ingevuld door het lezen van de code.
De algemene architectuur heet de model view controller of MVC. In dit programma Mijntoep (in mcuterminal.py) verantwoordelijk is voor alle algemene controle van het gedrag van het programma, het is de locatie van het hoofdprogramma, creëert de andere belangrijke objecten.
Het onderdeel weergave heet GUI (in gui.py). Het wordt gemaakt van alle zichtbare onderdelen en relais van de input van de gebruiker op de controller.
Het model is de component component die eigenlijk doet de mededeling het is genaamd RS232Driver (in rs232driver.py) en als de GUI wordt beheerd door de controller.
De GUI is niet toegestaan om rechtstreeks te communiceren met het model en vise versa. U kunt dus haal ze uit de toepassing en de stekker in de nieuwe onderdelen. Houd niet van de GUI? U mij konden wijzigen, of u kon maken een wijziging en kiezen welke wilt gebruiken. Dit is het soort van als een huid voor een toepassing. U kunt zelfs instellen uit te voeren met geen GUI helemaal. De RS232Driver zoals de GUI eenvoudig te verwijderen en te vervangen in het programma, het gebruik ervan heeft met parameters op het Parameter-object, dus gebruik van SPI in plaats van RS232 alle die wij moeten doen is schrijven een SPI-object en wijzigt u de waarden in de Parameter.
Twee andere belangrijke componenten heten Logger (in logger.py) en Parameters (in parameters.py). De controller maakt één van elk, en stellen deze ter beschikking in de overige onderdelen. De andere onderdelen kunnen communiceren met hen, en hanteert ze respectievelijk voor vastleggen van gebeurtenissen, en het krijgen van toegang tot parameters (die aspecten van de toepassing die bijzonder gemakkelijk te wijzigen).
Met deze achtergrond moet u klaar zijn om te lezen en wijzigen van de code. Er zijn veel van de opmerkingen, ook een behoorlijke hoeveelheid commentaar uit debugging code. Hebt u vragen? Laat het me weten.
Eventuele uitbreiding/wijzigingen, dit zijn de dingen die ik ben op dit moment te denken over:
- De GUI kon worden veel mooier, het schoon te maken, kleuren, lettertypen oplossen...
- Duidelijke knoppen toevoegen aan de gebieden verzenden.
- Verplaats ten minste enkele van de parameters voor een ini-bestand van de tekst.
- Voeg andere communicatieprotocollen.
- De toepassing zoekt van de beschikbare comm-poorten om te zoeken naar eventuele bijgevoegde arduino maken.
- Laat de gebruiker de verzonden en ontvangen gegevens in een bestand opslaan.
- Beschikbare comm vertoningshavens.