AVR studio в вопросах и ответах

Обсуждаем контроллеры компании Atmel.
kotriks
Грызет канифоль
Сообщения: 274
Зарегистрирован: Чт апр 28, 2011 15:08:58

Re: AVR studio 4 в вопросах и ответах

Сообщение kotriks »

Спасибо огроменное что бы я без вас делал!!!! Дайте я вас расцелую :chmoked: :))
Аватара пользователя
vitalik_1984
Поставщик валерьянки для Кота
Сообщения: 2482
Зарегистрирован: Пт авг 27, 2010 05:57:06
Откуда: Тюмень
Контактная информация:

Re: AVR studio 4 в вопросах и ответах

Сообщение vitalik_1984 »

kotriks писал(а):Спасибо огроменное что бы я без вас делал!!!!

С нашей помощью бы самостоятельно сделали :roll:
vitalik_1984 писал(а):

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

fputstr("Incorrect"); 
  

oleg110592 писал(а):

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

uputs((unsigned char*)"Enter last key\n\r"); 

Похоже, не правда ли?
Аватара пользователя
oleg110592
Друг Кота
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

Re: AVR studio 4 в вопросах и ответах

Сообщение oleg110592 »

да тут большинство людей на форуме надо целовать (надо просто виртуально :tea: ) - сам тут многому учусь.
kotriks
Грызет канифоль
Сообщения: 274
Зарегистрирован: Чт апр 28, 2011 15:08:58

Re: AVR studio 4 в вопросах и ответах

Сообщение kotriks »

ребята как сделать ввод комманд не цифрами а словами

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

ISR(USART_RX_vect)
{
int b;
b = UDR0;
if (b=='1') read();
}

чтобы вызов функции

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

 read();
вызывался вводом слова read. ??
Аватара пользователя
Аlex
Модератор
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля
Контактная информация:

Re: AVR studio 4 в вопросах и ответах

Сообщение Аlex »

Принимать в буфер и, по окончанию приёма (или "на лету"), анализировать его.

ЗЫ: А почему Вы принимаете и сравниваете символ, а объявили переменную как int ?
kotriks
Грызет канифоль
Сообщения: 274
Зарегистрирован: Чт апр 28, 2011 15:08:58

Re: AVR studio 4 в вопросах и ответах

Сообщение kotriks »

Аlex писал(а):
ЗЫ: А почему Вы принимаете и сравниваете символ, а объявили переменную как int ?

не вижу разницы char или int что так что так работает одинаково.
Принимать в буфер и, по окончанию приёма (или "на лету"), анализировать его.

знал бы как не спрашивал :))
Аватара пользователя
Аlex
Модератор
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля
Контактная информация:

Re: AVR studio 4 в вопросах и ответах

Сообщение Аlex »

kotriks писал(а):не вижу разницы char или int что так что так работает одинаково.
Для Вас по-барабану как, лишь бы работало ? :)

kotriks писал(а):знал бы как не спрашивал :))
Что "знал бы как" ? Мы в голову Вам залезть не можем, чтобы узнать что Вы знаете, а что нет, и что Вам нужно конкретно узнать :) Вы спросили - Вам ответили.
Pavel1985
Родился
Сообщения: 3
Зарегистрирован: Пн дек 02, 2013 01:58:34

Re: AVR studio 4 в вопросах и ответах

Сообщение Pavel1985 »

Здравствуйте, хотел бы проконсультироваться у специалистов). Вот думаю заняться новым хобби, программировать микроконтроллеры и на их базе собирать всякие интересные гаджеты (Квадрокоптеры, радиопередатчики и прочие игрушки). На данный момент есть небольшие навыки в программировании. Но меня очень мучает вопрос, потяну ли я такую ношу ))). Так как никаких измерительных приборов и элементной базы не имеется, то это хобби кажется довольно-таки затратным (например, цена осциллографа немного смутила, а ещё паяльник нужен и т.п. )))) ).

