• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

Telefontastertur und Voicemodul

gSmarty

Geocacher
Hi
Ich hab die Idee, in ein altes Telefon 1-2 Voicemodule (die 5 verschiedene Sounds über 5 verschiedene Taster abrufbar sind (die von http://voicemodul.de/)) an zu steuern. Die sollen allerdings nicht einfach über drücken einer Taste los legen, sondern sollen erst abspielen wenn man die richtige Telefonnummer gewählt hat. Mir stellt sich jetzt die Frage welchen Attiny ich dafür brauche und wie ich in etwa das Programm dafür schreiben soll.
Muss also über den Attiny die 10 Tasten vom Telefon und die 5/10 Schalter der Soundmodule ansteuern. Also bräuchte ich 15/20 Ein/Ausgänge wenn meine Überlegung richtig ist.
Hoffe ihr könnte mir da etwas weiter helfen.

Gruß GSmarty
 

Kuchenmops

Geocacher
Hallo,

wenn man die Lösung so wie beschrieben angehen will eignet sich wohl der Mega8 aus der AVR-Familie am besten. Er hat ausreichend Pins und Speicherressourcen für solche Aufgaben. Bei der Tastatur lassen sich eventuell Pins sparen indem man sie als 3*4-Matrix nutzt (was eigentlich bei Telefon-Tastaturen üblich ist), somit braucht man nur noch 7 Pins und bei 10Pins für die Soundmodule reicht dann der Attiny2313, preislich am günstigsten von den 3en). Noch mehr spart man bei der Nutzung von Spannungsteilern, da genügt ein Eingangspin zum A/D-Wandler (Attiny24). Diese Pineinsparungen werden aber alle mit etwas mehr Programmierauswand erkauft. Desweiteren ist es ziemlich überdimensioniert zwei Voicemodule zu verwenden.. leider hat voicemodul.de nur die Version mit dem 5 Voice Keymode und ist somit die offensichtlichste Lösung, von anderen Anbietern gibt es diese Module auch mit MP3-Modus (da kann man den gewünschten Titel durch Vorwärts-/Rückwärtsskippen anwählen) oder mit serieller Datenübertragung zum Anwählen des Titels per Adresse (bis zu 512 Tracks möglich).
Was das Programm betrifft (ich hoffe hier sind ein paar Vorkenntnisse vorhanden, sonst wird es ein schöner Lernprozess) muss man grob folgenden Ablauf erzeugen:
- einlesen der Tastatur
- vergleichen der eingelesenen Nummer mit den Vorgesehenen
- Ansteuerung des entsprechenden Titels

Hinzu kommen noch eine Tastenentprellung, Sicherstellung daß sich alles nach Beendigung der Wiedergabe ausschaltet zum Stromsparen (außer man läßt die Cacher die Stromversorgung mitbringen..). Mit Bascom läßt sich das recht komfortabel umsetzen, auch wenn das manchmal etwas merkwürdige Stolperfallen bereithält.
Insgesamt ein schönes Projekt, derzeit bearbeite ich nebenbei was ähnliches, nur mit Wählscheibe :)

Grüße, Maik (Kuchenmops)
 
OP
gSmarty

gSmarty

Geocacher
Hab mir das Telefon noch mal angeguckt, die Tastatur hat 8 Anschlüsse, wobei ich wohl ein Pin weg lassen kann, da der für die Wahlwiederholung usw ist. Bräuchte ich also nur noch 7 + die 10 für die Soundmodule, sollte mit einem Attiny2313 wohl zu realisieren sein.
Danke schon mal für die ersten Tipps. Mal schauen wann ich mit dem Projekt wirklich beginne.
 

peter51d

Geocacher
Mit diesem Problem kämpfe ich auch gerade, allerdings will ich nur einen attiny13 verwenden, ich brauche aber auch nur zwei Ausgänge für das Voice Modul.
http://www.geoclub.de/viewtopic.php?f=57&t=57310
Bei richtiger Wahl soll eine Ansage kommen, bei falscher Wahl ein "kein Anschluss unter dieser Nummer" Ton.
Meine Idee mit den Dioden bringt aber die wildesten Ergebnisse.
Wiederstands Martix muss ich mich noch mit beschäftigen.
Mal sehen wie ich das irgendwie hin bekomme.

@ Kuchenmops
Wählscheibe habe ich hier auch noch. Ein 611-2.
Will ich auch noch mal irgendwann verbauen.
Hast du dir schon Gedanken über die Auswertung der Impuls gemacht?
Ich hätte da schon eine Idee, weiß aber noch nicht, wie man das genau umsetzt.
So tief stecke ich in der Programmierung nicht drin.
 

radioscout

Geoking
Wenn man zu wenig Portpins hat, kann man diese theoretisch unbegrenzt erweitern, wenn man Schieberegister verwendet.
 

rainmuel

Geocacher
Schaue doch mal in den Fred weiter unten:
http://www.geoclub.de/viewtopic.php?f=57&t=57310

Hier gibt es einige Hinweise auf Pinsparen und Telefontastatur.
Einfacher als mit einem zusätzlichen Schieberegister geht es wohl mit einem Attiny24, der hat 8+4 Pins zur Verfügung.
Ein Attiny13 mit einem Input (analog) und 5 Output Pins wäre auch möglich.

Happy Caching
 

Kuchenmops

Geocacher
@peter51d: Meine Wählscheibe von RFT aus einem alten DDR-Fernsprechapparat hat zwei "Schalter". Einer schließt solange die Wählscheibe aus der Ruhestellung bewegt ist, der andere gibt bei jeder Ziffer eine kurze Unterbrechung. Die Pulse beim Wählen kann man mit einem flankengesteuerten Interrupt erfassen (eine Variable hochzählen), wenn die Scheibe wieder in Ruhestellung ist hat man seine gewählte Ziffer. Klappt ganz gut, ich könnte mir vorstellen die Wählscheibe im Posttelefon arbeitet ähnlich.

Schieberegister sind grundsätzlich möglich, aber hier sehe ich keinen Vorteil weder vom Aufwand noch vom Preis. Der Tiny2313 hat recht viele Pins und ist günstiger als der Tiny13. Er hat zwar keinen AD-Wandler, den braucht man hier aber auch nicht wenn man die Matrix direkt anschließt. Dafür besitzt er mehr Speicher. So ein Tiny24 ist auch nur 35ct teurer als ein Tiny13, soviel kostet der Schieberegisterbaustein auch und man hat mehr Aufwand beim Löten und Programmieren.
Wenn man große LED-Arrays oder ähnliche Spielereien aufbaut können sie aber ganz nützlich sein..

Grüße, Maik
 

peter51d

Geocacher
Hallo Kuchenmops.
Die Telekom/Post Geräte arbeiten nach dem selben Prinzip. So weit ich weiß, arbeiten alle Geräte so.
Da die Impulszeiten ja recht genau definiert sind, hätte ich jetzt einfach den Pin abgefragt und ihm zum entprellen einfach solange auf wait gesetzt, bis ich sicher aus der Schliessphase raus bin.
Beispiel: der Impuls soll bei Telekom Geräten bei 38ms schliesen und 63ms öffnen liegen.
Also Pin abfrage und dann 50ms Wait. Damit müsste der Kontakt sichre wieder offen sein.
Da ich aber mehrer Ziffern hinter einander als Code auswerten möchte, sollte im Hintergrund noch ein Timer laufen, der bei jedem schliesen des Kontaktes zurückgesetzt wird. Laufzeit des Timers zb 160ms.
Ist die Ziffer zuende gelaufen, geht der Timer in den Überlauf und springt in eine Routine, die die anzahl der vorherigen Impule in eine Variabele schreibt.
Zusätzlich wird eine zweite Variabele hoch gezählt, die die Anzahl der gewählten Ziffern beschreibt.
Wenn jetzt z.B. vier Ziffern gewählt wurden, werden die Variabeln mit dem hinterlegten Code verglichen und der entsprechende Port angesteuert.
Die Wait Zait zum Entprellen, ist recht unkritisch, da der MC da ja eh nicht anderes machen muss, als auf den nächsten impuls zu warten.
Wo ich im moment noch hänge, ist der Timer.
Das muss ich mir noch mal nachlesen, wie das Programmiert werden muss.

Oder habe ich jetzt einen massievn Denkfehler?

@ Rainmuel

