USART AT Mega 8.

Вопросы и замечания по статьям и схемам, представленным на нашем сайте

При поддержке РадиоКОТструктор.ру


Аватара пользователя
Mamonth
Вымогатель припоя
Сообщения: 534
Зарегистрирован: Пн янв 16, 2006 08:00:17
Откуда: Иркутск

Сообщение Mamonth »

Уже упоминалось :)
Today fine night...
Реклама
Аватара пользователя
Дмитрий О
Вымогатель припоя
Сообщения: 635
Зарегистрирован: Пн авг 29, 2005 16:27:04
Откуда: Дмитров
Контактная информация:

Сообщение Дмитрий О »

Доброго всем времени суток. Собрал я значит :), девайс по схеме (прилож.). Все хорошо пашет, печатает "Hello!" по моей программе. НО, хочу принять какое-либо слово, пишу:

Код: Выделить всё

if (getchar=='I') {
       printf("OK");       }
И чегото не работает. Почему?
Вложения
USART_.GIF
(18.13 КБ) 805 скачиваний
aka Diamond
Реклама
Аватара пользователя
Mamonth
Вымогатель припоя
Сообщения: 534
Зарегистрирован: Пн янв 16, 2006 08:00:17
Откуда: Иркутск

Сообщение Mamonth »

Юзай scanf
Today fine night...
Аватара пользователя
avr123.nm.ru
Вечно гонимый
Сообщения: 331
Зарегистрирован: Пн сен 04, 2006 20:25:28
Откуда: самоучитель по микроконтроллерам
Контактная информация:

Сообщение avr123.nm.ru »

может нужно писать getchar() ?

вообще очень подробно и с рабочими примерами о связи с ПК с помошью UART USART написано на одноименном ресурсе - USARTavr.narod.ru

там же и основное про подключение LCD.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
avr123.nm.ru
Вечно гонимый
Сообщения: 331
Зарегистрирован: Пн сен 04, 2006 20:25:28
Откуда: самоучитель по микроконтроллерам
Контактная информация:

Сообщение avr123.nm.ru »

Дмитрий О писал(а):Отлично. Нашел то что надо. Резонный вопрос: где взять нормальный CVAVR? В нете поискал, скачал, в одном архиве ограничения на уарт и на размер файла, в другом пароль нужен. Разумеется, пароля нигде не нашел :(
CVAVR.narod.ru естественно, на сером фоне.
Реклама
Аватара пользователя
Дмитрий О
Вымогатель припоя
Сообщения: 635
Зарегистрирован: Пн авг 29, 2005 16:27:04
Откуда: Дмитров
Контактная информация:

Сообщение Дмитрий О »

Блин, что за напасть? Не работает!

Код: Выделить всё

while (1)
      {
      // Place your code here 
      
      if (getchar()=='I'){   
      putsf("Hello!");}
      };
Посылаю в порт I, и в ответ ничего не получаю...
aka Diamond
Реклама
Аватара пользователя
avr123.nm.ru
Вечно гонимый
Сообщения: 331
Зарегистрирован: Пн сен 04, 2006 20:25:28
Откуда: самоучитель по микроконтроллерам
Контактная информация:

Сообщение avr123.nm.ru »

в VMALB сделайте и увидите в чем дело.
Аватара пользователя
Дмитрий О
Вымогатель припоя
Сообщения: 635
Зарегистрирован: Пн авг 29, 2005 16:27:04
Откуда: Дмитров
Контактная информация:

Сообщение Дмитрий О »

Блин этот vmlab никак запускаться не хочет с проекта cvavr. Мож прямо скажете, в чем дело? :) Я уж как только ни пробовал. хелп весь перелазил. Ну не ПАШЕТ:(
aka Diamond
Аватара пользователя
avr123.nm.ru
Вечно гонимый
Сообщения: 331
Зарегистрирован: Пн сен 04, 2006 20:25:28
Откуда: самоучитель по микроконтроллерам
Контактная информация:

Сообщение avr123.nm.ru »

Скачай пожалуйста шаблон тут
http://radiokot.ru/forum/viewtopic.php?t=2273

Убедись что проги работают, потом прогони свою прогу.

VMLAB очень хорошая программа - простая и работает.

======
Я просто не знаю в чем у тебя проблема. знал бы так сказал.
Аватара пользователя
Дмитрий О
Вымогатель припоя
Сообщения: 635
Зарегистрирован: Пн авг 29, 2005 16:27:04
Откуда: Дмитров
Контактная информация:

Сообщение Дмитрий О »

Спасибо! Скачал. Вот чего пишел вмлаб при отладке (отладка работает):

Код: Выделить всё

[PC = $002A, Time =    0.28 ms, {WDG}]: Watchdog Reset (WDR) must always be executed before the Watchdog Timer is enabled
Как жмеш на светофор, такое хренье вылазит.
aka Diamond
Аватара пользователя
avr123.nm.ru
Вечно гонимый
Сообщения: 331
Зарегистрирован: Пн сен 04, 2006 20:25:28
Откуда: самоучитель по микроконтроллерам
Контактная информация:

Сообщение avr123.nm.ru »

там (про что не разрешено говорить) написано - это сообщения VMLAB о контроле за правильностью кода. На них можно не обращать внимания так как он просто не знает что собака не включена у нас.
Аватара пользователя
avr123.nm.ru
Вечно гонимый
Сообщения: 331
Зарегистрирован: Пн сен 04, 2006 20:25:28
Откуда: самоучитель по микроконтроллерам
Контактная информация:

Сообщение avr123.nm.ru »

перевод на translate.ru
Аватара пользователя
Дмитрий О
Вымогатель припоя
Сообщения: 635
Зарегистрирован: Пн авг 29, 2005 16:27:04
Откуда: Дмитров
Контактная информация:

Сообщение Дмитрий О »

Доброго времени суток.
Собрал окончательное устройство, и теперь речь зашла окончательно про прошивку.

Код: Выделить всё

interrupt [USART_RXC] void usart_rx_isr(void)
{ 
char status,data; 
 
status=UCSRA; //Читаем статус USART
data=UDR;  //Читаем принятый байт из регистра USART

if ((status & (FRAMING_ERROR | PARITY_ERROR | DATA_OVERRUN))==0)  //Проверка на наличие ошибок
   {
      if (data=='A') putsf(about);       //About информация
      if (data=='S') putsf(strping);        //Пинг устройства
      if (data=='U'){miging=0;PORTB=2;} //Включить девайс
      if (data=='D'){miging=0;PORTB=1;} //Выключить девайс
      if (data=='O'){miging=0;PORTB=0;} //Отключить индикатор
      if (data=='M'){miging=1;PORTB=0;} //Мигание красного индикатора
     };
}
Собсно, с си я разобрался, и кроме этого в голову ничево не приходит. Хотелось бы, чтоб МК понимал (как модем АТ команды) длинные комманды, например, ABOUT. Для этого можно например создать массив буфера, как это делает генер кода, и с ним сравнивать. Но как? И потом: scanf не работает при сгенерированном cvavr коде. Может, есть у кого либо опыт работы с этим?

ЗЫ К рортб подключена оптопара и 2 параллельно обратновключенных :) светодиодов. Флаг мигинг означает мигание красного св-да. При горении зеленого заодно включается и оптопара, и коммутирует нарузку.
aka Diamond
Аватара пользователя
moLCHec
Мявтор!
Сообщения: 825
Зарегистрирован: Вс дек 18, 2005 20:04:42
Откуда: Свердловская обл.
Контактная информация:

Сообщение moLCHec »

В Си есть функции сравнения строк strcmp(),strncmp кроме того есть функции возвращаюшие указатель на начало подстроки в строке тока не помню их точно надо в справу лесть.
Настоящий кот всегда либо голоден,
либо невыспался ...
Аватара пользователя
Дмитрий О
Вымогатель припоя
Сообщения: 635
Зарегистрирован: Пн авг 29, 2005 16:27:04
Откуда: Дмитров
Контактная информация:

Сообщение Дмитрий О »

но strcmp кажется не работает с массивами. ей нужна строка. я пробовал с помощью прерывания "прилепить" полученный символ к строке. строка так и осталась пуста...
aka Diamond
Аватара пользователя
Abakt
Вечно гонимый
Сообщения: 568
Зарегистрирован: Ср янв 10, 2007 19:15:51

Сообщение Abakt »

советую посмотреть help в CVAVR и распознавание строк есть в ФАК по AVR http://www.roboforum.ru/viewtopic.htm?p=11560
Аватара пользователя
Abakt
Вечно гонимый
Сообщения: 568
Зарегистрирован: Ср янв 10, 2007 19:15:51

Сообщение Abakt »

Дмитрий О писал(а):Спасибо! Скачал. Вот чего пишел вмлаб при отладке (отладка работает):

Код: Выделить всё

[PC = $002A, Time =    0.28 ms, {WDG}]: Watchdog Reset (WDR) must always be executed before the Watchdog Timer is enabled
Как жмеш на светофор, такое хренье вылазит.
не обращайте внимания. вы просто не укзали ему что у вас фьюзами не включен WDT и он вас предупреждает.

жмите светофор еще и еще, дайте VMLAB выговорится ...

хотя в опциях можно настроить все, я не настраиваю.
_Олег_
Родился
Сообщения: 1
Зарегистрирован: Пт янв 11, 2008 14:21:36

Сообщение _Олег_ »

Здравствуйте, я так понял тема по статье "USART AT Mega 8". У меня такой вопрос: вы написали -
"написано QAM-16 и преобразование Фурье для OFDM модулятора/демодулятора".
Не могли бы вы по подробнее рассказать и если не трудно, не могли бы вы поделится кодом.
Заранее спаибо.

С уважением, Олег.
Аватара пользователя
Mamonth
Вымогатель припоя
Сообщения: 534
Зарегистрирован: Пн янв 16, 2006 08:00:17
Откуда: Иркутск

Сообщение Mamonth »

_Олег_ писал(а):Здравствуйте, я так понял тема по статье "USART AT Mega 8". У меня такой вопрос: вы написали -
"написано QAM-16 и преобразование Фурье для OFDM модулятора/демодулятора".
Не могли бы вы по подробнее рассказать и если не трудно, не могли бы вы поделится кодом.
Заранее спаибо.

С уважением, Олег.
Ответил в личку. Обсуждение если я правильно все понимаю, не имеет отношения к статье напрямую. ))
Today fine night...
Аватара пользователя
sinobi
Встал на лапы
Сообщения: 104
Зарегистрирован: Сб фев 24, 2007 15:49:35
Контактная информация:

Сообщение sinobi »

Подскажите,а как вводить ат команды с помощью cvavr?
Ответить

Вернуться в «Статьи»