hab n kleines problem und würde mich freuen,wenn mir jemand helfen könnte. habe ne leiterplatte aufgebaut, womit ich vorhabe die datenmenge über der seriellen schnittstelle mit einem lcd anzeigen zu lassen. zusätlich wird das bitmuster der dateien über led´s angezeigt. jeweils für die sende und empfangsleitung.die sache mit den leds funktioniert schon, allerdings habe ich echt kein plan, wie ich des mit dem display realisieren soll. benutze fürs display nen at90s2313. soweit funktionieren tut es schon, also bekomm texte auf meinem display (1x16)wiedergegeben. würde dadrüber jetz gern die geschwindigkeit anzeigen lassen mitwievel byte/s momentan übertragen wird. wäre echt glücklich drüber wenn mir jemand nen kleinen anstoß für die programmierung geben könnt. danke im vorraus
Ich habe auch ein Problem, ich verstehe nämlich deine Frage nicht richtig, auch wenn du sie jetzt schon zum zweiten mal stellst... Ich denke mal, du möchtest mit dem 2313 die COM-Schnittstelle belauschen und die Anzahl der erkannten Bytes zählen und anzeigen. Wenn das so ist, dann musst du dich entscheiden, eb du das Senden oder das Empfangen mitzählen willst, denn der 2313 hat nur einen RX-Eingang. Wenn das geklärt ist, dann musst du nur im 2313 die UART korrekt initialisieren (steht im Datenblatt des 2313 unter UART), den Empfangs-Interrupt aktivieren und bei jedem Auftreten des Empfangs-Interrupts ein Register(paar) hochzählen. Dann noch einen Timer-Interrupt, der einen Sekundentakt erzeugt, in dessen ISR du den aktuellen Zählerstand auf dem LCD ausgibst und löscht. So bekommst du jede Sekunde eine neue Ausgabe. Da das LCD ja groß genug ist, kannst du ja zusätzlich noch die erfassten Bytes seit dem letzten Reset anzeigen. Also Textausgabe mit LCD klappt ja schon, wie du die Zahlen in den Registern in anzeigbaren ASCII-Text umwandelst, wurde in den letzten Wochen sehr oft diskutiert. Wenn du mit "im Betreff suchen" nach LCD suchst, dann wirst du sicher fündig. Tja, dein Vorhaben ist im Prinzip kein Problem, man muss sich nur für eine Richtung entscheiden, RX oder TX. Beides geht nunmal nicht mit dem 2313, es sei denn, du möchtest mit dem 2313 zum PC senden, aber darin sehe ich keinen Sinn. Die Platine ist schon fertig? Dann kann ich mal davon ausgehen, dass da auch ein MAX232-IC zur Pegelumsetzung drauf ist und ein baudratentauglicher Quarz für den 2313? Einen ISP-Programmer hast du sicherlich auch und mit der AVR-Programmierung in Assembler kennst du dich auch etwas aus? Dann ran ans Projekt... - Datenblatt lesen, UART für RX mit Interrupt initialisieren, Zählroutine schreiben, Timer initialisieren, Ausgaberoutine (Umwandlung Integer-ASCII) schreiben... ...
ok, ich danke dir, tut mir leid wenn mein vorhaben nich ganz so rübergekommen ist, aber hasts ja verstanden. programmiern tu ich die sache mit über bascom mit ner stk 500 und den takt bekomm ich von nem 4MHz quartz.die einzigste sache is halt noch die assembler programmierung, aber ich gucke ma was sich machen lässt.
4MHz ist aber nicht baudratentauglich, da wäre 3,6864MHz besser. In BASCOM müsste das auch realisierbar sein. Davon habe ich aber keine Ahnung, Assembler ist mir lieber, das ist einfacher. Da schreibt man nur die entsprechenden Werte laut Datenblatt in die entsprechenden I/O-Register und schon funktionieren Timer, Interrupts, UART und all der andere Krams wie gewollt. ...
ja leider lernen wir es mit bascom, bzw. avr-studio. in der berechnung war der 4mhz mit ner fehlerrate von 0,16%. damit kann ich leben. gut, des einzigste prob wird wie gesagt die programmierung der rest funktioniert erstma laut testaufbau. nagut werd mich ma denn ransetzen, kann schreiben wenn ich ne lösung gefunden hab. einen schönen abend noch!
> ja leider lernen wir es mit bascom, bzw. avr-studio. Wer ist "wir"?? Mit AVR-Studio programmiere ich auch, das ist ja AVR-Assembler. BASCOM ist nicht transparent genug, es ist zu weit von der Hardware entfernt. Ich mag es daher nicht. Ein AVR kann kein BASIC, er kann nur Maschinencode. Und Assembler entspricht 1 zu 1 Maschinencode. BASCOM erzeugt zwar auch Maschinencode, zeigt ihn aber nicht in ASM. Da ich aber gern weiß, was ich tue, kann ich sowas nicht gebrauchen. Das macht irgendwie dumm. Also versuche ich ohne BASCOM auszukommen. Beispiele findest du auf www.hanneslux.de. ...
danke für den link, hab ich ja was zutun. mit wir meinte ich unsere klasse. soweit komm ich ganz gut klar, halt mit avr programmierung haperts bei mir bisschen, da komm ich ned so ganz hinterher
edit bin halt noch sehr weit am anfang und hab so gut wie noch keine ahnung, war schon glücklich als ich die leds durchzählen lassen konnte.
Aller Anfang ist schwer... Auch ich habe mit Kleinstprogrämmchen angefangen... ...
>Auch ich habe mit Kleinstprogrämmchen angefangen...
boaa... klingt das geschwollen ;) (<-- ein Smilie...)
> Kleinstprogrämmchen ... Jou, inzwischen sind aber keine "Kleinstprogrämmchen" mehr, sondern "kleine Programme". Die "großen Programme" überlasse ich den Profis. > boaa... klingt das geschwollen Sollte es auch... Grüß die Sprotten... ;-) ...
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.