реклама на сайте
подробности

 
 
> USART на mega32, пердает нормально, а принимать не хочет
Freeze Anti
сообщение Aug 5 2008, 07:16
Сообщение #1


Частый гость
**

Группа: Новичок
Сообщений: 153
Регистрация: 29-03-07
Из: Саратов
Пользователь №: 26 613



Собственно, сабж.

Инициализировал USART. сигнал с контроллера передается номально. По компорту ловлю на компьютере. А вот если с компьютера передавать - нет реакции. Вот кусок кода моей программы

Код
UBRRH = 0;
UBRRL = 103;  // Скорость обмена USART 9600 бод
UCSRB = 0x18; /* Устанавливаем разряды TXEN и RXEN для
         активизации USART в режиме ввода/вывода через
         выводы 0 и 1 порта D */
UCSRC = 0x03; // Разряды UCSZx установлены для передачи 8 бит данных
while (1)
{

    if(UCSRA & 0x80)
    {
        USARTBuffer = UDR;
        PORTB = USARTBuffer & 0xE0;
        PORTD = (USARTBuffer << 3) & 0xE0;
    }
    
}


просто пытаюсь поморгать светодиодами в зависимости от пришедших данных. ноль реакции.

где может быть ошибка?

использую WinAVR

зы. видел тут в одной из соседних тем советовали указать при инициализации порта RxD выходом. делал. не помогло.


--------------------
!!! All you need is LOVE !!!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
=GM=
сообщение Aug 5 2008, 08:44
Сообщение #2


Ambidexter
*****

Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282



Цитата(Freeze Anti @ Aug 5 2008, 06:16) *
Просто пытаюсь поморгать светодиодами в зависимости от пришедших данных. ноль реакции. Где может быть ошибка?

Покажите, как у вас настроены порты B и D? Может быть они настроены на ввод?


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Aug 5 2008, 09:11
Сообщение #3


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



Цитата(=GM= @ Aug 5 2008, 17:44) *
Покажите, как у вас настроены порты B и D? Может быть они настроены на ввод?

Настройка портов не влияет на функциональность UART.

В архиве приложил свою библиотечку. 100% рабочая! Код не комментирован. С помощью макросов есть возможность выбрать работу с программным FIFO буфером, прерываниями, а также выбрать платформу - AVR или ARM (не до конца портирован).

Код работы с UART содержится в архиве serial.zip, код буфера - в fifobuf.zip
Прикрепленные файлы
Прикрепленный файл  serial.zip ( 2.14 килобайт ) Кол-во скачиваний: 48
Прикрепленный файл  fifobuff.zip ( 975 байт ) Кол-во скачиваний: 38
 


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
SysRq
сообщение Aug 5 2008, 09:13
Сообщение #4


Чайник, 1 литр
****

Группа: Свой
Сообщений: 655
Регистрация: 17-05-06
Из: Moscow
Пользователь №: 17 168



Цитата(haker_fox @ Aug 5 2008, 13:07) *
Настройка портов не влияет на функциональность UART.

А на этих портах предположительно светодиоды висят, речь не об USART..

--

В UCSRC пишете не правильно вроде, надо бы URSEL ставить в 1.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Freeze Anti   USART на mega32   Aug 5 2008, 07:16
- - Палыч   По-моему: UCSRC = 0x06; // Разряды UCSZx установле...   Aug 5 2008, 07:26
- - smac   Цитата(Freeze Anti @ Aug 5 2008, 11:16) С...   Aug 5 2008, 07:34
- - Палыч   Хотя у Вас и ошибка инициализации USART, но МК дол...   Aug 5 2008, 07:46
- - Freeze Anti   Ошибку в инициализации уже исправил. Не помогает. ...   Aug 5 2008, 07:59
|- - sysel   Попробуйте исключить компьютер из ваших эксперимен...   Aug 5 2008, 08:05
|- - Палыч   Цитата(Freeze Anti @ Aug 5 2008, 10:59) Н...   Aug 5 2008, 08:18
|- - sKWO   Цитата(Freeze Anti @ Aug 5 2008, 10:59) Н...   Aug 5 2008, 08:28
|- - haker_fox   Цитата(SysRq @ Aug 5 2008, 18:13) В UCSRC...   Aug 5 2008, 09:40
- - UniBomb   Freeze Anti, во-первых регистры UBRR и UCSRС наход...   Aug 5 2008, 09:14
- - Зайцев Иван   я делал на меге32 8МГц Код#include "bn-185_us...   Aug 5 2008, 09:19
- - Freeze Anti   спасибо за подсказку про URSEL. сейчас попробую. ...   Aug 5 2008, 09:41
|- - haker_fox   Цитата(Freeze Anti @ Aug 5 2008, 18:41) с...   Aug 5 2008, 09:47
- - VladimirYU   Цитата(Freeze Anti @ Aug 5 2008, 11:16) С...   Aug 5 2008, 11:23
- - Freeze Anti   Всем огромное спасибо за ответы. Рядом с max232 бы...   Aug 5 2008, 11:38


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 11:35
Рейтинг@Mail.ru


Страница сгенерированна за 0.0139 секунд с 7
ELECTRONIX ©2004-2016