Например TDA7294

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





Текущее время: Ср июн 25, 2025 13:41:49

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


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



Начать новую тему Ответить на тему  [ Сообщений: 7952 ]     ... , , , 96, , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Ср авг 03, 2011 10:28:22 
Друг Кота
Аватар пользователя

Карма: 25
Рейтинг сообщений: 99
Зарегистрирован: Вс янв 24, 2010 19:19:52
Сообщений: 4468
Откуда: Главный Улей России (Moscow)
Рейтинг сообщения: 0
А Вы подтягивающие резисторы ставили?
И что делает ваша программа? Где реакции на события?
Код:
ldi Temp,0b01011111
out DDRD,Temp
ldi temp, (1<<PD7)+(1<<PD5)
out PORTD, temp
;----------
PROG_LOOP:

sbis PIND, PIND7
rjmp EVENT_00

sbis PIND, PIND5
rjmp EVENT_01

rjmp PROG_LOOP
;----------
EVENT_00:
......
;----------
EVENT_01:
.......

_________________
I am DX168B and this is my favourite forum on internet!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Ср авг 03, 2011 10:36:41 
Встал на лапы

Карма: 2
Рейтинг сообщений: 2
Зарегистрирован: Пн мар 22, 2010 18:07:52
Сообщений: 122
Рейтинг сообщения: 0
прога просто жмет кнопку

start:
ldi Temp5,1
out PortD,Temp5

;зАДЕРЖКА***********************

;*******************************

ldi Temp5,0
out PortD,Temp5

rjmp PROG_LOOP

пока, все на коленке, в прямом смысле слова... хочется свисти ошибки к мин., чтоб реализовать


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

Карма: 25
Рейтинг сообщений: 99
Зарегистрирован: Вс янв 24, 2010 19:19:52
Сообщений: 4468
Откуда: Главный Улей России (Moscow)
Рейтинг сообщения: 0
Если вы используете внутреннюю подтяжку порта, то у вас уже ошибка в реакции на событие.
(нажатие на кнопку и дёрганье светодиода в ответ)
Смотрите в код:
Код:
ldi temp, (1<<PD7)|(1<<PD5) ;Настраиваем подтяжку порта
out PORTD, temp
ldi temp, 0xFF - ((1<<PB7)+(1<<PB5))
out DDRD, temp ;Настройка входов\выходов
;----------
PROG_LOOP:

sbis PIND, PIND7
rjmp EVENT_00

sbis PIND, PIND5
rjmp EVENT_00

rjmp PROG_LOOP
;----------
EVENT_00:
sbi PORTD, 0 ;Дёрнем ногу PD0 в лог. 1

;*********
DELAY
;*********

cbi PORTD, 0 ;Опустим ногу PD0 в лог. 0
rjmp PROG_LOOP

Вы отправляете значение в ПортД, нарушая тем самым настройку внутренней подтяжки входов ПД7 и ПД5. (задержка при опросе кнопок не рассматривается мною)

_________________
I am DX168B and this is my favourite forum on internet!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Ср авг 03, 2011 11:05:16 
Грызет канифоль
Аватар пользователя

Карма: 2
Рейтинг сообщений: 2
Зарегистрирован: Вт июн 15, 2010 07:16:42
Сообщений: 299
Откуда: Иркутск
Рейтинг сообщения: 0
DX168B писал(а):
Код:
ldi r16, (1<<PD4)|(1<<PD6) ; подтягивающие резисторы на PD4, PD6.
out PORTD, r16
ldi r16, (0<<PD4)|(0<<PD6) ; настройка порта PD4, PD6 на вход.
out DDRD, r16


Так не пробовали? :))) :))) :)))


И что это у Вас получается? 0b00000000, когда нужно так: 0b10101111, только 2 порта на ввод, остальные на вывод (смотрите исходник тов. qmix)

По поводу
Код:
ldi r16, (1<<PD4)|(1<<PD6) ; подтягивающие резисторы на PD4, PD6
out DDRD, r16
ldi r16, ~((1<<PD4)|(1<<PD6)) ; настройка порта PD4, PD6 на ввход
out DDRD, r16


конечно опечатка, нужно так:
Код:
ldi r16, (1<<PD4)|(1<<PD6) ; подтягивающие резисторы на PD4, PD6
out PORTD, r16
ldi r16, ~((1<<PD4)|(1<<PD6)) ; настройка порта PD4, PD6 на ввход
out DDRD, r16


Вернуться наверх
 
В продаже новые LED-драйверы XLC компании MEAN WELL с диммингом нового поколения

