Прием По Usart В Cvavr

19-01-2014, 16:22 От: admin Посмотрели: 1638
Добрый день уважаемые! Есть вопрос , на который не могу найти / получить ответ.

Есть такой код:





// USART Receiver buffer
#define RX_BUFFER_SIZE 100
char rx_buffer[RX_BUFFER_SIZE];

// USART Receiver interrupt service routine
interrupt [USART_RXC] void usart_rx_isr(void)
{
char status,data;
unsigned char buffer_clear , x;
//status=UCSRA;
data=UDR;
//if ((status & (FRAMING_ERROR | PARITY_ERROR | DATA_OVERRUN))==0)
// {
buffer_clear=0;
//for(x=0; x<99; x++) if(rx_buffer[x] != 0) buffer_clear=1;

//if(buffer_clear==0)
// {
rx_buffer[rx_wr_index]=data;

if (++rx_wr_index == RX_BUFFER_SIZE) {
rx_wr_index=0;
};

if (++rx_counter == RX_BUFFER_SIZE)
{
rx_counter=0;
rx_buffer_overflow=1;
};
// };

PORTB.0 = ~PORTB.0;
}



С генерированный  визардом.

Если , к примеру передатчиком , с другой стороны послать "START" , По какому адресу окажется это слово в массиве rx_buffer[] ?

Что то не могу отловить... Или его нужно искать в массиве? И оно может быть в любых ячейках? Вроде по коду видно, что запишутся символы в первые ячейки....
Раздел: AVR

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться, либо войти на сайт под своим именем.

Обсудить на форуме


На момент добавления Прием По Usart В Cvavr все ссылки были рабочие.
Все публикации статей, книг и журналов, представлены на этом сайте, исключительно для ознакомления,
авторские права на эти публикации принадлежат авторам статей, книг и издательствам журналов!
Подробно тут | Жалоба

Добавление комментария

Ваше имя:*
E-Mail:*
Текст:
Вопрос:
Решите уравнения x+2x=789
Ответ:*
Введите два слова, показанных на изображении:



Опрос

Ваши предпочтения в TRX


Одинарное преобразование
Двойное преобразование
Прямое преобразование
SDR
Другое
Мне всё равно

Календарь новостей
«    Апрель 2024    »
ПнВтСрЧтПтСбВс
1234567
891011121314
15161718192021
22232425262728
2930