Форум РадиоКот https://radiokot.ru/forum/ |
|
Команды sbi и cbi - второй параметр - переменная? https://radiokot.ru/forum/viewtopic.php?f=57&t=98785 |
Страница 1 из 1 |
Автор: | Вечно начинающий [ Ср янв 01, 2014 11:53:42 ] |
Заголовок сообщения: | Команды sbi и cbi - второй параметр - переменная? |
С Новым годом! Надо полагать не все интенсивно "болеют" первого числа:) Вопрос пока такой... Можно ли в ассемблере AVR вышеозначенным командам дать второй параметр, как переменную... Дело в том, что в программе он должен меняться (номер пина порта) по результатам инкриминирования некоего регистра - допустим достигли какого-то числа в этом регистре - меняем пин порта... И еще такой вопрос: если мы задали работу аналогового компаратора в инициализации (допустим внутреннее опорное наряжение, а на инвентирующий вход подаем напняжение с делителя - проверяем напряжение питающей батареи..) Так вот... если в процессе выполнения программы на эти пины (AIN0 и AIN1) контреллером "выбрасываются" нули, то повлияет ли это на работу компаратора? Или вопрос это же по другому: если задали компаратор, то имеет ли значение, что "пихаем" программой в соответствующие пины порта (порт B ATtiny 2313)... |
Автор: | Dr. Alex [ Ср янв 01, 2014 13:14:00 ] |
Заголовок сообщения: | Re: Команды sbi и cbi - второй параметр - переменная? |
Ну так команды УСТАНАВЛИВАЮТ и СБРАСЫВАЮТ БИТЫ!!!!! Какие тут могут быть переменные? |
Автор: | akl [ Ср янв 01, 2014 14:51:13 ] |
Заголовок сообщения: | Re: Команды sbi и cbi - второй параметр - переменная? |
Вечно начинающий писал(а): ...если мы задали работу аналогового компаратора в инициализации (допустим внутреннее опорное наряжение, а на инвентирующий вход подаем напняжение с делителя - проверяем напряжение питающей батареи..) Так вот... если в процессе выполнения программы на эти пины (AIN0 и AIN1) контреллером "выбрасываются" нули, то повлияет ли это на работу компаратора? Или вопрос это же по другому: если задали компаратор, то имеет ли значение, что "пихаем" программой в соответствующие пины порта (порт B ATtiny 2313)... Аналоговый компаратор не может влиять на состояние PB0 и PB1, по которым выводятся данные. Если битом ACBG регистра ACSR подключается встроенный опорник, то PB0 вообще отключается от компаратора и не будет влиять на его работу.
|
Автор: | coredumped [ Ср янв 01, 2014 15:04:52 ] |
Заголовок сообщения: | Re: Команды sbi и cbi - второй параметр - переменная? |
Вечно начинающий писал(а): Вопрос пока такой... Можно ли в ассемблере AVR вышеозначенным командам дать второй параметр, как переменную... Дело в том, что в программе он должен меняться (номер пина порта) по результатам инкриминирования некоего регистра - допустим достигли какого-то числа в этом регистре - меняем пин порта... Нет инструкции с переменным значением битов. Прийдется сначала считать значения битов (значение порта), потом выполнить модификации (and, or, eor) и снова вывести в порт. Например, так: Код: in r16, PORTA
and r16, r17 out PORTA, r16 |
Автор: | Z_h_e [ Пт сен 01, 2017 20:26:22 ] |
Заголовок сообщения: | Re: Команды sbi и cbi - второй параметр - переменная? |
dumbass писал(а): во второй раз команда sbi PINB,7 сбрасывает Регистр PINx предназначен для считывания физического логического состояния на ножке МК, а не для изменения состояния порта. В относительно новых МК была добавлена функция, при записи 1 в PINx инвертируется состояние соответствующего бита соответствующего PORTx.Запись 0 в PINx действия не оказывает. |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |