Autor | Thema |
---|---|
Reinhard
Überflieger Registriert seit: Sep 2003 Wohnort: Österreich Verein: TRA #10691, AGM Beiträge: 1187 Status: Offline |
Beitrag 118618
[23. April 2007 um 17:10]
Hi,
wer sich auf unqualifiziertes Personal einlässt, muss dann mit den Konsequenzen leben. Wie der "Betatester" Scorpion_XII herausgefunden hat, habe ich in das Messsystem 2 Fehler eingebaut, die es für den eigentlichen Zweck unbrauchbar machen. Man kann keine Messwerte erfassen und man kann sie auch nicht abspeichern bzw. wieder abrufen. Um das Problem zu lösen, muss man nachträglich mit einem isoliertem Draht 2 Verbindung herstellen (ohne irgendwelche Kurzschlüsse zu produzieren...). Idealerweise wird auch eine bestehende Verbindung, z.B. mit einem Skalpel, getrennt, was aber nicht unbedingt notwendig ist. Details finden sich im angehängten PDF-Dokument. Anhang: errata messbox.pdf Um das Problem bei ev. zukünftigen Platinen aus der Welt zu schaffen, hänge ich hier die korrigierten EAGLE Dateien an. Leider musste ich einen Kompromiss eingehen, um die Ausmaße der Platine nicht zu verändern. Es ist eine zusätzliche Drahtbrücke hinzugekommen, die aber isoliert sein muss, weil sie sich ein wenig durch bestehende Bauteile hindurchschlängelt. Einen anderen Weg habe ich leider nicht gefunden. Hier die Dateien. Anhang: messbox rev1.zip Entschuldigt bitte die Unannehmlichkeiten. Gruß Reinhard |
Scorpion_XIII
Poseidon Registriert seit: Jun 2005 Wohnort: Verein: Beiträge: 1154 Status: Offline |
Beitrag 118622
[23. April 2007 um 17:36]
Eine Frage hab ich erstmal zum AD-Wandler.
Ich habe die beiden Pins vom Atmel verbunden (also B und C) Verbindung A C besteht noch. Das mit dem Register und der Referenzspannung habe ich nicht so ganz verstanden. Muss ich da noch irgendwo was machen? Softwaretechnisch bei Bascom und später dann C? Und was genau darf man nicht machen, dass ich den Chip nicht beschädige? Gruß Scorpion_XIII t(h)rust in GARDENA |
Reinhard
Überflieger Registriert seit: Sep 2003 Wohnort: Österreich Verein: TRA #10691, AGM Beiträge: 1187 Status: Offline |
Beitrag 118623
[23. April 2007 um 18:34]
Hi,
der AVR kann 3 verschiedene Spannungsreferenzen auswählen. Siehe dazu auch das Datenblatt des ATMega16 auf Seite 215. Die Referenzspannung entspricht dem maximalen Wert den der ADC erfassen kann. Eine große Referenzspannung ermöglicht es, einen großen Messbereich abzudecken (z.B. 0-5V). Wenn man die Referenzsspannung reduziert, wird dieser Bereich kleiner, aber dafür löst der ADC in feineren Schritten auf, da er eine fixe Auflösung von 10bit hat (d.h. 1024 Schritte). Bei einer 5V Referenz kommt man so auf einer Auflösung von ca. 5mV, bei einer 2V Referenz kommt man auf 2mV Auflösung. Beim AVR kann man bestimmen welche Quelle man für die Referenzsspannung wählt. Dies wird durch die oberen beiden bits des Register ADMUX bestimmt. Wenn die beiden, wie in der Anleitung gefordert, auf 0 gesetzt werden, verwendet der AVR die extern am Pin ARef (das ist der Punkt C) angelegte Spannung als Referenz. In diesem Fall ist er mit der Versorgungsspannung von 5V verbunden. Das war so nicht geplant, weil der AVR den Pin ARef auch intern mit der analogen Versorgungsspannung (der Punkt B) verbinden kann, wenn die oberen beiden Bits von ADMUX auf 01 gesetzt werden. So gesehen wäre das ja ziemlich egal, weil die Ergebnisse gleich sind, egal ob ARef intern oder extern mit der Versorgunsspannung verbunden ist. Einen Unterschied würde es nur machen, wenn die extern angelegte Referenz sich von den 5V der Versorgungsspannung unterscheiden würde. Allerdings bietet der AVR noch eine dritte Möglichkeit. Er hat eine interne 2,56V Spannungsreferenz. Wenn man diese Option auswählt (die oberen bits von ADMUX auf 1 gesetzt), wird die interne Spannungsreferenz mit dem ARef Pin verbunden. An diesem hängt ein Kondensator, der die Spannung glättet, wodurch die Messergebnisse rauschärmer werden. Bleibt die externe Verbindung zum Punkt C erhalten, wird die interne 2,56V Spannungsreferenz mit den externen 5V kurz geschlossen. Damit hat man gute Chancen den AVR zu beschädigen. Lange Rede kurzer Sinn. Setzt man die beiden angesprochenen Bits auf 0, wird intern keine Verbindung hergestellt. Kappt man die Verbindung von A nach C wird extern keine Verbindung hergestellt. Somit ist sichergestellt dass nichts passiert. (Es gibt noch den oben angesprochenen Sonderfall das intern und extern die gleiche Verbindung hergestellt wird, bei dem auch nichts passiert). Nur im Falle der unterbrochenen Leitung kann man die interne 2,56V Referenz verwenden. Die Frage ist jetzt, was sind die Defaultsettings von BASCOM? Wie es scheint ist die HP von BASCOM derzeit tot. Ich kann leider nicht nachsehen welche Defaultsettings BASCOM verwendet, aber ich vermute es ist die externe Referenz (00). Alles andere kann in bestimmten Konstellationen zu Schäden führen. Wird die Verbindung A-C getrennt müssen die entsprechenden Bits nachträglich auf 01 (0-5V) oder 11 (0-2,56V) gesetzt werden. Eine nichtverbundene Referenz würde zu sinnlosen Ergebnissen führen. Gruß Reinhard PS: Das Register heist ADMUX, nicht ADCMUX. Ich habe das im pdf jetzt nochmal ausgebessert. Geändert von Reinhard am 23. April 2007 um 18:35 |
Andreas Jörg
Raketenbauer Registriert seit: Sep 2005 Wohnort: Apfeltrach (Unterallgäu) Verein: agm, T2 Beiträge: 186 Status: Offline |
Beitrag 123126
[14. Juni 2007 um 16:19]
Ist warscheinlich eine relativ dumme Frage, aber ich will jeden Fehler meinerseits ausschließen. Ich bin seit langem wieder mal dazu gekommen, etwas zu löten, und jetzt stellte sich mir beim Crimpen die Frage, ob bei den Steckern immer gleiches auf gleiches kommt, oder ob ich den zweiten Stecker um 180° gegenüber dem ersten drehen muss.
Es ist so wie es ist, denn wenn es nicht so wäre, könnten wir nicht Fragen, warum es so ist, wie es ist. |
Reinhard
Überflieger Registriert seit: Sep 2003 Wohnort: Österreich Verein: TRA #10691, AGM Beiträge: 1187 Status: Offline |
Beitrag 123136
[14. Juni 2007 um 17:18]
Hi,
immer Gleiches auf Gleiches, ohne 180° Drehung. Pin 1 auf der Messplatine muss mit Pin 1 der Pegelwandlerplatine verbunden werden (usw.). Gruß Reinhard |
Scorpion_XIII
Poseidon Registriert seit: Jun 2005 Wohnort: Verein: Beiträge: 1154 Status: Offline |
Beitrag 125681
[26. Juli 2007 um 00:54]
Hallo,
hat schon jemand mit dem RS232-Adapter gespielt ? Das Senden vom uC aus per PRINT (Bascom) und empfangen am PC mit dem Terminalprogramm funktioniert ja super. Hat das jemand auch schon mal andersherum probiert? Also PC->uC Ich bin mir nicht sicher, ob ich Bascom nicht richtig benutze (input, inkey(), waitkey(), iskeywaiting()) oder ob ich da irgendwas nicht richtig verkabelt habe? Im Prinzip scheint der uC bei einer Kommunikation immer nur "Rauschen" zu empfangen also zufällige Zahlen kommen an, ob der PC nun gerade sendet oder nicht. Gruß Scorpion_XIII t(h)rust in GARDENA |
Neil
99.9% harmless nerd
Registriert seit: Aug 2000 Wohnort: Delft Verein: SOLARIS Beiträge: 7776 Status: Offline |
Beitrag 125688
[26. Juli 2007 um 09:29]
Hi,
ich habe das mit dem Kurs-Board ohne Probleme hin bekommen. Ich habe mir eine Steuerung gebaut wo ich mit dem Hyperterminal ein servo steuern konnte. Gruß Neil Die Erde ist eine Scheibe. Egal in welche Richtung sich die Menschheit bewegt, sie geht immer auf einen Abgrund zu. |
icepic
SP-Schnüffler Registriert seit: Okt 2003 Wohnort: Schönaich Verein: Solaris-RMB e.V.;TRA #10579 L2;T2 Beiträge: 840 Status: Offline |
Beitrag 125689
[26. Juli 2007 um 10:04]
Hi Stephan,
Jumper auch richtig gesteckt ? (BR6 2 u. 3) Uli Die Frage ob man den "neusten" PC hat, beantwortet man sich, wenn man links neben der SPACE-Taste schaut !!!! |
michael123
PU-Meister Registriert seit: Apr 2007 Wohnort: Kissing Verein: Alleinstarter Kissing .eV Beiträge: 429 Status: Offline |
Beitrag 125697
[26. Juli 2007 um 16:39]
Hallo,
warum machst du das nicht über Interrut? so wie hier: Zitat: Das kommt nach deinem µC Typ und nach der Baudrateneinstellung hin. Zitat: Das kommt ganz zum Schluss in dein Programm nach dem Befehl "END" Ich hoffe du verstehst was ich meine. Im Anhang ist noch ein Prog welches genau das zurückschickt was du auf den µC schickst. Am Anfang meldet sich der µC sogar noch lustig an. Anhang: uart.rar viel Spaß Michael Bitte tut mir den Gefallen und Nutzt die Suchfunktion des Forums, alle Artikel des Forums. Es ist hilfreich und lässt nicht so schnell andere wirklich interessante Topics in die Tiefen rutschen, nur weil ihr eine Frage habt, die schon 1000 mal besprochen wurde. |
Scorpion_XIII
Poseidon Registriert seit: Jun 2005 Wohnort: Verein: Beiträge: 1154 Status: Offline |
Beitrag 125716
[26. Juli 2007 um 18:39]
Hmm, auch mit deinem Programm kommt nur Mist an.
Es kommen dauernd Signale obwohl ich nix sende. Entfernt man den Interrupt, wird das vom uC gut gesendet (Ja hallo wer bist ...) Also scheint das ja von der Hardware zu kommen, Massekontakt? Oder kein Kontakt? Gruß Scorpion_XIII t(h)rust in GARDENA |