Например TDA7294

Форум РадиоКот • Просмотр темы - Команды sbi и cbi - второй параметр - переменная?
Форум РадиоКот
Здесь можно немножко помяукать :)

Текущее время: Вс июл 27, 2025 21:24:02

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


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



Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: Команды sbi и cbi - второй параметр - переменная?
СообщениеДобавлено: Ср янв 01, 2014 11:53:42 
Родился

Зарегистрирован: Вт авг 02, 2011 14:23:31
Сообщений: 13
Рейтинг сообщения: 0
С Новым годом! Надо полагать не все интенсивно "болеют" первого числа:)
Вопрос пока такой... Можно ли в ассемблере AVR вышеозначенным командам дать второй параметр, как переменную...
Дело в том, что в программе он должен меняться (номер пина порта) по результатам инкриминирования некоего регистра - допустим достигли какого-то числа в этом регистре - меняем пин порта...
И еще такой вопрос: если мы задали работу аналогового компаратора в инициализации (допустим внутреннее опорное наряжение, а на инвентирующий вход подаем напняжение с делителя - проверяем напряжение питающей батареи..) Так вот... если в процессе выполнения программы на эти пины (AIN0 и AIN1) контреллером "выбрасываются" нули, то повлияет ли это на работу компаратора? Или вопрос это же по другому: если задали компаратор, то имеет ли значение, что "пихаем" программой в соответствующие пины порта (порт B ATtiny 2313)...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Команды sbi и cbi - второй параметр - переменная?
СообщениеДобавлено: Ср янв 01, 2014 13:14:00 
Это не хвост, это антенна
Аватар пользователя

Карма: 7
Рейтинг сообщений: 72
Зарегистрирован: Вт окт 28, 2008 09:00:18
Сообщений: 1438
Откуда: Украина, Харьков
Рейтинг сообщения: 0
Ну так команды УСТАНАВЛИВАЮТ и СБРАСЫВАЮТ БИТЫ!!!!! Какие тут могут быть переменные?

_________________
Порой мне кажется, что я делаю какое-то дерьмо, но когда я вижу, что делают другие, то я чувствую себя гением...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Команды sbi и cbi - второй параметр - переменная?
СообщениеДобавлено: Ср янв 01, 2014 14:51:13 
Друг Кота

Карма: 64
Рейтинг сообщений: 1013
Зарегистрирован: Пт мар 07, 2008 06:54:43
Сообщений: 4332
Откуда: Ижевск
Рейтинг сообщения: 0
Вечно начинающий писал(а):
...если мы задали работу аналогового компаратора в инициализации (допустим внутреннее опорное наряжение, а на инвентирующий вход подаем напняжение с делителя - проверяем напряжение питающей батареи..) Так вот... если в процессе выполнения программы на эти пины (AIN0 и AIN1) контреллером "выбрасываются" нули, то повлияет ли это на работу компаратора? Или вопрос это же по другому: если задали компаратор, то имеет ли значение, что "пихаем" программой в соответствующие пины порта (порт B ATtiny 2313)...
Аналоговый компаратор не может влиять на состояние PB0 и PB1, по которым выводятся данные. Если битом ACBG регистра ACSR подключается встроенный опорник, то PB0 вообще отключается от компаратора и не будет влиять на его работу.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Команды sbi и cbi - второй параметр - переменная?
СообщениеДобавлено: Ср янв 01, 2014 15:04:52 
Опытный кот
Аватар пользователя

Карма: 3
Рейтинг сообщений: 43
Зарегистрирован: Вт апр 12, 2011 18:38:19
Сообщений: 838
Откуда: с Земли
Рейтинг сообщения: 0
Вечно начинающий писал(а):
Вопрос пока такой... Можно ли в ассемблере AVR вышеозначенным командам дать второй параметр, как переменную...
Дело в том, что в программе он должен меняться (номер пина порта) по результатам инкриминирования некоего регистра - допустим достигли какого-то числа в этом регистре - меняем пин порта...

Нет инструкции с переменным значением битов. Прийдется сначала считать значения битов (значение порта), потом выполнить модификации (and, or, eor) и снова вывести в порт. Например, так:
Код:
   in   r16, PORTA
   and r16, r17
   out  PORTA, r16

_________________
Все будет только лучше, в крайнем случае - хуже.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Команды sbi и cbi - второй параметр - переменная?
СообщениеДобавлено: Пт сен 01, 2017 17:23:02 
Встал на лапы

Зарегистрирован: Вт мар 31, 2015 01:12:46
Сообщений: 89
Рейтинг сообщения: 0
Добрый день! тоже есть вопрос по команде sbi.
Чего хочется: что бы кнопка на PD0 замкнулась и засветились два св-диода на PB6 и PB7.
код программы:
.include "tn2313def.inc"

;Инициализация портов
clr R16
out DDRD,R16
ser R16
out PORTD,R16

out DDRB,R16
clr R16
out PORTB,R16

;Основной цикл
MAIN: sbis PIND,PIND0
rjmp left
cbi PINB,7
cbi PINB,6
rjmp MAIN

left: sbi PINB,7
sbi PINB,6

rjmp MAIN

Вопрос такой: почему при НАЖАТОЙ кнопке, когда программа проходит тот же цикл во второй раз команда sbi PINB,7 сбрасывает 7-мой разряд в РВВ PORNB?
Изображение


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Команды sbi и cbi - второй параметр - переменная?
СообщениеДобавлено: Пт сен 01, 2017 20:26:22 
Собутыльник Кота
Аватар пользователя

Карма: 29
Рейтинг сообщений: 651
Зарегистрирован: Сб май 14, 2011 21:16:04
Сообщений: 2708
Откуда: г. Чайковский
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
dumbass писал(а):
во второй раз команда sbi PINB,7 сбрасывает
Регистр PINx предназначен для считывания физического логического состояния на ножке МК, а не для изменения состояния порта. В относительно новых МК была добавлена функция, при записи 1 в PINx инвертируется состояние соответствующего бита соответствующего PORTx.

Запись 0 в PINx действия не оказывает.

_________________
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.


Вернуться наверх
 
Распродажа паяльного оборудования ATTEN!
Паяльные станции, паяльники и аксессуары по самой выгодной цене.

По промокоду radiokot скидка 10%
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 

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


Кто сейчас на форуме

Сейчас этот форум просматривают: Google [Bot] и гости: 11


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

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


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