2017-09-14 3 views
0
connexion

: USB de modules d'interface TTL quatre broches: 1) 0v volts de AVR 2) vcc-5 volts AVR 3) TXD-TX de avr 4) RXD-RX de avr et le module d'interface série USB vers TTL connecté à un PC en utilisant un câble convertisseur USB vers RS-232 DB9.Je veux transmettre des données à partir de AVR à pc.whats mal en dessous de connexion ou un code

ci-dessous est le code:

#include<avr/io.h> 

void UART_transmit(unsigned char data); 

int main(void) 

{ 

    unsigned char i,message[]="i love india\r\n"; 
    DDRD=0x00; 
    PORTD=0xFF; 
    UCSRA=0; 
    UCSRB=1<<TXEN; // transmitter enable 
    UCSRC=1<<URSEL | 1<<UCSZ1 | 1<<UCSZ0; // 8 data bit, a stop, none parity 
    UBRRH=0; 
     UBRRL=5; // for 9600 baud at 1MHz 

     while(1) 

     { 

     for(i=0;message[i];i++) 



    { 

     UART_transmit(message[i]); 

     } 

     } // while(1) end 

     } // main() end 

void UART_transmit(unsigned char data) 
{ 
    while(!(UCSRA & (1<<UDRE))); 
    UDR=data; 
} 
+0

Avez-vous essayé de connecter TXD du module USB-TTL à Rx de l'avr (et RXD à Tx)? –

+0

oui j'ai essayé aussi – divya

Répondre

0

RX de chaque appareil doit être connecté à TX de l'autre, et vice versa, à moins que vous utilisez un câble null modem, dans ce cas, vos connexions sont correctes. Vous pouvez essayer d'utiliser un multimètre et google pour déterminer si votre câble de connexion est droit ou null-modem.

Je vous recommande également de réviser votre code comme indiqué dans la note d'application du fabricant AVR306: Utilisation de l'AVR® UART en C. Ceci est la référence faisant autorité sur la configuration et l'utilisation de l'UART sur les microcontrôleurs AVR.