hallo Spezis, ich sende und empfange Can Bus Daten , dafür benutzte ich µC C515C und CanOe der Firma Vector. Bis jetzt läuft alles, nur das Problem ist dass ich die Daten über Hyperterminal nicht hingekriegt habe. Ich habe versucht mit printf aber geht immer noch nicht. ich bin dankbar für jede Hilfe
Tja, wird an deinem Programm (unbekannt), deiner Hardware (unbekannt), dem Kabel (unbekannt) oder den Terminaleinstellungen (unbekannt) liegen,
ich habe ein anderes Programm auf µC gespielt, es tut was aber mein can-Programm nicht. d.h. hardware, kabel, terminaleinstellung alles ok es bleibt dann nur das Programm eigentlich es läuft mit dem CanOe das Senden und empfangen aber mit Terminal nicht, wenn du mal Auszug aus dem Programm haben willst gebe ich dir
Falk Brunner schrieb: > Kleiner Tip: Netiquette. was meinst du mit deinem Beitrag, brauchst du mehr Details oder was?
Leute, die sich noch nicht einmal vernünftig ausdrücken können, sollten erst recht einen weiten Bogen um die Technik machen...
udo mathias schrieb: > Falk Brunner schrieb: >> Kleiner Tip: Netiquette. > > was meinst du mit deinem Beitrag, brauchst du mehr Details oder was? Schau dir die Informationen, die du angegeben hast, mal an, und dann überleg dir, ob man damit was anfangen kann. Deine Frage liest sich in etwa so: Mein Auto funktioniert nicht. Ich hab die Straße schon überprüft, und die ist in Ordnung, aber trotzdem geht das Auto nicht. Woran liegt das?
also vielen Dank. Ich gebe euch mehr Details ich sende Can Daten mit dem CANoe zum µC, und mit dem Hyperterminal soll ich den kompletten Frame (ID DLC und Data) lesen. Aber ich gehe davon aus dass im Programm was fehlt. Ich bin sehr dankbar für jede Hilfe
Ja, genau, Du hast es erfasst. In dem Programm fehlt was und zwar in Zeile 42.
Markus Müller schrieb: > Ja, genau, Du hast es erfasst. > In dem Programm fehlt was und zwar in Zeile 42. Ich meine ernst. Bitte ich brauche Hilfe ich habe schon mehrere Möglichkeiten versucht umsonst ich kann sagen dass ich nicht fit in der Programmierung bin. Ich habe die UART-Initialisierung gemacht
Kannst Du mal bitte Dein Problem komplett beschreiben? Ich vermute folgendes: [Glaskugelmodus AN] 1. Du hast einen uC, welcher zum einen mit einem CAN-Bus kommuniziert und zum anderen über eine serielle Schnittstelle mit einem PC verbunden ist. 2. Die Kommunikation mit dem CAN Bus funktioniert. 3. Die Kommunikation mit dem PC über die serielle Schnittstelle funktioniert nicht. Frage: An welcher Stelle in Deinem Programm schreibst Du die Daten, die vom CAN-Bus gelesen wurden und an den PC gesendet werden sollen, in den Tx-Puffer der seriellen Schnittstelle auf dem uC? [Glaskugelmodus AUS]
me schrieb: > Frage: An welcher Stelle in Deinem Programm schreibst Du die Daten, die > vom CAN-Bus gelesen wurden und an den PC gesendet werden sollen, in den > Tx-Puffer der seriellen Schnittstelle auf dem uC? > Eigentlich muss ich die Daten vom CAN Bus in dem TX-Puffer der Seriellen Schnittstelle auf dem µC Es geht darum, dass ich die CAN Daten auf dem Hyperterminal angezeigt bekomme
Sind folgende Annahmen richtig? - Dein Gerät ist über eine Schnittstelle mit einem CAN-Bus verbunden. - Dein Gerät kann Daten von dem CAN-Bus lesen. - Dein Gerät ist über eine serielle Schnittstelle mit einem PC verbunden. - Auf dem PC läuft Hyperterminal. Mit Hyperterminal möchtest Du die Daten angezeigt bekommen, die Dein Gerät vom CAN-Bus liest. - Dein Problem ist aber, das Hyperterminal nichts anzeigt. Wenn alle Annahmen korrekt sind: - Gibt es eine Stelle in dem Programm in Deinem Gerät, an der die Daten vom CAN-Bus an den PC gesendet werden?
me schrieb: > Sind folgende Annahmen richtig? > > - Dein Gerät ist über eine Schnittstelle mit einem CAN-Bus verbunden. > > - Dein Gerät kann Daten von dem CAN-Bus lesen. > > - Dein Gerät ist über eine serielle Schnittstelle mit einem PC > verbunden. > > - Auf dem PC läuft Hyperterminal. Mit Hyperterminal möchtest Du die > Daten angezeigt bekommen, die Dein Gerät vom CAN-Bus liest. > > - Dein Problem ist aber, das Hyperterminal nichts anzeigt. > > > > Wenn alle Annahmen korrekt sind: > > - Gibt es eine Stelle in dem Programm in Deinem Gerät, an der die Daten > vom CAN-Bus an den PC gesendet werden? natürlich ist µC verbunden mit dem PC über serielle Schnittstelle der µC kann die CAN Daten lesen mit dem CANoe aber das große Problem ist dass ich nicht weiss wie ich diese Stelle programmiere, ich gegoogelt aber nichts gefunden
Setz endlich deinen verf.... Code hierein, komplett, nicht irgendwelche Bröckchen. Immer wieder sagen dir die Leutchen: ohne Sourcecode geht es nicht - das interessiert dich überhaupt nicht. Wenn du das aber partout nicht willst, musst du dein Problem eben alleine lösen :-(
>Setz endlich deinen verf.... Code hierein, komplett, nicht irgendwelche >Bröckchen. Bist Du dir sicher? Ich habe ihm das jetzt nicht schreiben wollen, denn der ballert das Forum sonst mit Screenshots voll g
udo mathias schrieb: > aber das große Problem ist dass ich nicht weiss wie ich diese Stelle > programmiere, ich gegoogelt aber nichts gefunden Bei den uCs, die ich bisher programmiert habe, war es immer so: Die serielle Schnittstelle des uCs beinhaltet einen Sende- und einen Empfangspuffer; wo sich diese auf Deinem uC befinden, steht in dem Datenblatt zu Deinem uC. Im einfachsten Fall reicht es, die Daten, die über die serielle Schnittstelle zu versenden sind, byteweise in den Sendepuffer zu schreiben - genau so, wie man in eine normale Variable schreibt. Wenn man aber mehr als ein Byte an Daten senden will, benötigt man ein Handshake mit der seriellen Schnittstelle des uCs - dafür stellt dieser i.d.R. weitere Informationen wie "SENDEN_IST_ABGESCHLOSSEN" zur Verfügung. Das Programm muss nun darauf achten, dass nur Daten in den Sendepuffer geschrieben werden, wenn die vorhergehende Sendung bereits abgeschlossen wurde. Eine entsprechende Sequenz könnte so aussehen:
1 | do { |
2 | |
3 | if {SENDEN_IST_ABGESCHLOSSEN == TX-STATUS_DER_UC_UART) { |
4 | |
5 | TX_PUFFER = NAECHSTES_DATENBYTE; |
6 | }
|
7 | |
8 | } while (WEITERE_DATEN_ZUM_SENDEN_VORHANDEN); |
Achja: dieser Link wird Dir zum Verständnis helfen: http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial/Der_UART
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.


