PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem mit Multiplexing und Datenübertragung



KiR0
17.12.2006, 18:17
Hi,

bevor ich die Layoutmaschine anwerfe möchte ich hier mal die Profis fragen.

Folgende Problemstellung:

Eine Hauptsteuerung mit einem ATmega32 hat einige Zeitkritische Aufgaben zu lösen. Im Programm im ATmega32 wird ziemlich viel rumgerechnet. Das Ergebnis ist eine 8-stellige Zahl. Diese soll auf einem Siebensegment Display (ebenfalls 8 Stellig) angezeigt werden. Ich kann dem Mega32 aber nicht auch noch das Multiplexen aufdrücken, deshalb möchte ich das Auslagern.
Vorschlag meinerseits: Ich nehme einen ATtiny2313 und hänge da die 8 Stück 7-Segment-Anzeigen dran (über treiber versteht sich) Der Tiny soll dann das Multiplexen und das Anzeigen der betreffenden Werte erledigen. Somit entlaste ich den Mega32. Der Tiny2313 bekommt den Wert entweder über RS232 vom Mega32 oder über I2C, je nach dem was am besten und zuverlässigsten der Hardwareausstattung des Tiny entspricht oder in Bascom zu realisieren ist. Klappt das so wie ich mir das vorstelle, bzw muß ich irgend etwas beachten? Die Verbindung über SPI oder I2C währe mir am liebsten dann habe ich die RS232 frei für ein Funkmodul :D

Hat jemand ein Codebeispiel für den Tiny2313 oder vorschläge was ich beachten muß? Meine Sorge ist daß das Multiplexing den Datenaustausch über die Schnittstelle behindert und wenn ja wie ich das Umgehe.

Gruß
KiR0

KiR0
19.12.2006, 14:33
Hi,

eine andere Variante der Fragestellung. Hat das Multiplexing wenn ich das doch den MEga32 machen lasse einfluß auf die Taktrate und die Zuverlässigkeit der RS232 schnittstelle? Ich verwende natürlich den Hardware UART des Mega32.

Greetz
Killing-Rolle :D

Vitis
19.12.2006, 16:50
Die UART des Mega32 läuft von alleine, sprich die Daten werden in
ein Register geschrieben vom Programm her, die Übertragung
und auch das Timing für die Datenbits macht die Hardware selbständig.
Nur eben das Daten nachladen muss das Programm dann machen.
Wenn Du die Serielle Schnittstelle als buffered konfigurierst
vom Bascom her läuft das Nachschieben der Daten interruptgesteuert
quasi selbständig ab während das Hauptprogramm seine Schleifen
dreht. Bei der Hardware-TWI oder Hardware-SPI geht das im
Übrigen auch so, allerdings hat bascom für den Puffer keine
eingebaute Routine, die musste dann eben manuell
erstellen. Stichwort währ da Ringpuffer und auch Transmission complete
interrupt.