Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 27.01.2015, 21:01  
Nikolaysherbakov
Временная регистрация
 
Регистрация: 28.07.2011
Адрес: Петропавловск, Казахстан.
Сообщений: 61
Сказал спасибо: 10
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
Nikolaysherbakov на пути к лучшему
По умолчанию Re: Форматирование данных и передача даных UART

За пинок спасибо, в прерывании нужно было только данные обрабатывать, но не передавать.
Реклама:
Nikolaysherbakov вне форума  
Непрочитано 27.01.2015, 21:48  
Nikolaysherbakov
Временная регистрация
 
Регистрация: 28.07.2011
Адрес: Петропавловск, Казахстан.
Сообщений: 61
Сказал спасибо: 10
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
Nikolaysherbakov на пути к лучшему
По умолчанию Re: форматирование данных и передача даных UART

Сообщение от dosikus Посмотреть сообщение
Проблема высосана из пальца ...
Без обид, если спецалист, реальный, посоветуй...
Nikolaysherbakov вне форума  
Непрочитано 28.01.2015, 14:38  
WindoЗavr
Заблокирован
 
Регистрация: 26.12.2013
Сообщений: 379
Сказал спасибо: 66
Сказали Спасибо 61 раз(а) в 23 сообщении(ях)
WindoЗavr на пути к лучшему
По умолчанию Re: Форматирование данных и передача даных UART

