ELab Hackerspace GSM toegangscontrolesysteem (6 / 8 stap)

Stap 6: PIC16F88 programmering


Alle code is geschreven in C met behulp van Piklab en gecompileerd met SDCC (zie hier Hoe te opstelling een microcontroller-ontwikkelomgeving met Piklab en SDCC). U moet zitten kundig voor compileren met andere compilers met geringe wijzigingen. U kunt ook de hexadecimaal bestand opgenomen in het geval dat u geen wijzigingen wilt aanbrengen. Bij het ontwikkelen van de code besloten hebben we dat de afgevaardigde telefoonnummers zouden worden opgeslagen in EEPROM van de foto's. Deze manier, als de Internet-verbinding is mislukt voor een of andere reden de deur zou nog steeds open voor een bevoegd lid, hoewel de ingang niet zou worden geregistreerd in het logboek van de ingang. De PIC16F88 bestaat uit 256 bytes van EEPROM. Rekening houdend met dat alle gsm-nummers in ons land 9 cijfers hebben en de eerste altijd een 9 is, moesten we 8 cijfers voor elk telefoonnummer, waardoor we voor het opslaan van 32 telefoonnummers in de EEPROM van de foto's opslaan. Het lijkt misschien dat 32 een klein aantal is maar eLab Hackerspace ook een kleine Hackerspace is en heeft alleen een paar leden. Als de dag komt waarop we meer dan 32 leden krijgen, zullen wij graag de PIC vervangen door een andere of zelfs vervanging van de meeste van de toegangscontrolesysteem met een Raspberry Pi of iets anders: P met de opslag van de gegevens gedefinieerd, was het tijd om het maken van een AT-instructieprotocol dat zou kunnen toevoegen, verwijderen en weergeven van telefoonnummers die zijn opgeslagen in het interne EEPROM. Elke opdracht begint met "ELAB +". Hier is een lijst van opdrachten die zijn geïmplementeerd:
- ELAB + P = < wachtwoord > -Insert adminwachtwoord voor admin-modus. Het veld < wachtwoord > is om te worden vervangen door de echte wachtwoord, hard gecodeerd in de foto's firmware. In het geval dat het wachtwoord is geaccepteerd, straalt de PIC een "AUTH OK"-antwoord. Anders, het antwoordt met "NO AUTH".
- ELAB + A #XX = < getal > -een nummer om de positie van XX (van 01 tot en met 32) waar het veld < NUMBER > moet worden vervangen door het 9-cijferig telefoonnummer toevoegen. Deze opdracht werkt alleen nadat de admin-modus is geactiveerd. Anders ontvangt u een bericht zeggend "NO AUTH". Als de opdracht is aanvaard dat u moet worden beantwoord met een "OK". In het geval dat de opdracht niet correct is ingevoerd zullen de PIC antwoorden met "Fout";
- ELAB + D #XX - verwijderen het nummer in positie XX (van 01 tot en met 32 gelegen). Deze opdracht werkt alleen nadat de admin-modus is geactiveerd. Anders ontvangt u een bericht zeggend "NO AUTH". Als de opdracht is aanvaard dat u moet worden beantwoord met een "OK". In het geval dat de opdracht niet correct is ingevoerd zullen de PIC antwoorden met "Fout";
- ELAB + V - Bekijk de volledige lijst met getallen die zijn opgeslagen in het interne EEPROM. Deze opdracht werkt alleen nadat de admin-modus is geactiveerd. Anders ontvangt u een bericht zeggend "NO AUTH". Als de opdracht is aanvaard dat u moet worden beantwoord met een "OK". In het geval dat de opdracht niet correct is ingevoerd zal de PIC antwoorden met 'Fout'.

Het standaardwachtwoord is gelegen in het password.txt bestand in het "PIC16F88 Control Board Firmware.zip"-bestand. U kunt veranderen in de broncode en het compileren als u wilt wijzigen.

Voor het gebruik van de interface van de opdracht AT, heeft de systeembeheerder net openen van de seriële aansluiting (9600bps baud-rate) met de PIC-microcontroller en verzenden de bovenstaande opdrachten uit te voeren toevoegen, verwijderen en weergeven. Alle bewerkingen worden gedaan, moet de resetknop op het bord van de PIC te activeren de veiligheidspal in de PIC-microcontroller worden ingedrukt. Veel verbetering kan nog steeds gebeuren in de code, zoals het toevoegen van een opdracht voor het activeren van de veiligheidspal of een opdracht voor het openen van de deur, onder andere mogelijkheden toe te voegen.

Wanneer de PIC een CLIP-bericht van de mobiele telefoon ontvangt, wordt gecontroleerd of het ontvangen aantal in haar interne EEPROM bestaat. In het geval dat het bestaat, stuurt het een "A: < 9_DIGIT_NUMBER >" naar de computer. In het geval dat het nummer niet bestaat, stuurt het een "R: < 9_DIGIT_NUMBER >" naar de computer.

Met betrekking tot de deur openingsmechanisme, zodra een bericht wordt ontvangen met een geldig nummer, de motor wordt geactiveerd totdat een schakelaar in de buurt van de motor wordt geactiveerd T moment (te negeren de spanningspieken veroorzaakt door motor lawaai). Vervolgens wacht 3 seconden en activeert de motor opnieuw tot de schakeloptie wordt vrijgegeven.

U kunt de firmware downloaden door te klikken hier.

Gerelateerde Artikelen

3D gedrukte Edward geïnspireerd verborgen Blade