Компания MEAN WELL пополнила ассортимент своей широкой линейки светодиодных драйверов новым семейством XLC для внутреннего освещения. Главное отличие – поддержка широкого спектра проводных и беспроводных технологий диммирования. Новинки представлены в MEANWELL.market моделями с мощностями 25 Вт, 40 Вт и 60 Вт. В линейке есть модели, работающие как в режиме стабилизации тока (СС), так и в режиме стабилизации напряжения (CV) значением 12, 24 и 48 В.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Ср авг 03, 2011 11:08:44 
Друг Кота
Аватар пользователя

Карма: 25
Рейтинг сообщений: 99
Зарегистрирован: Вс янв 24, 2010 19:19:52
Сообщений: 4468
Откуда: Главный Улей России (Moscow)
Рейтинг сообщения: 0
Этим я просто указал, что там нули должны быть и имел в виду только указанные ноги, а не весь порт. :) Ясное дело, что оно ничего не даст, кроме 0x00.

_________________
I am DX168B and this is my favourite forum on internet!


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

Карма: 2
Рейтинг сообщений: 2
Зарегистрирован: Пн мар 22, 2010 18:07:52
Сообщений: 122
Рейтинг сообщения: 0
Увы не получилось... буду тогда дорабатывать свой стен... (сейчас это просто панелька со светодиодами в ряд объединенная общим корпусом и воздействие симулируется тыканьем проводка в контакт МК)

как я понял, настройка порта на ед. и есть внутренняя подтяжка
А вот внешняя - это надо поставить на порт емкости 104 и на корпус?


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

По промокоду radiokot скидка 10%
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Ср авг 03, 2011 11:11:06 
Друг Кота
Аватар пользователя

Карма: 67
Рейтинг сообщений: 1060
Зарегистрирован: Чт сен 18, 2008 12:27:21
Сообщений: 19642
Откуда: Столица Мира Санкт-Петербург
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
vit007 писал(а):
А вот внешняя - это надо поставить на порт емкости 104 и на корпус?

Надо ставить резисторы, а не ёмкости :))) И подтягивают обычно к "+". К "-" притягивают.

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


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

Карма: 25
Рейтинг сообщений: 99
Зарегистрирован: Вс янв 24, 2010 19:19:52
Сообщений: 4468
Откуда: Главный Улей России (Moscow)
Рейтинг сообщения: 0
Нет. Еёмкость нужна для избавления от помех и дребезга. Просто ставится резистор на 5.6к между ногой и плюсом питания МК

_________________
I am DX168B and this is my favourite forum on internet!


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

Карма: 67
Рейтинг сообщений: 1060
Зарегистрирован: Чт сен 18, 2008 12:27:21
Сообщений: 19642
Откуда: Столица Мира Санкт-Петербург
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
DX168B писал(а):
Просто ставится резистор на 5.6к между ногой и плюсом питания МК

:shock: Почему именно 5,6???

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Ср авг 03, 2011 11:17:10 
Грызет канифоль
Аватар пользователя

Карма: 2
Рейтинг сообщений: 2
Зарегистрирован: Вт июн 15, 2010 07:16:42
Сообщений: 299
Откуда: Иркутск
Рейтинг сообщения: 0
IfoR писал(а):
qmix писал(а):
кроме ~ можно в двух словах про все это.

Это побитовое НЕ. Или инвертирование. Или функция f(x) = 0xFF - x :)

Rimsky писал(а):
знак ~ означает логическое отрицание (НЕ)

Ну вот не надо. Логическое отрицание - это оператор ! 8) :))


Не пойму Вас, что не так я написал? какой оператор, ну если хотите, то это и есть оператор только для макро ассемблера, макрос. Да дословно Вы расписали, действительно ~ побитовое НЕ, и что, чем здесь, что отличается от того, что я написал?


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

Карма: 25
Рейтинг сообщений: 99
Зарегистрирован: Вс янв 24, 2010 19:19:52
Сообщений: 4468
Откуда: Главный Улей России (Moscow)
Рейтинг сообщения: 0
Gudd-Head писал(а):
:shock: Почему именно 5,6???

Ну, где и в какой схеме. Может и отличается. Я себе это ввёл, как стандарт. Вполне хватает этого сопротивления для подтяжек и притяжек. Да и часто в промышленных схемах видел подтяжку резисторами именно на 5.6к.

_________________
I am DX168B and this is my favourite forum on internet!


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

Карма: 67
Рейтинг сообщений: 1060
Зарегистрирован: Чт сен 18, 2008 12:27:21
Сообщений: 19642
Откуда: Столица Мира Санкт-Петербург
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Мне больше нравится 10к. Самый ходовой "цифровой" резистор ИМХО.

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


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

Карма: 25
Рейтинг сообщений: 99
Зарегистрирован: Вс янв 24, 2010 19:19:52
Сообщений: 4468
Откуда: Главный Улей России (Moscow)
Рейтинг сообщения: 0
Ну, кому как. У меня этих резисторов на 5.6к как грязи. С работы достаются. Вот и пихаю. :)))