Deinen Link kenne ich. der kommt ja von mir. ;)

Das Problrm ist aber, das die Sache mit den Dioden z.Z. nich hinhaut. Irgendwie scheint es darüber Einkopplungen zu geben. Kappe ich die Dioden, werden die drei Taster sauber erkannt.
Aber mit den Dioden macht er was er will.

Ich denke es ist das einfachste einen ander Tiny zu nehmen, bevor ich noch mehr graue Haare bekomme.
 

upigors

Geowizard
gSmarty schrieb:
Hi
Ich hab die Idee, in ein altes Telefon 1-2 Voicemodule (die 5 verschiedene Sounds über 5 verschiedene Taster abrufbar sind (die von http://voicemodul.de/)) an zu steuern. Die sollen allerdings nicht einfach über drücken einer Taste los legen, sondern sollen erst abspielen wenn man die richtige Telefonnummer gewählt hat. Mir stellt sich jetzt die Frage welchen Attiny ich dafür brauche und wie ich in etwa das Programm dafür schreiben soll.
Muss also über den Attiny die 10 Tasten vom Telefon und die 5/10 Schalter der Soundmodule ansteuern. Also bräuchte ich 15/20 Ein/Ausgänge wenn meine Überlegung richtig ist.
Hoffe ihr könnte mir da etwas weiter helfen.

Gruß GSmarty

Hier ein Video mit ner Matrixtastatur http://www.cachestation.de/index13.html Bis auf den reedschalter doch das was du willst, oder? Verwendet wurde ein Attiny24
Gruß Uwe
 
OP
gSmarty

gSmarty

Geocacher
upigors schrieb:
gSmarty schrieb:
Hi
Ich hab die Idee, in ein altes Telefon 1-2 Voicemodule (die 5 verschiedene Sounds über 5 verschiedene Taster abrufbar sind (die von http://voicemodul.de/)) an zu steuern. Die sollen allerdings nicht einfach über drücken einer Taste los legen, sondern sollen erst abspielen wenn man die richtige Telefonnummer gewählt hat. Mir stellt sich jetzt die Frage welchen Attiny ich dafür brauche und wie ich in etwa das Programm dafür schreiben soll.
Muss also über den Attiny die 10 Tasten vom Telefon und die 5/10 Schalter der Soundmodule ansteuern. Also bräuchte ich 15/20 Ein/Ausgänge wenn meine Überlegung richtig ist.
Hoffe ihr könnte mir da etwas weiter helfen.

Gruß GSmarty

Hier ein Video mit ner Matrixtastatur http://www.cachestation.de/index13.html Bis auf den reedschalter doch das was du willst, oder? Verwendet wurde ein Attiny24
Gruß Uwe

Genau so stelle ich mir das vor. nur das ich nicht einen Ausgang für den Reedschalter brauche sondern 5-10 Ausgänge für die Voicemodule die aber alle auf einen anderen Code/Telefonnummer reagieren
 

upigors

Geowizard
du willst also 5-10 Voicemodule verbauen?
schau dir mal die 5 Mode module an. Die können 5 verschiedene Sounds mit 5 Eingängen abspielen....
An sonsten könntest Du auch mit den "grüne Hölle Modulen" und der Vorspul-Funktion sicher mit 2 Ausgängen das gleiche erreichen.
Gruß Uwe
 
OP
gSmarty

gSmarty

Geocacher
Nein, ich möchte 1-2 der 5 Soundmodule verbauen, so das ich 5-10 Sounds zum anspielen habe
 

Attila_G

Geocacher
gSmarty, wo ist den der Unterschied ob man nun 5-10 einzelne Module verbaut und der Variante mit 1-2 Modulen, welche je 5 Sound abspielen können?

-- Attila
 
OP
gSmarty

gSmarty

Geocacher
Attila_G schrieb:
gSmarty, wo ist den der Unterschied ob man nun 5-10 einzelne Module verbaut und der Variante mit 1-2 Modulen, welche je 5 Sound abspielen können?

-- Attila
wenn dann würde ich nur eines verbauen und die Tracks durchschalten oder halt zwei Module und jeden einzelnen Titel direkt abspielen

upigors schrieb:
und im Platzverbrauch
 
Oben