Так вот вопрос! Существует ли виртуальная среда для разработки, например, цифрового радиопередатчика (в AVR studio есть необходимые компоненты для теста?). Т.к. в виртуальной среде измерительные приборы и элементы бесплатны))), а так же хотелось бы посмотреть как оно пойдёт, вдруг не моё?! Или может кто посоветует какую-либо другую среду разработки.

P.S. Надеюсь в нужную ветку вопрос написал? )
kotriks
Грызет канифоль
Сообщения: 274
Зарегистрирован: Чт апр 28, 2011 15:08:58

Re: AVR studio 4 в вопросах и ответах

Сообщение kotriks »

сделал так но не работает ввожу ! и сразу вызывается функция, в кодвижене работает если ввожу !read

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

void activeCommand(char c[])

if (c[0]=='r'&&c[1]=='e'&&c[2]=='a'&&c[3]=='d')
   {
   read(); 
   }
                   
}

unsigned char i, COMMAND[4];
unsigned char i = 0;

ISR(USART_RX_vect)
{
int b;
b = UDR0;

if (b != '!')
   {
   COMMAND[i] = b;
   i++; 
   }
else
   {
   i = 0;
   activeCommand(COMMAND);
   }
}

в авр студии как то по другому всё :)
Smen
Грызет канифоль
Сообщения: 256
Зарегистрирован: Вт окт 08, 2013 07:38:59
Откуда: СПб

Re: AVR studio 4 в вопросах и ответах

Сообщение Smen »

Pavel1985 писал(а):Т.к. в виртуальной среде измерительные приборы и элементы бесплатны
Только среда это платная. И даже очень.
Посмотрите Proteus.
P.S.: А вообще, судя по направлению деятельности, рекомендую поискать специализированный форум по моделированию с радиоуправлением. Там уже есть готовые проекты.
Alexeyslav
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич
Контактная информация:

Re: AVR studio 4 в вопросах и ответах

Сообщение Alexeyslav »

Существует ли виртуальная среда для разработки, например, цифрового радиопередатчика

Тут ведь какая вещь, все симуляторы очень далеки от реальности и обычно требуется тонкое знание происходящих процессов чтобы запустить их в симуляторе. Симулятор оправдан в основном лишь для окончательной полировки идеи или совсем начальной стадии для отладки очень простых вещей(подергать выводом и т.д.), подбора параметров которые в реальности будешь очень долго и затратно подбирать и т.д.
Аватара пользователя
oleg110592
Друг Кота
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

Re: AVR studio 4 в вопросах и ответах

Сообщение oleg110592 »

kotriks писал(а):работает если ввожу !read

имхо будет работать если read!
kotriks
Грызет канифоль
Сообщения: 274
Зарегистрирован: Чт апр 28, 2011 15:08:58

Re: AVR studio 4 в вопросах и ответах

Сообщение kotriks »

тока ! тоже работает и без дописи read :)
Аватара пользователя
oleg110592
Друг Кота
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

Re: AVR studio 4 в вопросах и ответах

Сообщение oleg110592 »

Если очищать буфер на 'i' не будет срабатывать

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

else{
   i = 0;
   activeCommand(COMMAND);
   c[0]='0';
   c[1]='0';
   c[2]='0';
   c[3]='0';
}
Pavel1985
Родился
Сообщения: 3
Зарегистрирован: Пн дек 02, 2013 01:58:34

Re: AVR studio 4 в вопросах и ответах

Сообщение Pavel1985 »

Smen писал(а):Только среда это платная. И даже очень.
Посмотрите Proteus.
P.S.: А вообще, судя по направлению деятельности, рекомендую поискать специализированный форум по моделированию с радиоуправлением. Там уже есть готовые проекты.

На сколько я понял, в моделировании с радиоуправлением используются "готовые модули" из которых собирается устройство. А хочется уметь самому собирать такие модули.

