Например TDA7294

Форум РадиоКот • Просмотр темы - Ассемблер (ASM) для AVR в вопросах и ответах
Форум РадиоКот
Здесь можно немножко помяукать :)

Текущее время: Вс апр 05, 2026 06:54:25

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 7972 ]     ... , , , 100, , , ...  
Автор Сообщение
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Ср авг 31, 2011 13:03:41 
Родился

Зарегистрирован: Пт июл 09, 2010 10:55:13
Сообщений: 8
Рейтинг сообщения: 0
как на ассемблере в AvrStudio сбросить биты в регистре? Аналогично Сишному выражению PORTB &=(~(1 << PB2)). Ну только для РОН. Справа от знака равно все прокатывает, остается еще умножить на эту маску. При использовании "&" компилятор ругается. Использовать промежуточный регистр, а затем команду AND?


Вернуться наверх
 
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Ср авг 31, 2011 13:31:37 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 2
Рейтинг сообщений: 11
Зарегистрирован: Пт май 23, 2008 19:32:22
Сообщений: 2401
Откуда: Россия, Волгоград
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
для сброса/установки бита РОН в асме есть спец команды
cbr/sbr
аналогично для РВВ
cbi/sbi
c - clear
s - set

_________________
Чем дальше, тем больше становлюсь занудой...
Изображение


Вернуться наверх
 
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Ср авг 31, 2011 13:44:48 
Модератор
Аватар пользователя

Карма: 68
Рейтинг сообщений: 430
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Сообщений: 13490
Откуда: Тамбовская обл.
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Вообще, их проще запоминать как сокращения:
SBI Set Bit in I/O Register
CBI Clear Bit in I/O Register

SBR Set Bit in Register
CBR Clear Bit in Register


Вернуться наверх
 
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Ср авг 31, 2011 13:48:04 
Друг Кота
Аватар пользователя

Карма: 67
Рейтинг сообщений: 1071
Зарегистрирован: Чт сен 18, 2008 12:27:21
Сообщений: 20091
Откуда: Столица Мира Санкт-Петербург
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Гы-гы-гы. НаСИльник, не знающий АСМа :)

_________________
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]


Вернуться наверх
 
Эиком - электронные компоненты и радиодетали
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Ср авг 31, 2011 14:32:42 
Родился

Зарегистрирован: Пт июл 09, 2010 10:55:13
Сообщений: 8
Рейтинг сообщения: 0
CBI/SBI для одного бита. А если я хочу сказать компилятору, чтобы сбросил сразу несколько указанных битов? Например, в даташите, для установки нескольких битов используется запись
Код:
LDI R16, (1<<PB2)|(1<<PB1)|(1<<PB0)
OUT PORTB, R16

Как сбросить?


Вернуться наверх
 
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Ср авг 31, 2011 14:35:47 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 2
Рейтинг сообщений: 11
Зарегистрирован: Пт май 23, 2008 19:32:22
Сообщений: 2401
Откуда: Россия, Волгоград
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
аналогично, только в нужные разряды вместо 1 прописываешь 0
если делать кошерно, то
- читаем порт
- выключаем ненужные разряды
- пишем обратно в порт
тогда точно меняются только нужные разряды.

_________________
Чем дальше, тем больше становлюсь занудой...
Изображение


Вернуться наверх
 
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Ср авг 31, 2011 14:39:56 
Модератор
Аватар пользователя

Карма: 14
Рейтинг сообщений: 37
Зарегистрирован: Чт дек 11, 2008 14:52:26
Сообщений: 11492
Откуда: град Нижний
Рейтинг сообщения: 0
sergy1976 писал(а):
(1<<PB2)|(1<<PB1)|(1<<PB0)
Может проще сразу 0F8h написать..

_________________
ИзображениеМежду людьми возникает напряжение, если у них разный потенциал...


Вернуться наверх
 
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Ср авг 31, 2011 14:48:23 
Модератор
Аватар пользователя

Карма: 68
Рейтинг сообщений: 430
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Сообщений: 13490
Откуда: Тамбовская обл.
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Цитата:
Может проще сразу 0F8h написать..

Неудобно, особенно если биты именованы, например:
Код:
ldi r16,(1<<TXEN)|(1<<RXEN)|(1<<RXCIE)   
out UCSRB,r16 


Цитата:
Как сбросить?

Если кошерно:
Код:
IN R16,PINB
ANDI R16, ~(1<<PB2)|(1<<PB1)|(1<<PB0)
OUT PORTB, R16


Вернуться наверх
 
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Ср авг 31, 2011 18:17:05 
Потрогал лапой паяльник

Карма: 9
Рейтинг сообщений: 30
Зарегистрирован: Пн май 23, 2011 18:27:41
Сообщений: 336
Рейтинг сообщения: 0
SBR то же ORI
CBR то же ANDI


Вернуться наверх
 
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Ср авг 31, 2011 19:28:28 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 2
Рейтинг сообщений: 11
Зарегистрирован: Пт май 23, 2008 19:32:22
Сообщений: 2401
Откуда: Россия, Волгоград
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
BVS писал(а):
SBR то же ORI
CBR то же ANDI

интересная мысль
т.е. бит и байт это одно и тоже :wink:

_________________
Чем дальше, тем больше становлюсь занудой...
Изображение


Вернуться наверх
 
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Ср авг 31, 2011 21:09:39 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 238
Зарегистрирован: Пт янв 29, 2010 10:27:40
Сообщений: 3868
Откуда: Москва
Рейтинг сообщения: 0
GP1 писал(а):
BVS писал(а):
SBR то же ORI
CBR то же ANDI

интересная мысль
т.е. бит и байт это одно и тоже :wink:

Наверно имеется ввиду то, что эти пары команд транслируются в один и тот же код (синонимы).


Вернуться наверх
 
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Ср авг 31, 2011 21:13:00 
Потрогал лапой паяльник

Карма: 9
Рейтинг сообщений: 30
Зарегистрирован: Пн май 23, 2011 18:27:41
Сообщений: 336
Рейтинг сообщения: 0
вы sbr с sbi перепутали, а sbr и ori для процесора одна команда тоже и с cbr-andi


Вернуться наверх
 
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Ср авг 31, 2011 21:14:13 
Потрогал лапой паяльник

Карма: 9
Рейтинг сообщений: 30
Зарегистрирован: Пн май 23, 2011 18:27:41
Сообщений: 336
Рейтинг сообщения: 0
130 команд - миф


Вернуться наверх
 
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Ср авг 31, 2011 22:34:07 
Модератор
Аватар пользователя

Карма: 68
Рейтинг сообщений: 430
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Сообщений: 13490
Откуда: Тамбовская обл.
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
BVS писал(а):
вы sbr с sbi перепутали, а sbr и ori для процесора одна команда тоже и с cbr-andi

Именно так. И cbr и инвертированный andi соответственно
Обратите внимание на коды каманд:
Код:
   154: 00002B   6800  ori r16, 128
   155: 00002C   6800  sbr r16, 128
   156:
   157: 00002D   770F  andi r16, ~128
   158: 00002E   770F  cbr r16, 128
   

Собственно, даташит этого и не скрывает.


Вернуться наверх
 
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Ср авг 31, 2011 23:04:39 
Первый раз сказал Мяу!

Зарегистрирован: Пн июн 09, 2008 23:40:31
Сообщений: 26
Рейтинг сообщения: 0
Atmega8. Прерывание INT0. Подскажите, что записать в регистры GICR и MCUCR чтобы получить прерывание INT0 по нарастанию сигнала? Спасибо!


Вернуться наверх
 
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Чт сен 01, 2011 07:37:06 
Друг Кота
Аватар пользователя

Карма: 67
Рейтинг сообщений: 1071
Зарегистрирован: Чт сен 18, 2008 12:27:21
Сообщений: 20091
Откуда: Столица Мира Санкт-Петербург
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
lag1 писал(а):
Atmega8. Прерывание INT0. Подскажите, что записать в регистры GICR и MCUCR чтобы получить прерывание INT0 по нарастанию сигнала?

А что в даташите пишут?

_________________
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]


Вернуться наверх
 
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Чт сен 01, 2011 07:50:49 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 2
Рейтинг сообщений: 11
Зарегистрирован: Пт май 23, 2008 19:32:22
Сообщений: 2401
Откуда: Россия, Волгоград
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Gudd-Head писал(а):
А что в даташите пишут?

Читать ДШ :shock: , это ж моск напрягать надо...

_________________
Чем дальше, тем больше становлюсь занудой...
Изображение


Вернуться наверх
 
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Чт сен 01, 2011 07:54:26 
Друг Кота
Аватар пользователя

Карма: 67
Рейтинг сообщений: 1071
Зарегистрирован: Чт сен 18, 2008 12:27:21
Сообщений: 20091
Откуда: Столица Мира Санкт-Петербург
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
GP1 писал(а):
Читать ДШ :shock: , это ж моск напрягать надо...

Ёпт, действительно! Когда есть столько народу готового помочь.
Это как часы — зачем их покупать и носить, когда на улице есть столько идиотов, с радостью готовых сказать который час.

_________________
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]


Вернуться наверх
 
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Чт сен 01, 2011 08:20:35 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 238
Зарегистрирован: Пт янв 29, 2010 10:27:40
Сообщений: 3868
Откуда: Москва
Рейтинг сообщения: 0
Что ж вы сразу издеваться, может у человека с английским плохо :))) lag1, смотрите таблицу 31 на стр. 66 - последняя строка (там про биты MCUCR), сразу под ней описание GICR.


Вернуться наверх
 
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Чт сен 01, 2011 08:22:39 
Друг Кота
Аватар пользователя

Карма: 49
Рейтинг сообщений: 392
Зарегистрирован: Вс июл 12, 2009 19:15:29
Сообщений: 7016
Откуда: Ижевск
Рейтинг сообщения: 0
GICR= 0x40 MCUCR= 0x03

_________________
Docendo discimus


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 7972 ]     ... , , , 100, , , ...  

Часовой пояс: UTC + 3 часа


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

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y