Hallo, ich (Anfänger uC) habe einen Atmega32 über einen FT232 Konverter an USB hängen. Erkennung des Mikrokontrollers und download von Programmen geht problemlos. Nun möchte ich gerne über das Hyper-/Terminal mit dem Kerl kommunizieren. Sprich er gibt mir den Wert des ADC oder andere Variablen an und ich kann ihm z.B sagen er soll Variable XY auf folgenden Wert ändern. Ist dies in der beschriebenen Form irgendwie möglich, wenn ja wie in etwa? Besten Dank :)
Hallo Bauzli, das musst Du ihm beibringen..... die Frage ist, welche Sprache möchtest Du mit ihm sprechen: C oder Assembler? Gruss Otto
Hallo, danke erstmal für die Antwort :) Ich programmiere in C und verwende den GCC Compiler.
Hallo, ich hab mich etwas schlauer gemacht. Ich habe nun ein kleines Testprogramm geschrieben jedoch ohne Erfolg. Anbei seht ihr den Code (8 Datenbit - 1 Stopbit - Baud 19.2k), habe ich etwas falsch gemacht oder vergessen?
1 | void USART_Init( unsigned int baud ) |
2 | {
|
3 | /* Set baud rate */
|
4 | UBRRH = (unsigned char)(baud>>8); |
5 | UBRRL = (unsigned char)baud; |
6 | /* Enable receiver and transmitter */
|
7 | UCSRB = (1<<RXEN)|(1<<TXEN); |
8 | /* Set frame format: 8data, 1stop bit */
|
9 | UCSRC = (1<<URSEL)|(0<<USBS)|(3<<UCSZ0); |
10 | }
|
11 | |
12 | int main(void) |
13 | {
|
14 | Init(); |
15 | USART_Init(19200); |
16 | |
17 | while (!(UCSR0A & (1<<UDRE))) |
18 | {}
|
19 | UDR = 'x'; |
20 | }
|
Hallo bauzli,
> habe ich etwas falsch gemacht oder vergessen?
was passiert denn ?
Otto
leider gar nichts.:( Ich habe schon einige Beispiel-Codes, UART-, AVR-Anleitungen gelesen, aber ich komme einfach nicht weiter, und weiss nicht weshalb es nicht funktioniert.
> leider gar nichts.:( 1. läuft der Controller ? Lass eine LED blinken 2. ist die RS232-Verbindung richtig hergestellt ? Miss mit dem Scope, ob der Controller an TxD etwas herausgibt Otto
Die UBRR_Register sind etwas 'anders' einzustellen, als du mal so ausprobierst -- Hast wirklich Irgendwas dazu gelesen (Tut., DATASHEET)? Falls du das liest, http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#UART_initialisieren findest du wahrscheinlich (wenigstens) den gröbsten (USART-) Fehler... hth. Jörg
Hallo, anbei ein Demoprojekt, welches die RS232 sowie ein LCD-Display sehr gut unterstützt. Erstellt mit AVRLibc u. dem AVR Studio 4.13. P.S. Die Baudrate ist 9600 baud. Für höhere Baudraten muss die interne Frequenz über CKSEL u. SUT (siehe Fuses u. Datenblatt des uC's) hochgesetzt werden. Wichtig ist auch im Hyperterminal die Flußkontrolle zu deaktivieren. Gruß Theo
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.