_________________
I am DX168B and this is my favourite forum on internet!


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

Карма: 67
Рейтинг сообщений: 1060
Зарегистрирован: Чт сен 18, 2008 12:27:21
Сообщений: 19642
Откуда: Столица Мира Санкт-Петербург
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
DX168B писал(а):
С работы достаются. Вот и пихаю. :)))

Та же фигня, но с 10к и 4,7к :)))

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


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

Карма: 2
Рейтинг сообщений: 2
Зарегистрирован: Пн мар 22, 2010 18:07:52
Сообщений: 122
Рейтинг сообщения: 0
А если ставить фотоэлемент, то надо транзюк (элемент на базу для открытия) вместо кнопки ставить и тот же резюк на Vcc...?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Ср авг 03, 2011 12:44:08 
Встал на лапы

Карма: 2
Рейтинг сообщений: 2
Зарегистрирован: Пн мар 22, 2010 18:07:52
Сообщений: 122
Рейтинг сообщения: 0
и подтяжку ставить на те порты, кот. идут на ввод?


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

Карма: 25
Рейтинг сообщений: 99
Зарегистрирован: Вс янв 24, 2010 19:19:52
Сообщений: 4468
Откуда: Главный Улей России (Moscow)
Рейтинг сообщения: 0
Да. Подтяжка нужна на ногах, которые настроены на ввод (вход), так как входы МК обладают высоким входным сопротивлением и без подтяжки будут висеть в Z-состоянии. Из - за этого, вход будет чувствителен к помехам и наводкам. В следствии, будут ложные сработки.

Для фоторезистора нужен транзистор. Если вам надо засекать только 2 состояния: Есть свет, нет света. А если вам надо измерить и уровень света, то тут без АЦП или аналогового компаратора, совместно с таймером, настроенным на ШИМ с ФНЧ (если нет АЦП) не обойтись.

_________________
I am DX168B and this is my favourite forum on internet!


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

Зарегистрирован: Ср фев 16, 2011 09:01:31
Сообщений: 16
Откуда: Туапсе
Рейтинг сообщения: 0
Gudd-Head писал(а):
qmix писал(а):
не мог понять вроде обе строчки настраивают портт да и не подтягивалось ничего на железе. может правильно сначала настраиваем порт на вход, но потом ему выводим высокий уровень, и он тогда подтягивается к высокому уровню....

В даташит ни разу не заглядывали?

Собсно постоянно перед глазами, и по нему разбираюсь. Но там часто бывает слишком замудрено написано и поэтому бывает непонятно, поэтому и прибегаю к вашей помощи.

_________________
matrix has you/


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

Карма: 2
Рейтинг сообщений: 2
Зарегистрирован: Пн мар 22, 2010 18:07:52
Сообщений: 122
Рейтинг сообщения: 0
собрал внешнюю подтяжку и все правильно заработало, сп Gudd-Head и DX168B

теперь немного о птицах...

Код:
sbis PIND, PIND7
rjmp EVENT_00


объясните как работает первая строка... понятно что значение 7 пина вводим, а куда...
в инструкции работы порта на ввод?
потому что так

in temp, PinD - вроде записываем состояние порта в рег.
вроде одно и тоже, но как-то не понятно...

сам sbis, где хранит решение... и вообще сам процесс программы подвисает на ожидание? (хочется сделать "без этого вот этого не будет")

и вот rjmp косвенный (непонятен смысл) переход. всегда его использовал для банального прыжка программы, а тут получается какая-то связь sbis...

"ни чего не понимаю!"

DX168B, если испоьзуем вн. подтяжку порта, то лучше кн. вешать на один порт, а вывод на др. порт, чтоб не нарушать...


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

Карма: 67
Рейтинг сообщений: 1060
Зарегистрирован: Чт сен 18, 2008 12:27:21
Сообщений: 19642
Откуда: Столица Мира Санкт-Петербург
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
vit007 писал(а):
и вот rjmp косвенный (непонятен смысл) переход. всегда его использовал для банального прыжка программы, а тут получается какая-то связь sbis...

Надеюсь, так понятней будет:
Изображение
Цикл 1 — ни одна кнопка не нажата, прыгаем со sbis на sbis, и снова в начало.
Цикл 2 — нажата кнопка на Пине5, первый sbis = true, поэтому пропускаем след. команду; второй sbis = false, так что выполняем следующую команду — прыжок на обработчик события.
Цикл 3 аналогично циклу 2, но нажата Кнопка7.


Вложения:
Безымянный.GIF [5.52 KiB]
Скачиваний: 882

_________________
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Измерить нннада?
Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 7952 ]     ... , , , 96, , , ...  

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


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 21


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

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


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