а почему программа то это не распознаёт?
PHP код:
#include ‹mega8.h›
#include ‹stdio.h›
#include ‹delay.h›
void main(void)
{

char massiv[5]={'11','22','33','44','55'};
bit on=0;
int i=0;
int a=0;

PORTC=0x01;
DDRC=0x00;
UCSRA=0x00;
UCSRB=0x08;
UCSRC=0x86;
UBRRH=0x00;
UBRRL=0x33;


while (
1)
 {      
 
   
   if(
a5){    
     
a++ ;   
      
delay_ms (20);
       if(
on==0
       {
         
UDR=massiv[i];
         
i++;
         if(
i5)
         {
         
i=0;
         }
         
on=1;
       }      
       if(
PINC.0!=0)
       {
       
on=0;
       }       
     }   
      else  {
      
delay_ms (1000); 
      
a=0;    
      
i=0;
      
UDR='?';
      };
     };  

я же вроде правильно собираю посылки для неё
WindoЗavr вне форума  
Непрочитано 28.01.2015, 14:48  
WindoЗavr
Заблокирован
 
Регистрация: 26.12.2013
Сообщений: 379
Сказал спасибо: 66
Сказали Спасибо 61 раз(а) в 23 сообщении(ях)
WindoЗavr на пути к лучшему
По умолчанию Re: Форматирование данных и передача даных UART

и даже так
место единицы пишет 3536
PHP код:
while (1)
      {
      
putchar('1');
      
delay_ms(1000);

      };

как принимать ascii ?
WindoЗavr вне форума  
Непрочитано 28.01.2015, 15:16  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,968
Сказал спасибо: 2,552
Сказали Спасибо 11,849 раз(а) в 5,938 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Форматирование данных и передача даных UART

Признак пакета - '?'. Потому - "?1234", но принято будет 4660 (десятичных).
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor на форуме  
Непрочитано 28.01.2015, 15:33  
WindoЗavr
Заблокирован
 
Регистрация: 26.12.2013
Сообщений: 379
Сказал спасибо: 66
Сказали Спасибо 61 раз(а) в 23 сообщении(ях)
WindoЗavr на пути к лучшему
По умолчанию Re: Форматирование данных и передача даных UART

а как сделать так, что бы совпало отправленное и принятое?
WindoЗavr вне форума  
Непрочитано 28.01.2015, 15:38  
DK
Почётный гражданин KAZUS.RU
 
Аватар для DK
 
Регистрация: 10.05.2003
Адрес: Москва
Сообщений: 2,529
Сказал спасибо: 737
Сказали Спасибо 1,927 раз(а) в 799 сообщении(ях)
DK на пути к лучшему
По умолчанию Re: Форматирование данных и передача даных UART

Сообщение от WindoЗavr Посмотреть сообщение
char massiv[5]={'11','22','33','44','55'};
Это как Вы в ОДИН байт запихиваете ДВА ascii символа? А если IDE в UTF-8 работает, так и вообще 4.

Сообщение от WindoЗavr Посмотреть сообщение
место единицы пишет 3536
м.б. UTF-8? Попробуйте putchar(49);

Сообщение от WindoЗavr
как принимать ascii ?
Так же, как и любой другой байт. А если имеется в виду "чем" - терминалкой любой. Хоть родной виндовой.
__________________
Опыт - это школа, в которой человек узнает, каким дураком он был раньше.

Последний раз редактировалось DK; 28.01.2015 в 15:42.
DK вне форума  
Непрочитано 28.01.2015, 15:48  
WindoЗavr
Заблокирован
 
Регистрация: 26.12.2013
Сообщений: 379
Сказал спасибо: 66
Сказали Спасибо 61 раз(а) в 23 сообщении(ях)
WindoЗavr на пути к лучшему
По умолчанию Re: Форматирование данных и передача даных UART

PHP код:
#include ‹mega8.h›
#include ‹stdio.h›
#include ‹delay.h›
void main(void)
{
 

 
PORTC=0x01;
DDRC=0x00;
UCSRA=0x00;
UCSRB=0x08;
UCSRC=0x86;
UBRRH=0x00;
UBRRL=0x33;
 
while (
1)
      {
      
putchar('49');
      
delay_ms(1000);

      };

прога 38352 отвечает
терминал только 9 показывает в аскии

PHP код:
//---------------------------------------------------------------------------

char ntoa(char n) {          // Ïðåîáðàçîâàíèå íèáëà â ASCII
  
n=n&0x0f;
  if (
n0x0an+=48;     // 0x30
  
else n+=55;             // 0x37
  
return n;
}

void i2btoa(int nchar *mas) {   // Ïðåáðàçîâàíèå äâóõ áàéòîâ â ASCII
  
for(int i=3i›-1i--) mas[i]=ntoa(n››abs(4*(i-3)));
}

char aton(char c) {          // Ïðåîáðàçîâàíèå îäíîãî áàéòà â íèáë
  
if(c0x3Ac-=0x30;
  else  
c-=0x37;
  if(
c0x0fc=0;
  return 
c;
}

int a4btoi(char *mas) {      // Ïðåîáðàçîâàíèå ñòðîêè èç ÷åòûðåõ ASCII â int
  
int n=0;

  for (
int i=3i›-1i--) n+=aton(mas[i])‹‹abs(4*(i-3));
  return 
n;
}
//--------------------------------------------------------------------------- 
это в программе на компе
WindoЗavr вне форума  
Непрочитано 28.01.2015, 15:56  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,968
Сказал спасибо: 2,552
Сказали Спасибо 11,849 раз(а) в 5,938 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Форматирование данных и передача даных UART

Сообщение от WindoЗavr Посмотреть сообщение
а как сделать так, что бы
В виндячем примере давал функцию преобразования int в ASCII. Она там используется для передачи. Ей передаются в параметрах целое и указатель на массив.

ПС i2btoa преобразование двухбайтного целого в АСКИ.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.

Последний раз редактировалось akegor; 28.01.2015 в 15:59.
akegor на форуме  
Непрочитано 28.01.2015, 16:00  
WindoЗavr
Заблокирован
 
Регистрация: 26.12.2013
Сообщений: 379
Сказал спасибо: 66
Сказали Спасибо 61 раз(а) в 23 сообщении(ях)
WindoЗavr на пути к лучшему
По умолчанию Re: Форматирование данных и передача даных UART

Сообщение от akegor Посмотреть сообщение
В виндячем примере давал функцию преобразования int в ASCII. Она там используется для передачи. Ей передаются в параметрах целое и указатель на массив.
т.е. если я передаю в ASCII, мне преобразовывать не нужно?
WindoЗavr вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Беспроводная передача данных 1кб/с , 3км. Как и чем? Zemlyanov Микроконтроллеры, АЦП, память и т.д 5 29.01.2015 10:02
Тормоза при передаче данных через UART в Bluetooth модуль rus_12345 Микроконтроллеры, АЦП, память и т.д 8 05.01.2015 19:39
Передача данных через UART в AVR микроконтроллерах. harry7777 AVR 54 09.11.2013 20:40
Передача данных в UART из текстового файла bombardier_rotax Proteus 6 24.02.2010 20:50
PIC16F877A pawelk Микроконтроллеры, АЦП, память и т.д 17 28.05.2005 23:54


Часовой пояс GMT +4, время: 17:12.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot