Forum: Mikrocontroller und Digitale Elektronik DTMF Türschloss C-Code


von Michael (Gast)


Lesenswert?

Hallo ich hab eine Frage bezüglich der Speicherung von Zugangscodes für
eine Türschlosssteuerung mittels DTMF Reciver und PIC.

Kann mir jemand kurz beim C-Code Helfen?

Primäres Problem ;) :

Folgendes Problem: Ich habe am Ausgang von dem DTMF Receiver 4
Datenleitungen (Q1-Q3) und eine Steuerleitung(Std)die mit dem PIC
verbunden sind. Wenn ein DTMF Tone erkannt wurde, wird der erkannte
DTMF an der Schnuttstelle Q1-Q3 ausgegeben und Std wird kurz High. Ich
muss also jede Ziffer einzeln einlesen. Wie kann ich also alle Ziffern
zusammen bringen zu einer Zahl? wenn der Zugangskode z.B. 1 - 8 - 5 - 9
- 6 - #(Eingabebeendet) ist wie bring ich das zu einer zahl 18596
zusammen? Wie sieht der C-Code aus?

Sekundär ;)
Wenn ihr noch zusätzlich weiterhelfen könnt wäre super, weiter wäre
noch die einbindung eines Interrupts das die Steuerleitung vom Std auf
ein interrupt gehängt wird damit das programm nicht die ganze zeit
durchläuft. Weiter wäre die Speicherung von neuen Zugangscodes mittels
eines vorher eingegebenen Mastercodes. Wie kann ich das Lösen?


Vielen Dank für eure Hilfe

Gruss Michael

von peter dannegger (Gast)


Lesenswert?

"Wie kann ich also alle Ziffern zusammen bringen zu einer Zahl?"


Gehe nochmal zurück in die erste Klasse Matheunterricht:

Zahl = Einer * 1 + Zehner * 10 + ....


Peter

von Michael (Gast)


Lesenswert?

Ja ich weiss ist mir eben gerade auch aufgefallen hast du zum 2. Punkt
auch eine idee wie das aussehen könnte?

von Johannes Raschke (Gast)


Lesenswert?

Zugangscodes zusammen mit einem Zusatzbyte im EEPROM ablegen.
Nach jeder eingegebenen Ziffer (oder nach "Enter") nachschauen, ob
der String in der Liste im EEPROM gefunden wird. Ich würde auf die
Wandlung in Zahlen verzichten...
Dann das Zusatzbyte auslesen. Abhängig davon Tür öffnen, Hinzufügen
neuer Codes erlauben oder Fallgrube öffnen...

von Michael (Gast)


Lesenswert?

Im EEPROM des PIC's oder Extern? weisst du wie man auf das EEPROM
zugreifft? Also wie der C Code da aussieht?

von Johannes Raschke (Gast)


Lesenswert?

Hoppla, ist ja ein PIC...
Einige PICs haben internen EEPROM, z.B. der 12F675. Einen solchen mit
ausreichender Anzahl an I/O Pins solltest Du benutzen.
Keine Ahnung wie das in C funktioniert, aber im Netz oder einer Appnote
findest Du mit Sicherheit die nötige Information, wahrscheinlich sogar
mit Beispielcode.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.