Ньюб вопрос 2 UARTа ввод/вывод пользовать одонвременно

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
Открыл глаза
Сообщения: 69
Зарегистрирован: Ср мар 25, 2009 17:55:03

Сообщение leftmails »

Добрый день!
В заранее прошу прощение за свой ньюб вопрос, но честное слово не могу разобраться самостоятельно, а заключается он в том, как мне обмениваться данными по UART если у меня их 2.
1 порт(юарт) - ПК
2 порт(юарт) - на линию 485 через мах485
раньше обменивался данными через АТмегу16 все норм, но там 1 юарт.)
Использую мк ATMega162, компилятор CodeVision

Пожалуйса подскажите.
Реклама
GP1
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2401
Зарегистрирован: Пт май 23, 2008 19:32:22
Откуда: Россия, Волгоград

Сообщение GP1 »

И в чем проблема?
в 162-й их два, хотя я думаю можно и 1-м обойтись, если не критично по времени обмена.
Чем дальше, тем больше становлюсь занудой...
Изображение
Контактная информация:
Реклама
Открыл глаза
Сообщения: 69
Зарегистрирован: Ср мар 25, 2009 17:55:03

Сообщение leftmails »

Проблемы нет... настройка и прочее не волнует...

меня волнует как в коде на Си в компиляторе отсылать и принимать данные с разных УАРТОВ

допустим когда 1 ЮАРТ puts("asdfsd");
а когда их 2 как вывести?
Вот на примере...
Мне надо в 1 юарт послать "Первый111"
А во второй юарт "Второй222"
Затем получить от первого "ответ11"
И от второго "222"
Я не знаю как это сделать для 2 юартов одновременно
GP1
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2401
Зарегистрирован: Пт май 23, 2008 19:32:22
Откуда: Россия, Волгоград

Сообщение GP1 »

Ну это жди пока Си-шники подключатся, я токмо на асме. :?
Чем дальше, тем больше становлюсь занудой...
Изображение
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Открыл глаза
Сообщения: 69
Зарегистрирован: Ср мар 25, 2009 17:55:03

Сообщение leftmails »

В примерах сия компилятора нашел

poutput=USART0;
printf("This is a test of USART%u.\r",0);

// printf output will be directed to USART1
poutput=USART1;
printf("This is a test of USART%u.\r",1);


Это для тех у кого возникнет аналогичный вопрос...
Плату протравлю прошью МК, если не получится реанимирую тему)
Реклама
Открыл глаза
Сообщения: 69
Зарегистрирован: Ср мар 25, 2009 17:55:03

Сообщение leftmails »

К сожалению этот код (который в примерах CAVR,прикладываю)не помог, посылает оба сообщения в один порт...
Генерирую код в CAVR для 2 портов в разные порты получается посылать только через putchar и putchar1 (это при генерации кода), но посылается только 1 символ, больше 1 символа не могу.
Вложения
2usart_lcd.c
фаил примера с Кодевизиона
(4.58 КБ) 215 скачиваний
Реклама
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»