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

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


Ответить

Пт сен 22, 2006 03:46:00

Уже упоминалось :)

Вт окт 17, 2006 20:45:11

Доброго всем времени суток. Собрал я значит :), девайс по схеме (прилож.). Все хорошо пашет, печатает "Hello!" по моей программе. НО, хочу принять какое-либо слово, пишу:
Код:
if (getchar=='I') {
       printf("OK");       }

И чегото не работает. Почему?
Вложения
USART_.GIF
(18.13 KiB) Скачиваний: 759

Вс окт 22, 2006 11:17:06

Юзай scanf

Вс окт 22, 2006 11:19:05

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

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

там же и основное про подключение LCD.

Вс окт 22, 2006 13:33:08

Дмитрий О писал(а):Отлично. Нашел то что надо. Резонный вопрос: где взять нормальный CVAVR? В нете поискал, скачал, в одном архиве ограничения на уарт и на размер файла, в другом пароль нужен. Разумеется, пароля нигде не нашел :(


CVAVR.narod.ru естественно, на сером фоне.

Вс окт 22, 2006 19:05:20

Блин, что за напасть? Не работает!
Код:
while (1)
      {
      // Place your code here
     
      if (getchar()=='I'){   
      putsf("Hello!");}
      };

Посылаю в порт I, и в ответ ничего не получаю...

Вс окт 22, 2006 20:10:53

в VMALB сделайте и увидите в чем дело.

Вт окт 24, 2006 15:56:05

Блин этот vmlab никак запускаться не хочет с проекта cvavr. Мож прямо скажете, в чем дело? :) Я уж как только ни пробовал. хелп весь перелазил. Ну не ПАШЕТ:(

Ср окт 25, 2006 01:50:54

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

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

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

======
Я просто не знаю в чем у тебя проблема. знал бы так сказал.

Ср окт 25, 2006 15:38:08

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

Ср окт 25, 2006 16:10:33

там (про что не разрешено говорить) написано - это сообщения VMLAB о контроле за правильностью кода. На них можно не обращать внимания так как он просто не знает что собака не включена у нас.

Ср окт 25, 2006 16:11:18

перевод на translate.ru

Вс янв 28, 2007 11:52:42

Доброго времени суток.
Собрал окончательное устройство, и теперь речь зашла окончательно про прошивку.
Код:
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 параллельно обратновключенных :) светодиодов. Флаг мигинг означает мигание красного св-да. При горении зеленого заодно включается и оптопара, и коммутирует нарузку.

Вс янв 28, 2007 14:33:57

В Си есть функции сравнения строк strcmp(),strncmp кроме того есть функции возвращаюшие указатель на начало подстроки в строке тока не помню их точно надо в справу лесть.

Вс янв 28, 2007 15:50:04

но strcmp кажется не работает с массивами. ей нужна строка. я пробовал с помощью прерывания "прилепить" полученный символ к строке. строка так и осталась пуста...

Вс янв 28, 2007 16:05:22

советую посмотреть help в CVAVR и распознавание строк есть в ФАК по AVR http://www.roboforum.ru/viewtopic.htm?p=11560

Вс янв 28, 2007 16:23:20

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


не обращайте внимания. вы просто не укзали ему что у вас фьюзами не включен WDT и он вас предупреждает.

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

хотя в опциях можно настроить все, я не настраиваю.

Пт янв 11, 2008 14:47:53

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

С уважением, Олег.

Пн янв 14, 2008 04:54:54

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

С уважением, Олег.

Ответил в личку. Обсуждение если я правильно все понимаю, не имеет отношения к статье напрямую. ))

Чт окт 30, 2008 04:47:30

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