В Proteus можно передатчик и приёмник смоделировать, чтобы 2-ый код передавать? А то после прочтения статей на тему модуляций появился некий ужас ))) Я даже не представляю сколько компонентов и какие измерительные приборы мне понадобятся, чтобы самому это пощупать, поэкспериментировать.

Alexeyslav писал(а):Тут ведь какая вещь, все симуляторы очень далеки от реальности и обычно требуется тонкое знание происходящих процессов чтобы запустить их в симуляторе. Симулятор оправдан в основном лишь для окончательной полировки идеи или совсем начальной стадии для отладки очень простых вещей(подергать выводом и т.д.), подбора параметров которые в реальности будешь очень долго и затратно подбирать и т.д.


А общую "идеальную" схему нельзя смоделировать, чтобы понять основы, например, какая модуляция бывает и как оно работает? А потом уже опираясь на неё собирать нормальные схемы подгоняя под наш "не идеальный мир"?
Alexeyslav
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич
Контактная информация:

Re: AVR studio 4 в вопросах и ответах

Сообщение Alexeyslav »

Какая модуляция бывает проще в книжках почитать, там все проверено и работает годами - нет смысла проверять в симуляторе базовые вещи.

В Proteus можно передатчик и приёмник смоделировать, чтобы 2-ый код передавать?
Зачем? с этой задачей обычный провод не справляется?

Выход передатчика соединяешь со входом приемника оставляя радиоканал в виде черного ящика - тебя интересует только то что сигнал передается неискаженным с выходе передатчика до входа приемника. Дальше уже идет разные уровни уточнения, например вводится элемент реализующий "помеху" в передаче и смотришь как с этим справляется спроектированная аппаратура.
Pavel1985
Родился
Сообщения: 3
Зарегистрирован: Пн дек 02, 2013 01:58:34

Re: AVR studio 4 в вопросах и ответах

Сообщение Pavel1985 »

Спасибо, идею понял!
Последний раз редактировалось Gudd-Head Вт дек 03, 2013 11:41:51, всего редактировалось 2 раза.
Причина: Нарушение п.2.7 Правил Форума. На первый раз просто поправил
Аватара пользователя
Kill17
Открыл глаза
Сообщения: 63
Зарегистрирован: Вс май 30, 2010 20:27:33
Откуда: Санкт-Петербург
Контактная информация:

Re: AVR studio 4 в вопросах и ответах

Сообщение Kill17 »

Добрый день!

Начал осваивать AVRStudio. Набросал программку, которая при получении символа D в ответ отправляет Atmega168. Пробую в железе, байты распознает, даже отвечает, но вместо символов только H60 идет. Подскажите, что не правильно делаю?
Камень Atmega168

Спойлер

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

           .nolist
           .include "m168def.inc"
           .list

    .equ XTAL = 20000     ;÷àñòîòà ãåíåðàòîðà â êÃö
    .equ BAUD = 115200   ;íåîáõîäèìàÿ ñêîðîñòü îáìåíà â áèò/ñ
    .equ NB = ((10000*XTAL)/(16*BAUD)-5)/10

    .def temp  = R16     ;âñïîìîãàòåëüíûé ðåãèñòð
   
           .cseg
           .org $0

      ldi   temp,low(RAMEND) ;èíèöèàëèçàöèÿ ñòåêà
     STS   SPL,temp
      ldi   temp,high(RAMEND)
     STS   SPH,temp
     clr   temp        ;çàäàåì ïàðàìåòðû USART: 115200, 8-N-1
      STS   UBRR0H,temp
      ldi   temp,NB   
      STS   UBRR0L,temp
      ldi   temp,(1<<RXEN0)|(1<<TXEN0)   
      STS   UCSR0B,temp
      ldi   temp,(1<<UCSZ00)|(1<<UCSZ01)
      STS   UCSR0C,temp

