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
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
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.
Vor den Erfolg haben die Götter den Schweiß gesetzt
Lesezeichen