Технический форум по робототехнике.
grek » 15 июн 2012, 08:15
Подскажите, как правильно настроить порты rs txd и rxd. У меня настроены оба порта на вход, для того чтоб при включении не выдавало значение в порт.Хотя по логике один из них должен быть настроен выходом.
Вопрос к тому,что после небольшого времени работы приходит не понятный ответ с контроллера.Может ли неправильная настройка служить этой ошибкой.Не могу найти причину вызывающую сбой работы порта.
Radist » 15 июн 2012, 08:41
Обычно в даташите приведены примеры настройки на асме и си. Приведите код своей настройки, напишите что за МК - может кто что и подскажет.
grek » 15 июн 2012, 08:57
PORTD_DDR->bit0 = 0;//RXD
PORTD_DDR->bit1 = 0;//TXD
atmega32
Radist » 15 июн 2012, 10:22
партизан на допросе
из этой информации ничего не выжать. Если уарт аппаратный - он сам конфигурирует ноги как надо. Ждем продолжения....
grek » 15 июн 2012, 13:01
может я чего то не допонимаю. Микроконтроллер avr atmega32. На его борту usart . Ноги порта настроены на вход.Если настроить TXD на выход то при включение питания в порт подается значение с микроконтроллера,значение "ъ". Если настроить на входа обе ноги то этого значения нет.Так вот вопрос правильно ли настроены ноги микроконтроллера ведь логичнее было бы настроить ногу на выход?
legion » 15 июн 2012, 13:19
Ты инициализировал USART? Не надо вручную настраивать ноги, он сам все сделает.
grek » 16 июн 2012, 19:35
я настроил ноги и иницилизировал usart. Но если порты настроены по разному, то пролетает буковка при включении,подачи питания. Если одинаково то буква не пролетает.И по логике порт txd должен быть настроен на выход.
legion » 16 июн 2012, 20:31
Когда ты записываешь 1 в TXEN, порт настраивается автоматически. Он игнорирует обычные настройки ноги.
grek » 17 июн 2012, 08:35
а чем тогда объясняется то если нога TXD настроена на выход то при включении пролетает некоторое значение в порт.А если настроена на вход то этого значения при включении нет.