Leuk met de vergadering van de PIC - aflevering 18 (5 / 5 stap)

Stap 5: Software


Hieronder vindt u de link van de software. Terwijl het wordt gericht voor de 16F688, is het gemakkelijk ported aan andere versies van de PIC. Zorg ervoor dat u kiest een die de mogelijkheid van asynchrone seriële poort heeft. U zult ook moeten veranderen de regel waarmee de PIC-versie (lijst =) en het INCLUDE-bestand, maar die zijn intuïtieve veranderingen. De __CONFIG lijn wellicht ook tweaken alleen maar omdat een of twee van de gebruikte etiketten zijn anders gespeld in sommige van de INCLUDE-bestanden.

De software bootst in wezen de opdrachten die wij handmatig uit het Eindprogramma gezonden. Op de juiste plaatsen wacht het op het verwachte responsen van de ESP8266 alvorens verdere opdrachten. De opdrachten verzonden en de reacties verwacht wellicht wijzigen als de opdracht AT set in nieuwere versies van de ESP8266 wordt bijgewerkt. Bij het verzenden van de opdracht snaren en de dummy boodschap dat de PIC gebruikt indirecte adressering van RAM-locaties in banken 0 en 1. De code voor het initialiseren van de geheugenlocaties is gelegen aan het einde van de aanbieding. Helaas, deze oudere foto's zijn beperkt in hun indirecte adresseringsmogelijkheden zodat we niet enkel de snaren in Flash-geheugen insluiten zoals we voor de grafische weergave van de LCD in aflevering 13 deden. Dat project gebruikt een nieuwere 16F1847 PIC en het zou makkelijk genoeg naar de haven van dit programma aan dat nieuwere PIC als je zo geneigd zijn.

Om het gebruik van een gemeenschappelijk routine voor het verzenden van de snaren we konden hebben beide een lengte van de tekenreeks doorgegeven aan de routine of gewoon een "einde-van-string"-teken toevoegen aan elke tekenreeks. De tweede optie is wat ik ervoor gekozen en ter vereenvoudiging van het verder gebruikte ik de numerieke waarde 0. Waarmee de code voor het laden van de volgende waarde en vervolgens controleren om te zien als het laden veroorzaakt de vlag van de nul moet worden ingesteld in de Status registreren. De lengte van de tekenreeks gedefinieerd omvatten ruimte voor een regelterugloop en een regelinvoer voor elk op de opdracht en de einde-van-tekenreeks-id voor alle uitgangen. Merk op dat de gegevens die worden verzonden na het versturen van de CIPSEND opdracht niet hoeft een regelterugloop of regelinvoer.

Het is de moeite waard om op te merken dat de ESP8266 stuurt terug een heleboel gegevens die we echt niet schelen. Vanwege dat, gelet de seriële ontvangen code als een interrupt handler niet zou een goede manier om te gaan. Het probleem is echter dat het gewoon polling voor reacties zal leiden tot de ontvanger buffer overflow. Dat is de reden waarom de "Overflow"-handler in de code is erg belangrijk. Het staat de PIC gewoon ruimen de overloop op haar gemak en wacht u tot het verwachte responsen. In voorgaande aanbiedingen waar ik had niet verwacht overflows dat gebruikte ik de methode beschreven in de data sheet voor uitschakelen/inschakelen van de seriële poort. Dat werkte niet goed in dit programma en ik vermoed op had iets te maken met het feit dat de zender kan niet zijn voltooid voordat de overflow werd behandeld. Vanwege dat ik veranderde de tweede methode van de clearing van de vlag van de overloop waarin alleen de seriële ontvanger uitgeschakeld/ingeschakeld is.

Het het schermschot van de PIC berichten van het programma terminal en naar de webpagina die wordt weergegeven boven. Merk op dat de "Hello World"-bericht verzonden is op twee lijnen. Dat komt omdat het bericht heeft een opdracht HTML opgenomen (< br >) die een nieuwe regel doet. Dat is belangrijk op te merken, omdat de meeste elke HTML-opdracht opgenomen worden kan in wat u naar de webpagina verzendt. Terwijl het bericht in dit voorbeeld statisch is, kon u het dynamische aan uw behoeften. Gewoon bellen naar uw eigen bericht maken van routine in de routine van de "Send_Data". Zoals vermeld in de sectie van de opening kunt u lezen een temperatuursensor, de waarde te converteren naar ASCII, en vervolgens output de resultaten wanneer de ESP8266 een webpagina ontvangt verbinding verzoek. Voor toepassingen zoals die zorgt voor een vernieuwing van de webpagina de PIC voor het verzenden van nieuwe gegevens, zodat u niet hoeft te sluiten en opnieuw op de webpagina.

Nou, dat is het voor aflevering 18 van "Fun met PIC vergadering". Stay tuned voor meer afleveringen.

Gerelateerde Artikelen

Leuk met de vergadering van de PIC - aflevering 4

Leuk met de vergadering van de PIC - aflevering 4

Zoals ik in aflevering 3, kocht ik een kleine verscheidenheid van modules voor interfacing naar foto's. Een daarvan is een Bluetooth-Module. In al die jaren dat ik over Bluetooth had geweten, had ik nooit echt het verhaal achter de naam uitgecheckt.
Leuk met de vergadering van de PIC - aflevering 13

Leuk met de vergadering van de PIC - aflevering 13

Een paar maanden geleden overwoog ik maken een capaciteit meter met behulp van de PIC. Ik deed wat onderzoek op het web en verschillende ontwerpen uitgecheckt. Dan maakte ik de fout van het controleren van eBay om te zien hoe veel zou kosten. De vers
Leuk met de vergadering van de PIC - aflevering 22

Leuk met de vergadering van de PIC - aflevering 22

De gemeenschappelijke zeggen is dat "noodzaak de moeder van uitvinding is". In werkelijkheid zijn er echter veel "mothers" van uitvinding. Mijn favoriet is "luiheid" maar soms dingen uitgevonden krijgt, alleen omdat het een l
Leuk met de vergadering van de PIC - aflevering 21

Leuk met de vergadering van de PIC - aflevering 21

Ik ben niet een wereldreiziger, maar ik heb al een aantal plaatsen die radicaal in temperatuur en vochtigheid verschillen. Me niet schelen wat iemand zegt, "droge hitte" betekent niets als de thermometer is boven de 110 graden. Evenzo is-40 grad
Leuk met de vergadering van de PIC - aflevering 1

Leuk met de vergadering van de PIC - aflevering 1

Terug in de olden dagen, wanneer mannen waren mannen en diskettes waren enorm, we geprogrammeerd de eerste microprocessor in assembler - en wij graag gezien dat die manier. Nu dat ik met pensioen ben besloten heb ik om opnieuw die dagen van yore en s
Leuk met de vergadering van de PIC - aflevering 16

Leuk met de vergadering van de PIC - aflevering 16

Tot nu toe heb ik verzette toe te voegen aan de miljoenen van "Een LED knipperen" projecten die op het web. Dat wil niet zeggen dat ik eigenlijk niet maken een project "Knipperen van een LED" toen ik voor het eerst begonnen te rommelen
Leuk met de vergadering van de PIC - aflevering 17

Leuk met de vergadering van de PIC - aflevering 17

Terug in de slechte oude dagen had ieder telefoonbedrijf een eigen interface en vaak verschillende interfaces voor verschillende telefoons in hun productlijn. Deze dagen, maar bijna elke telefoon een USB-interface gebruikt, net als veel andere appara
Leuk met de vergadering van de PIC - aflevering 8

Leuk met de vergadering van de PIC - aflevering 8

Ik heb enkele interessante temperatuurveranderingen meegemaakt in mijn leven met inbegrip van slechts een paar jaar geleden waar wij Stel een recordhoogte eendaagse en stel vervolgens een recordminimum de volgende dag. De meest interessante ervoer ik
Leuk met de vergadering van de PIC - aflevering 12

Leuk met de vergadering van de PIC - aflevering 12

OK, dus ik ben een van die mensen die blij zijn als ik eindelijk iets werken, maar het gnaws bij me als ik niet volledig van de details begrijpen van waarom het werkt. Dit is het geval met deze aflevering. De achtergrond is dat ik ben bezig met een k
Leuk met de vergadering van de PIC - aflevering 14

Leuk met de vergadering van de PIC - aflevering 14

Zoals ik in een vorige aflevering, ik vrijwilliger bij een non-profit recyclingcentrum. Meestal we repareren computers en LCD-monitoren maar de laatste tijd ik heb genomen voor de taak op het krijgen van sommige oudere Dell 5650 subwoofer systemen ui
Leuk met de vergadering van de PIC - aflevering 15

Leuk met de vergadering van de PIC - aflevering 15

Een van mijn recente projecten betrokken de bouw van een kleine 2.1 versterker met behulp van wat TDA power versterker chips die ik scrounged van een afgekante elektronica bestuur. Aangezien ik was in staat om te beslissen hoe ik wilde dingen bepalen
Leuk met de vergadering van de PIC - aflevering 3

Leuk met de vergadering van de PIC - aflevering 3

Nadat ik had been playing rond met de foto's voor een tijdje toevallig ik te merken dat het web was vol met kleine interface boards dat allerlei interessante taken kon doen. Sterker nog, ze waren goedkoper dan proberen op te bouwen uw eigen kleine pl
Leuk met de vergadering van de PIC - aflevering 19

Leuk met de vergadering van de PIC - aflevering 19

Een van mijn favoriete zinnen is "het is gemakkelijk als je weet hoe." Ik ben niet zeker als ik pakte die ergens lang geleden of het zelf bedacht, maar er heel wat waarheid daarin is. Dat is soort van wat er gebeurde toen ik ging op zoek naar ee
Leuk met de vergadering van de PIC - aflevering 23

Leuk met de vergadering van de PIC - aflevering 23

Zoals ik in vorige afleveringen ik vrijwilliger bij het lokale non-profit recyclingcentrum. Sommigen van de elektronica-dingen die wordt afgezet soort maakt me voelen als een archeoloog technologie en ik heb een fantasie die the History Channel zal v