Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Микроконтроллеры (MCU) и микропроцессоры (MPU) > USART Atmega 128


Автор: deeman30rus 31.5.2012, 15:41
Доброго времени суток товарищи обращаюсь к вам с такой проблемой. 

у меня есть отладочная плата ATMEGA128 с преобразователем USB\COM на борту, 
она работает на 8МГц частоте. обнаружил такую проблему. на этой частоте не работает приём по USART0 

настройка USART

Код

// USART0 initialization
// Communication Parameters: 8 Data, 1 Stop, No Parity
// USART0 Receiver: On
// USART0 Transmitter: On
// USART0 Mode: Asynchronous
// USART0 Baud Rate: 4800
UCSR0A=0x00;
UCSR0B=0x18;
UCSR0C=0x06;
UBRR0H=0x00;
UBRR0L=0x67;





тело программы

Код


        printf("I'm ready");
        break_line;// = putchar(0x0D)
        
        scanf("%s", message); 
        
        printf("%s", message);
        break_line;



если закомментить строчку scanf(), то всё работает кошерно, т.е. в порт передача есть, а приёма нет! почему такое может быть ?
та же самая ерунда и с getchar()


в качестве билдера использую CodeVision AVR 

программатор USBASP 

Автор: LeonidPr 1.6.2012, 07:14
С ATMEGA не работал, но может и так чем помогу.
Во - первых, исправна ли плата, если возможно, посмотрите линию RX контроллера осциллографом, приходит ли туда сигнал, когда вы посылаете байт на плату?
Во - вторых, преобразователь наверняка собран на чем-то типа FT232 от FTDI. При подключенном USB кабеле в компьютере, который используется для связи должен появиться виртуальный COM порт. Все ли нормально с ним (есть ли в наличии, включен ли, установлена ли последняя версия драйверов). Далее, какой программой пользуетесь для передачи? Сответствует ли скорость передачи, установленная в программе, скорости, на которой работает контроллер?
P.S. Хотя, если вы говорите, что передача от платы есть, наверное с настройками все в порядке. Но не помешает проверить.
Насколько я понимаю scanf ждет прихода CR/LF. Отсылаете символ перевода строки в конце посылки?

Автор: xvr 2.6.2012, 18:48
И еще вопрос - как в программе описан message?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)