3D gedrukte Edward geïnspireerd verborgen Blade

Hier is iets dat ik heb altijd al wilde doen! Een verborgen mes van Assassin's Creed!Ik weet, zijn er geen een miljoen van die al op het internet? Goed soort, er zijn een heleboel verborgen bladen online, en mensen hebben het maken van geweldige ontw
3D afgedrukt Bobblehead - hoge resolutie Full Body gescand en Hand geschilderd

3D afgedrukt Bobblehead - hoge resolutie Full Body gescand en Hand geschilderd

In dit instructable, ik zal u tonen hoe u uw eigen 3D gedrukte bobblehead kunt maken met een bouwtijd van een / twee dagen. Ik zal u tonen hoe te doen een volledige lichaam van de 3D scannen in hoge resolutie, hoe te doen 3D modeling software reparat
3D afgedrukt DNA Lamp

3D afgedrukt DNA Lamp

Een paar maanden geleden die ik online via sommige 3D-modellen voor 3D surfen was printen en ik had het idee van het maken van een koele roterende lamp van de DNA-Helix. Ik was geïnspireerd door de traditionele lavalampen maar ik wilde iets een beetj
HACCSY - Hackerspace toegangscontrole en Check-in systeem

HACCSY - Hackerspace toegangscontrole en Check-in systeem

HACCSY abreviation staat voor Hackerspace toegangsbeheer controleren in systeem en dat is vrij veel wat het doet.HACCSY app is bedoeld om te draaien op een RaspberryPi die verbonden met internet en de voordeur elektrische staking lock. Het doet het w
GSM Arduino Relay arrêtering

GSM Arduino Relay arrêtering

Hallo en welkom op mijn eerste instructable. Ik hoop dat het heeft iedereen ok!Anyways, dit instructable is over het maken van een eenvoudige GSM latching Relais.Het idee is simpel genoeg, de telefoon wordt gebeld, en de output is ingeschakeld, de te
GSM zonne-aangedreven Wind Station

GSM zonne-aangedreven Wind Station

Het doel van dit project is het bouwen van een autonome station waarmee windsnelheid en windrichting.Het station zal beantwoorden van telefoontjes en informatie leveren over spraaksynthese.Stap 1: Materiaal gebruikt:1 x windsensor (ebay.ch Davis Vant
Je eigen Himalaya zout kristallen lamp maken van een GSM-lader

Je eigen Himalaya zout kristallen lamp maken van een GSM-lader

dit artikel wordt beschreven hoe een mooi Himalaya zout kristallen lamp kan worden gemaakt van een paar goedkope onderdelen en een oude mobiele telefoon oplader.Vindt u altijd de nieuwste versie van dit instructable op mijn site op http://8el.eu/2010
Fiets GSM houder

Fiets GSM houder

dit is een instructable over hoe te maken van een GSM houder voor uw fiets die past in uw bidon houder. Geld en andere kleine items kunnen worden verstopt in het zo goed.Stap 1: materialen Dingen die je zal nodig om dit project te voltooien:-Bidon (m
Hoe maak je een draagbare USB-GSM-lader

Hoe maak je een draagbare USB-GSM-lader

https://www.YouTube.com/watch?v=TExXyea5Jpc&feature=Youtu.beStap 1: om te doen een draagbare USB-GSM-lader hebt! Hoe maak je een draagbare USB-GSM-lader voor iPhone, iPod, MP3, MP4 met uw eigen handen.Stap 2: Uw telefoon dood is en er zijn geen stopc
Arduino + GSM + PIR = Awesome

Arduino + GSM + PIR = Awesome

In dit moment thuis-/ kantoorgebruik en vele andere plaats is veiligheid het belangrijkste. In onze afwezigheid zijn deze plaatsen niet veilig. Voor make deze paleizen secure vele volkeren houden bewakers en vele mensen verkiezen elektronische beveil
Interfacing SIM900A GSM Modem met Arduino

Interfacing SIM900A GSM Modem met Arduino

Dit is een zeer goedkope en eenvoudige Arduino GSM- en GPRS-module. We gebruiken de module SIMCom SIM900A. Het is de goedkopere module nu beschikbaar in de markt. Dit bericht kunt u bellen met arduino gecontroleerd en ook het verzenden van tekstberic
DIY GSM Dangle Charms

DIY GSM Dangle Charms

Hoi allemaal! In deze gevraagde video, zullen we leren hoe te maken van uw eigen DIY GSM dangle charmes. Ik heb twee verschillende stijlen getoond: stof plug stijl en riem stijl. Beide stijlen worden weergegeven omdat men beter voor uw telefoon boven
GSM-houder/mount voor fiets/fietsarrangement-met gemak oortelefoon extensie hack camera hack camera hack en gps (bonusmateriaal!)

GSM-houder/mount voor fiets/fietsarrangement-met gemak oortelefoon extensie hack camera hack camera hack en gps (bonusmateriaal!)

Dit instructible toont hoe te maken van een GSM-etui voor je fiets/fiets/cyclus (welke u noemen! lol)... de kenmerken van de bonus van deze zo genoemd-'hack' zijn veel!!1. moe van het houden van de telefoon in uw zak met kans op het vallen wanneer u
GSM Shield huis Alarm

GSM Shield huis Alarm

Volg mijn BLOG > bengoncalves.netZie mijn andere ISTRUCTABLES > Ben Hur van profielDe andere dag mijn vader en ik bespraken over de problemen van het leven in een derde wereldland. Vanwege de sociale ongelijkheid is er weinig veiligheid op straat. O