Hallo, ich habe einen DTMF-Decoder mit Dotmatrix-Anzeige, nach diesen Schaltplan gebaut. http://www.hagi-online.org/picmicro/dtmfdotmatrix.html Das Problem ist das auf der Dotmatrix-Anzeige immer nur eine LED leuchtet, das bedeutet wenn auf dem Telefon eine Zahl gedrückt wird leuchtet nur eine LED auf, wenn ich eine andere Zahl drücke leuchtet eine andere LED auf der Matrix-Anzeige auf, aber sie zeigt nicht die Zahl an. Woran kann das liegen ?
Entferne den PIC und schließe LED's mit Vorwiderstand an die Q Ausgänge des DTMF Decoders an. Dann siehst Du, ob der richtig arbeitet. Danach sehen wir weiter. Mach das erstmal.
So hab ich gemacht: wenn ich anschalte ist Leuchten Q1, Q2, Q3, Q4 Zahl 1: Q1 Zahl 2: Q2 Zahl 3: Q1, Q2 Zahl 4: Q3 Zahl 5: Q3, Q1 Zahl 6: Q2, Q3 Zahl 7: Q1, Q2, Q3 Zahl 8: Q4 Zahl 9: Q1, Q4 Ist das richtig so?
Strom87 schrieb: > Ist das richtig so? Sieht doch gut aus, aber warum fragst du? Das kannst du doch direkt durch Vergleich mit der Tabelle im Datenblatt (Figure 2. Functional Decode Table) feststellen. http://www.biltek.tubitak.gov.tr/gelisim/elektronik/dosyalar/18/ics8870.pdf
Storm87 schrieb: > Danke! > > Aber was kann es sonst sein, meint ihr der PIC ist defekt, wie kann ich > den Prüfen? Muß ja nicht kaputt sein, vielleicht ist nur ein Fehler im Programm. Zeig doch mal den Sourcecode, vielleicht kann dir dann geholfen werden.
Strom87 schrieb: > Ist das richtig so? Das ist die Binärdarstellung der Zahlen. Ist wahrscheinlich so beabsichtigt (gibt ja auch Binäruhren) oder ein BCD-7Segment-Decoder soll nachgeschaltet werden, was allerdings relativ unsinnig ist, wenn man schon einen PIC verwendet. Die Gedankengänge fremder Entwickler sind oft unerforschlich. Vielleicht ist das Ganze auch einfach nicht fertiggeworden. Ich tippe auf einen Hardcore-Binärfan. Gruss Reinhard
Reinhard Kern schrieb: > > Das ist die Binärdarstellung der Zahlen. Ist wahrscheinlich so > beabsichtigt (gibt ja auch Binäruhren) oder ein BCD-7Segment-Decoder Aus dem 8870 kommt ein BCD-Code raus, das sind die 4 Ausgänge Q1..Q4. Und die meinte Storm87 damit, als er die Tabelle "Zahl 1: Q1..." schrieb. Der PIC soll daraus erstmal eine lesbare Zahlendarstellung machen auf der Dotmatrix-Anzeige. Und nun ist die Frage, ist der PIC kaputt oder stimmt das Programm nicht? Da fällt mir noch eine ganz dumme Frage an den Storm87 ein: Ist der PIC überhaupt programmiert, oder hast du ihn gekauft und eingelötet? Sorry, aber es kann ja sein, daß jemand nicht weiß, daß das ein Prozessor ist, der erst ein Programm braucht, um seine Aufgabe zu erfüllen.
Bernd S. schrieb: > Sorry, aber es kann ja sein, daß jemand nicht weiß, daß das ein > Prozessor ist, der erst ein Programm braucht, um seine Aufgabe zu > erfüllen. Ist keine dumme Frage,hätte ich auch als erstes gestellt. Wobei,wenn bei unterschiedlichen Signalen unterschiedliche LEDs der Matrix aufleuchten,muss ja was drauf sein. Sicher dass die Leitungen an die Matrix richtig angeschlossen sind? Richtige Matrix (column Anode)?
Reinhard Kern schrieb: > Das ist die Binärdarstellung der Zahlen. Ist wahrscheinlich so > beabsichtigt Das glaube ich nicht. Zu Binärdarstellung hätten ja 4 LEDs genügt, dafür nimmt doch niemand ein 5x7 Dotmatrix. > oder ein BCD-7Segment-Decoder > soll nachgeschaltet werden, was allerdings relativ unsinnig ist, wenn > man schon einen PIC verwendet. Und vor allem auch ein Dotmatrix-Display. Wenn der Plan war, einen Siebensegmentdecoder zu verwenden, wäre wohl auch ein Siebensegment-Display verwendet worden. Dafür braucht's dann ganz sicher auch keinen PIC mehr, da hätte es dann ein primitives 4Bit-Latch vor dem Siebensegmentdecoder getan. > Vielleicht > ist das Ganze auch einfach nicht fertiggeworden. Das könnte sein. Vielleicht ist aber auch nur irgendein Debugmodus in der Software aktiviert, dessen Aufgabe halt genau ist, einfach nur das Binärmuster des DTMF-Decoders anzuzeigen. Wenn ich sowas so bauen würde, wäre auf jeden Fall so ein Debugmodus drinne. Allerdings würde ich das nicht so bauen. Ich würde einfach nur einen AVR nehmen und den die ganze Arbeit erledigen lassen, einschließlich der des DTMF-Decoders.
Wenn ich die Doku auf der Homepage richtig lese, wird nur die gedrückte Taste im Ziffernblock angezeigt: 1 2 3 A 4 5 6 B 7 8 9 C * 0 # D Also kann eigentlich immer nur EINE Led in der Matrix leuchten ;-)
Tachen schrieb: > Wenn ich die Doku auf der Homepage richtig lese, wird nur die gedrückte > Taste im Ziffernblock angezeigt: > > 1 2 3 A > 4 5 6 B > 7 8 9 C > * 0 # D > > Also kann eigentlich immer nur EINE Led in der Matrix leuchten ;-) Du hast Recht, das könnte man auch so interpretieren. Auf der Homepage steht: > Zusätzlich wird über eine DotMatrix-Anzeige angezeigt, > welche Taste zuletzt gedrückt wurde. Aber da steht nicht, ob eine Ziffer oder nur ein Punkt an der richtigen Stelle angezeigt wird. Ich hatte bis jetzt angenommen, daß das entsprechende Zeichen auf der Anzeige dargestellt wird. Aber bevor wir den Sourcecode nicht sehen, ist das nur ein Raten...
John schrieb: > Hast Du vielleicht diese Schaltung aufgebaut? > http://www.hagi-online.org/picmicro/dtmfled.html Entschuldige die Zwischenfrage, aber er hat doch die Schaltung verlinkt, die er aufgebaut hat. Und er spricht auch von Dotmatrix-Anzeige. Warum fragst du jetzt nach einer anderen Schaltung? Ich dachte, über die Schaltung gibt's keinen Zweifel?
Bernd S. schrieb: > Warum fragst du jetzt nach einer anderen Schaltung? Weil die von mir verlinkte Schaltung genau das macht, was er in seinem erstem Post beschreibt.
> Aber bevor wir den Sourcecode nicht sehen, ist das nur ein Raten... ------------------------------------------------------------------------ --- ; Die Zeichentabelle für die LED-Anzeige kommt in das EEPROM ;----------------------------------------------------------------------- --- org 0x2100 de 0xF0, 0x48, 0x48, 0x48, 0x48, 0x48, 0xF0 ; D de 0x20, 0x60, 0x20, 0x20, 0x20, 0x20, 0x70 ; 1 de 0x70, 0x88, 0x08, 0x70, 0x80, 0x80, 0xF8 ; 2 de 0x70, 0x88, 0x08, 0x30, 0x08, 0x88, 0x70 ; 3 de 0x10, 0x30, 0x50, 0x90, 0xF8, 0x10, 0x10 ; 4 de 0xF8, 0x80, 0xF0, 0x08, 0x08, 0x88, 0x70 ; 5 de 0x30, 0x40, 0x80, 0xF0, 0x88, 0x88, 0x70 ; 6 de 0xF8, 0x08, 0x10, 0x20, 0x40, 0x40, 0x40 ; 7 de 0x70, 0x88, 0x88, 0x70, 0x88, 0x88, 0x70 ; 8 de 0x70, 0x88, 0x88, 0x78, 0x08, 0x10, 0x60 ; 9 de 0x70, 0x88, 0x98, 0xA8, 0xC8, 0x88, 0x70 ; 0 de 0x20, 0xA8, 0x70, 0xF8, 0x70, 0xA8, 0x20 ; * de 0x50, 0x50, 0xF8, 0x50, 0xF8, 0x50, 0x50 ; # de 0x20, 0x50, 0x88, 0x88, 0xF8, 0x88, 0x88 ; A de 0xF0, 0x48, 0x48, 0x70, 0x48, 0x48, 0xF0 ; B de 0x70, 0x88, 0x80, 0x80, 0x80, 0x88, 0x70 ; C de 0x00, 0x50, 0x00, 0x20, 0x20, 0x88, 0x70 ; Smiley
Seine Schaltung macht das wahrscheinlich auch, nur eben nicht mit einzelnen Dioden, sondern mit einer Matrix-Anzeige. Mal sehen, ob er noch den Sourcecode postet, dann sehen wir weiter... P.S.: nicht übelnehmen, ich war nur verwundert...
Danke an Davis, jetzt wissen wir wenigstens, daß wirklich die Zeichen auf der Dotmatrix angezeigt werden sollen und nicht nur ein Punkt pro Ziffer. Das heißt jetzt aber trotzdem, daß wir nicht wissen, was im PIC passiert. Ist das Programm richtig und fehlerfrei? Und ist der PIC überhaupt programmiert? Das obige ist ja nur eine Zeichentabelle und kein Programm. Die Ausgänge vom 8870 (Q1..Q4) sind ja erstmal richtig, das hat Storm87 schon überprüft.
Bernd S. schrieb: > Mal sehen, ob er noch den Sourcecode postet, dann sehen wir weiter... Den Sourcecode gibt es als Download auf der Seite. (Erste Position in der Stückliste -> Disketten-Symbol)
Im Download sind die Hex-Files von allen DTMF-Decoder Versionen enthalten. Was ist wenn er das falsche File programmiert hat?
John schrieb: > Im Download sind die Hex-Files von allen DTMF-Decoder Versionen > enthalten. > Was ist wenn er das falsche File programmiert hat? Das ist auch möglich. Den Download-Link hatte ich übersehen. Sonst hätte ich nicht paarmal nach dem Sourcecode gefragt, sorry... Jetzt schauen wir mal, ob sich Storm87 nochmal meldet, nachdem er den PIC auf richtige Programmierung überprüft hat. Vielleicht war das ja alles...
Danke für den Tipp mit der Programmierung, hab den Code von der Seite genommen. Aber örgend was stimmt da nicht, ich schau mir das noch mal genau an und meld mich wieder.
So, kann ich überhaupt den PIC direkt auf der Platine Programmieren oder brauch ich noch eine Brenner Platine für den Pic? Weil es klappt nicht richtig.
Storm87 schrieb: > Weil es klappt nicht richtig. Was klappt nicht? Von selbst wird das Programm nicht in den PIC wandern. Wie hast du denn versucht, es dort rein zu bekommen?
Mit einem Brennprogramm, aber reicht das oder brauch ich noch eine Pic Brennplatine
Storm87 schrieb: > Mit einem Brennprogramm, aber reicht das oder brauch ich noch eine Pic > Brennplatine Wie hast du denn das hex-File vom Brennprogramm auf den PIC bekommen? Du mußt doch irgendwas am PIC angeschlossen haben? Beschreib das mal bitte, wie du das gemacht hast. Es gibt zwei Möglichkeiten. Entweder du steckst den PIC in ein Programmiergerät, was am PC hängt. Dann kann das Brennprogramm den PIC im Programmiergerät brennen. Oder du möchtest ihn in der Schaltung programmieren, dann brauchst du einen Programmieradapter (PICKIT oder was ähnliches). Der Adapter stellt dann das Bindeglied zwischen dem PC und deiner Schaltung mit dem PIC her. Und damit kannst du dann den PIC brennen. Für das Programmieren in der Schaltung müssen die Anschlüsse am PIC so belegt sein, wie du das auf dem Bild siehst.
ich hatte gedacht ich kann ihn einfach auf der Platine über die com-schnittstelle übertragen, auf der Seite steht ja nichts weiter dazu. ich werde mich dann wohl noch mal mit der ganzen sache beschäftigen. Kann ich denn einfach so einen PIC Programmer bei E... kaufen?
Storm87 schrieb: > ich hatte gedacht ich kann ihn einfach auf der Platine über die > com-schnittstelle übertragen, auf der Seite steht ja nichts weiter dazu. > ich werde mich dann wohl noch mal mit der ganzen sache beschäftigen. > Kann ich denn einfach so einen PIC Programmer bei E... kaufen? Du hast bestimmt die COM deines PC an die 9polige Buchse in deiner Schaltung angeschlossen, stimmts? Das funktioniert aber nicht, denn die Schnittstelle in deiner Schaltung gibt nur die gedrückten Zahlen seriell raus, damit du sie über den PC oder eine andere Schaltung auswerten kannst. Und das funktioniert auch erst dann, wenn der PIC programmiert ist und läuft. Lies mal die Beschreibung auf der Webseite. Die Schnittstelle ist kein Eingang! Dein Brennprogramm muß dir doch nach dem Brennversuch eine Meldung ausgegeben haben? Und das war doch bestimmt eine Fehlermeldung, oder? Was hast du eigentlich für ein Brennprogramm benutzt? Hier sind mal zwei Varianten, die für deinen Zweck geeignet wären: http://www.conrad.de/ce/de/product/160402/PICkit-3-Debug-Express-DebuggerProgrammer-DV164131-Microchip-DV164131-Ausfuehrung-PICkit-3-Debug-Express-DebuggerProg http://www.reichelt.de/Programmer-Entwicklungstools/DV-164131/3/index.html?;ACTION=3;LA=446;ARTICLE=87178;GROUPID=2969;artnr=DV+164131 Es kann auch noname-Varianten geben oder Nachbauten. Da mußt du aber dann schauen, ob sie von deinem Brennprogramm unterstützt werden. Was hast du für ein Programm zum Brennen benutzt?
Hallo, ich habe jetzt diesen Brenner: http://www.ebay.de/itm/ICSP-PIC-Brenner-Programmierer-Programmer-USB-Programmierger-at-fur-16F-12C-12F-/140936251715?pt=Wissenschaftliche_Ger%C3%A4te&hash=item20d0748943 brauche ich noch was um den PIC16F627 zu brennen? Wie kann ich vorgehen, hab bis jetzt usburn auf dem Computer?
Hallo Storm, laut Beschreibung sollte der Brenner funktionieren. Mit dem Brennprogramm kenn ich mich leider auch nicht aus. Ich arbeite nicht mit PIC. Aber prinzipiell sollte es so funktionieren, daß dein Brennprogramm erstmal den Brenner erkennen sollte. Wenn das der Fall ist, mußt du den richtigen PIC auswählen. Dann muß da ein Punkt sei, wo du das Hex-File wählen kannst, was du von der Website runtergeladen hast. Wenn das geschafft ist, suche den Punkt "Flash programmieren" oder so ähnlich. Wie gesagt, ich kenne das Programm nicht, aber so ungefähr sollte es laufen. Vielleicht kann dir hier noch jemand einen Tipp geben, der das Programm kennt. Gruß Bernd
Ich hab hier was gefunden, schau dir die Seite mal an. Dort solltest du die Antworten auf deine Fragen finden: http://www.sprut.de/electronic/soft/usburn/usburn.htm Gruß Bernd
Die Zeichentabelle im EEPROM ist für die Schaltungsvariante2 mit LCD. Findet man beim Download im Verzeichnis DOC. Die LED MAtrix zeigt tatsächlich nur die Position der Taste an.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.