Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C Quellcode formatieren: <code>Quellcode</code> BASIC Quellcode formatieren: <basic>Quellcode</basic> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! -> I > Hi, danke für die fixe Antwort ;-) > > Also wie gesagt hab ich ne CC-Pro 128 MIT App-Board. Allerdings nehm ich die Schnittstellensignale > nicht durch die RS232-Buchse ab, sondern direkt über die Pins TxD und RxD (aus Platzgründen). > Das Andere Board ist das ganz alte Best-Nr: 124079 - 62 . (Weißt du, wie das Ding richtig heißt?) > Dazu gibt es ein Starterboard, welches ich auch benutze, aber das hat damit nichts zu tun. > Die genannten Schnittstellentreiber sind da warsch auch nicht vorhanden. Aber mit nem Terminal auf > dem PC funktioniert alles (Also das Alte Board mit PC verbunden). > > Ganz andere Idee: Nicht die normalen RxD und TxD Ports nehmen, sondern normale Digitale Eingänge, > dann kann man jedes Bit einzeln auslesen, mit Start/Stopp-Bit. Der Rest ist Programmierung... > Wobei ich eine Hardwarelösung bevorzugen würde ;-) > > Oszilloskop hab ich nich, aber mit nem Voltmeter und Lötkolben kann ich scho hobbymässig umgehen ;-) > Mit nem Schaltplan kann ich auch was anfangen. > Ich kann immoment nicht die Spannung messen, da ich nicht zu Hause bin, aber ich werde das tun, sobald > ich kann, allerdings hat das so wie ich das sehe nicht so den praktischen Nutzen... > > Gruß Oliver > > > > Hallo Oliver, > > > > Vorsicht: was logisch klingt, muss deswegen noch lange nicht stimmen - es war wirklich nur eine Idee > > von mir! > > > > Also: ich habe in der Beschreibung nachgesehen, und da steht, dass das CC-Pro 128 Application Board > > den von mir erwähnten Schnittstellentreiber bereits hat. Davon könntest Du dich überzeugen, indem Du > > mit einem Voltmeter die Spannung am TxD-Pin (das wäre Pin2, falls es sich um eine Sub-D-Buchse/ > > Female handelt, oder Pin3, wenn es ein Stecker/Male ist). Im Ruhezustand, wenn also nichts gesendet > > wird, sollten sowas um die -8V anliegen. Ohne den Treiber müssten das dagegen +5V sein. Die > > nominell sogar -12V macht der Treiber übrigens mittels 4 Kondensatoren selber aus den +5V, mit denen > > die Schaltung von aussen versorgt wird. > > > > Nun ist also spannend, wie Deine CC1-Unit aussieht: ist das auch ein Application Board? Ich kenne nur > > die alte 'M-Unit', und die hat den Schnittstellentreiber bestimmt nicht, sodaß ich mir Fehler von der von > > Dir geschilderten Art vorstellen könnte. > > > > Was Du tun kannst?: PullUps helfen nicht, und in der Software kannst Du die von mir gemutmasste > > Invertierung, falls sie denn gegeben ist, nicht wieder 'hinbiegen'. Du hast schon den richtigen Riecher > > bewiesen: die Start- und Stop-Bits bauen die Controller selbsttätig ein, und selbst wenn Du die 8 Daten- > > Bits negieren würdest, dann blieben Start und Stop falsch herum, und die ganze Byte-Erkennung würde > > nicht funktionieren. > > > > Du musst wirklich herausfinden, ob Deine CC-Unit, wie Du sie nennst, auch einen Treiber hat - also > > wieder die Spannung an deren TxD-Pin messen. Wenn da (in Ruhe) auch eine deutlich negative > > Spannung anliegt, dann war meine These Unsinn und Du hast ein anderes Problem. Wenn da +5V sind, > > dann war mein Schuss aus der Hüfte ein Treffer und Du musst einen Schnittstellentreiber dazwischen- > > hängen... > > > > Falls Du das selber nicht herausfinden kannst, dann Versuch' doch mal etwas genauer zu beschreiben, > > was die CC1-Unit für eine Platine ist (z.B. falls es die noch zu kaufen gibt, Bestellnummer), dann kann > > man da vielleicht nachforschen. Ist es nur ein Mini-Platinchen mit gerade dem Controller drauf, oder ist > > das auch so ein Application board mit vielen zusätzlichen Elementen? > > > > Erzähl doch mal: hast du ein Oszilloskop, um die Signale ansehen zu können? Sagt dir ein Schaltplan > > etwas? Hast Du einen Lötkolben? > > > > Nicht verzweifeln: Dein Problem hat bestimmt eine Lösung! > > > > Gruß, Wolfgang > > > > > oha, deine Erklärung klingt logisch und kommt warscheinlich nicht von ungefähr. Ich kenn mich leider mit > > > der Materie nicht so gut aus... > > > Aber 2 Fragen tun sich mir nun auf... > > > 1. woher sollen die 12V kommen, beide Controller arbeiten nur mit 5 V. insofern denke ich, dass das nicht > > > so tragisch ist / war (ich werde weitere Tests natürlich lassen ;-) > > > > > > 2. was kann ich nun tun? um das signal zu invertieren, kann ich RxD und TxD mit nem Pull-Up-Widerstand > > > versehen, oder? Und kann ich das Signal nicht per Software "umdrehen" ? Das Problem ist hierbei, dass > > > ich das start und stop-Bit nicht auslesen kann (zumindest nicht über die RS232-Schnittstellen-Befehle) > > > > > > Oder ist das eher der Holzweg und es geht viel einfacher? > > > > > > Gruß Oliver > > > > > > > Hallo Oliver, > > > > > > > > gleich vorweg: wass ich hier schreibe, ist nicht genau überprüft, sondern nur so'ne Vermutung, die mir > > > > beim Lesen Deines Beitrags in den Sinn kommt: > > > > > > > > Kann es sein, das einer Deiner beiden Controller einen (invertierenden) Schnittstellen-Treiber > > > > (z.B. MAX232) hat, der andere aber nicht? Dann sähe jeder Receiver das Inverse dessen, was der > > > > andere Transmitter gesendet hat, mit dem Erfolg, dass nicht nur die Datenbits andersherum > > > > herauskommen, sondern auch Start- und Stop-Bit jeweils den falschen Pegel haben. Letzteres > > > > könnte evtl. auch erklären, dass scheinbar nur 7 Bit übertragen werden. > > > > > > > > Falls meine Idee zutrifft, so ist das auch hardware-mässig gefährlich: der Treiberbaustein liefert nominell > > > > +/-12V, die für die Pins des ohne (Gegen-)Treiber arbeitenden Controllers hochgefährlich sind. > > > > > > > > Gruß, Wolfgang > > > > > > > > > Hallo > > > > > Ich bin gerade dabei über die serielle Schnittstelle eine Kommunikation zwischen dem CC-Pro 128 App > > > Board > > > > > und der (ur)alten CC1-Unit zu programmieren. > > > > > > > > > > Allerdings ist mir ein Fehler aufgefallen, und ich glaube der liegt an meinem Board, was anderes fällt mir > > > nicht mehr ein -.- > > > > > > > > > > Hier eine Tabelle mir den Werten die ich vom alten Board sende und mit dem CC-Pro empfange: > > > > > > > > > > 0 0 > > > > > 1 127 > > > > > 2 63 > > > > > 3 126 > > > > > 4 31 > > > > > 5 125 > > > > > 6 62 > > > > > 7 124 > > > > > 8 15 > > > > > 9 123 > > > > > 10 61 > > > > > 11 122 > > > > > 12 30 > > > > > 13 121 > > > > > 14 60 > > > > > 15 120 > > > > > 16 7 > > > > > 17 119 > > > > > 18 59 > > > > > 19 118 > > > > > 20 29 > > > > > 21 117 > > > > > > > > > > usw. > > > > > > > > > > Wie man sehen kann, sind sie nicht wie gewollt gleich ;-) > > > > > > > > > > Die Parameter sind > > > > > Serial_Init(0, SR_8BIT | SR_1STOP | SR_NO_PAR , SR_BD9600 ); > > > > > > > > > > Auch mit einer noch langsameren Baudrate kommt das selbe Ergebnis raus, die Kabel sind nur ca 20cm lang, > > > > > und das Programm zum Senden auf dem alten Board funktionier auch, bei Anschluss eines PCs kommen auf dem > > > > > Terminal die richtigen Zeichen an. Es muss also am Pro-Board liegen. > > > > > > > > > > Mir ist außerdem aufgefallen, dass wenn ich mit SR_7BIT statt SR_8BIT starte, die selben (falschen) Zahlen bekomme. > > > > > Außerdem ist keine einzige der empfangenen Zahl größer wie 127. Was dafür spricht, dass das 8. Bit fehlt. > > > > > > > > > > Ist das nun ein Fehler meinerseits oder ist wirklich was defekt ? > > > > > > > > > > Ach ja, ich wollte das ganze noch mit der 2. seriellen schnittstelle testen, allerdings empfängt diese gar keine Werte, > > > > > was auch seltsam ist... > > > > > > > > > > Danke für jeden Tipp > > > > > > > > > > Gruß Oliver > > > > >