CodeVision AVR printf-Funktion für die zweite UART! Benötigen Sie Hilfe

E

ECSD

Guest
Hey Guys: Jeder da draußen verwenden CodeVision C-Compiler mit ATMEGA162? Ich bin bemüht, herauszufinden, wie die printf legt, scanf-Funktion für beide UART verwenden. Jede Idee oder Beispiel-Code? Ich benutze für beide UART unterbrechen und konfigurieren Sie es durch CodeWizardAVR. Aber die prinf, scanf, legt nicht unterstützt! Nur putchar für beide USART unterstützt. ! Dringend Hilfe gesucht! Dank
 
CodeWizard generiert diesen Code für Ihre USART1:
Code:
 / / Hole ein Zeichen aus dem USART1 Receiver # pragma benutzt + char getchar1 (void) {char Status, Daten; while (1) {while (((status = UCSR1A) & RX_COMPLETE ) == 0); data = UDR1; if ((Status & (FRAMING_ERROR | PARITY_ERROR | DATA_OVERRUN)) == 0) return Daten;};} # pragma-Einsatz / / Schreibe ein Zeichen USART1 Transmitter # pragma benutzt + Leere putchar1 (char c) {while ((UCSR1A & DATA_REGISTER_EMPTY) == 0); UDR1 = c;} # pragma-Einsatz
# pragma benutzt + ist die folgende Funktion bedeuten, dass nach überschreibt Standard printf etc. grundlegende Routine (Redirect zu UART1).
Ich bin bemüht, herauszufinden, wie die printf verwenden, setzt, scanf-Funktion für beide UART.
Du nicht beide UART0 und UART1 für printf etc kann, außer yopu schreib.
 
Hallo budhy: Vielen Dank für Ihre Antwort. Ja ich verstehe. Ich bin mit dem putchar1 und putchar0 kaufen. Aber ich will mehr, wie zu meiner eigenen printf1 und printf0, schreiben lernen puts0 & puts1 und etc zu schreiben über die stdio Funktion. Hoffen auf einige Beispiel-Code von jemand mit Erfahrung. Mit der Funktion printf scanf sowohl für USART, können wir verwenden, um mit GSM-Modem, PC und anderen Geräten zu kommunizieren ASCII-Protokoll leichter seit ATMEGA kommt mit 2 USART ... Ich möchte den scanf zu scanf0 & scanf1 überschreiben, so kann ich Verwendung von mehr lesbar hohes C in meinem kodierend für das Hauptprogramm zu machen. Und ich hoffe, um mehr zu erfahren, wie meine eigene Funktion, die mir die stdio für andere Geräte wie SPI und I2C überschreiben können schreiben.
 

Welcome to EDABoard.com

Sponsor

Back
Top