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

 
 
> прием по UARt
Evgenia
сообщение Aug 20 2008, 13:48
Сообщение #1





Группа: Новичок
Сообщений: 4
Регистрация: 20-08-08
Пользователь №: 39 714



начала программировать сс 2430, помогите плиз с написанием программы по приему по UARTу данных, состоящих из нескольких байт, в моем случае 4 байта.

Сообщение отредактировал Evgenia - Aug 20 2008, 13:49
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 8)
Evgenia
сообщение Aug 20 2008, 16:36
Сообщение #2





Группа: Новичок
Сообщений: 4
Регистрация: 20-08-08
Пользователь №: 39 714



помогите начинающему с приемом по UART, надо принять 4 байта!!
Go to the top of the page
 
+Quote Post
SysRq
сообщение Aug 20 2008, 16:50
Сообщение #3


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

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



Готов принять один!

Народ, активнее, присоединяемся! lol.gif

PS: вы бы хоть отписали с чем работаем..

Сообщение отредактировал SysRq - Aug 20 2008, 16:51
Go to the top of the page
 
+Quote Post
Guest_@Ark_*
сообщение Aug 20 2008, 17:07
Сообщение #4





Guests






Evgenia, скажите хотя бы кто принимает. Догадываюсь, что это микроконтроллер. smile.gif

Где наши "штатные" телепаты?
Go to the top of the page
 
+Quote Post
zltigo
сообщение Aug 20 2008, 17:14
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Moderator:
Тема была перенесена из "51". Помогло smile.gif


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Evgenia
сообщение Aug 21 2008, 05:46
Сообщение #6





Группа: Новичок
Сообщений: 4
Регистрация: 20-08-08
Пользователь №: 39 714



спасибо, что откликнулись))
суть такая, есть да, вы догадливы микроконтроллер, точнее сс2430, с ядром 8051,
есть еще одно устройство, короче
надо послать просто команду по UART этому второму устройству, например "с", при этом то устройство долно ответить,т.е. UART должен принять, причем 4 байта последовательно и положить их в какой то буфер!)))
если Вам не сложно, помогите с кодом на С)))
Go to the top of the page
 
+Quote Post
Evgenia
сообщение Aug 22 2008, 07:32
Сообщение #7





Группа: Новичок
Сообщений: 4
Регистрация: 20-08-08
Пользователь №: 39 714



помогите с описанием прерывания по приему байтов по UARt!!!! как это реализовать программно в С???
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Aug 22 2008, 07:42
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



2 Evgenia - в этом вопросе вам в даташит камня надо смотреть а не в компилятор..
В разделе исходников, для AVR например, валяется много примеров для работы с уартом на иЯре и гЦЦ..
Пользоваться поиском не пробовали перед задаванием вопроса ?? Тем более что этот вопрос неоднократно обсасывался уже тут...

2 zltigo - шаман однако...
Go to the top of the page
 
+Quote Post
Lotor
сообщение Aug 27 2008, 07:44
Сообщение #9


Местный
***

Группа: Свой
Сообщений: 476
Регистрация: 3-07-07
Из: Санкт-Петербург
Пользователь №: 28 866



Идея такая - настроить прерывания по приему байта и реализовать буфер, при накоплении которого будете его обрабатывать. В кейле будет примерно следующее
Код
#define UART_BUF_SIZE        4

unsigned char UART_BUF[UART_BUF_SIZE];
bit receive_flag=0;

void Input_Serial_Port() interrupt 4
{
    unsigned char temp;
        if(RI) // Если произошел прием символа
        {
            if(!receive_flag)
            {
                for(temp=0;temp<UART_BUF_SIZE-1;temp++) // Сдвигаем буфер влево всегда, организуем очередь
                    {
                        UART_BUF[temp]=UART_BUF[temp+1];
                    }                

                    UART_BUF[UART_BUF_SIZE-1]=SBUF;

                if (UART_BUF[0]=='@') // Допустим @ указывает на нужную посылку,
                    receive_flag=1; // то устанавливаем  флаг приема, который анализируется программой

            }
            
            RI=0;
        }
}


Спрашивайте, что конкретно не понятно. =)


--------------------
Ковырял чукча отверткой в ухе, звук в телевизоре и пропал.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 27th July 2025 - 15:42
Рейтинг@Mail.ru


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