;            Ïîäïðîãðàììà çàãðóç÷èê
; R16 - ðåãèñòð äëÿ ïðèåìà/ïåðåäà÷è äàííûõ ïî USART
; R17 - ðåãèñòð äëÿ ïðîìåæóòî÷íûõ îïåðàöèé
; R18 - èñïîëüçóåòñÿ êàê ñ÷åò÷èê ñëîâ
; ZH:ZL - ðåãèñòð ñ àäðåñîì ñòðàíèöû è óêàçàòåëü íà ñòðîêó
; R1,R0 - èñïîëüçóþòñÿ ñ èíñòðóêöèåé spm

boot_loader:
      rcall getc       ;ïðèíèìàåì ÷åðåç ïîðò êîìàíäó
      cpi   R16,'D'    ;åñëè "D", òî ïåðåäàåì ñòðîêó
      brne  bl1
      rjmp  device_id  ;ïîäòâåðæäåíèÿ ïðèñóòñòâèÿ íà ëèíèè
 
bl1: 
      cpi   R16,'O'    ;åñëè "O", òî çàâåðøåíèå ïîäïðîãðàììû
      brne  bl2
     ret              ;åñëè ïðèíÿò èíîé ñèìâîë, òî âîçâðàùàåì 
bl2:
      rcall put_err    ;ñèìâîë îøèáêè "?"
      rjmp  boot_loader
      
device_id: 
      ldi   ZH,high(2*id_string);çàíîñèì â óêàçàòåëü Z àäðåñ
      ldi   ZL,low(2*id_string) ;íà÷àëà ñòðîêè ïîäòâåðæäåíèÿ
 di1:
      lpm   R16,Z+   ;ïåðåäàåì ñèìâîëû äî òåõ ïîð, ïîêà
      tst   R16      ;íå âñòðåòèòñÿ 0 (êîíåö ñòðîêè)
      breq  boot_loader
      rcall putc
      rjmp  di1


;           Ïîäïðîãðàììà ïåðåäà÷è áàéòà
; R16 - áàéò äëÿ ïåðåäà÷è íà âõîäå â ïîäïðîãðàììó
putc:
      LDS   R16, UCSR0A
     sbrs   R16, UDRE0
    ; sbis  UCSR0A,UDRE0 ;îæèäàåì ïîêà îñâîáîäèòñÿ ðåãèñòð
      rjmp  putc       ;äàííûõ ïåðåäàò÷èêà USART
      sts   UDR0,R16    ;ïåðåäàåì áàéò äàííûõ
      ret

;            Ïîäïðîãðàììà ïðèåìà áàéòà
; R16 - ïðèíÿòûé áàéò íà âûõîäå èç ïîäïðîãðàììû
getc:   
     
     LDS    R16, UCSR0A
     sbrs   R16, RXC0
     ;sbis  UCSR0A,RXC0  ;îæèäàåì ïîêà íå áóäåò ïðèíÿò áàéò       
      rjmp  getc
      LDS    R16,UDR0    ;ïåðåíîñèì áàéò â ðàáî÷èé ðåãèñòð
      ret


;     Ïîäïðîãðàììà ïåðåäà÷è ñèìâîëà îøèáêè "?"
put_err:
      ldi   R16,$33
      rcall putc             
      ret

id_string:   ;ñòðîêà ïîäòâåðæäåíèÿ
   .db   "Atmega168",0

PS - разобрался, при отправки затирал байт в регистре)
Аватара пользователя
vitalik_1984
Поставщик валерьянки для Кота
Сообщения: 2482
Зарегистрирован: Пт авг 27, 2010 05:57:06
Откуда: Тюмень
Контактная информация:

Re: AVR studio 4 в вопросах и ответах

Сообщение vitalik_1984 »

Блин неужели трудно открыть файл *.С и скопировать оттуда? Зачем такие кракозябры отправлять? Из редактора студии какая то херня копируется.
nirq
Опытный кот
Сообщения: 758
Зарегистрирован: Вс фев 10, 2013 15:26:00

Re: AVR studio 4 в вопросах и ответах

Сообщение nirq »

Херня получается из-за языка, на который переключена клавиатура в окне-источнике.
Ответить

Вернуться в «AVR»