Реклама на сайте DatasheetsDatasheets

KAZUS.RUN - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Книги и журналы
FAQ по электронике

  Datasheets
Поиск SMD
Онлайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Схемы и проекты
Принципиальные схемы
  Программы
Каталог сайтов
Калькуляторы
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы

Attiny2313 Analog Comparator

Непрочитано 16.05.2010, 16:27  
mrKirill
Вид на жительство
 
Аватар для mrKirill
 
Регистрация: 12.04.2007
Сообщений: 339
Сказал спасибо: 2
Сказали Спасибо 34 раз(а) в 30 сообщении(ях)
mrKirill на пути к лучшему
По умолчанию Re: Attiny2313 Analog Comparator

Пайка? "Соплей" не наблюдается?
Прерывания все разрешены нужные?
Реклама:
__________________
Гидравлика + электроника = POWER
mrKirill вне форума  
Непрочитано 16.05.2010, 22:00  
wowa_wa
Частый гость
 
Регистрация: 07.06.2005
Сообщений: 29
Сказал спасибо: 1
Сказали Спасибо 2 раз(а) в 1 сообщении
wowa_wa на пути к лучшему
По умолчанию Re: Attiny2313 Analog Comparator

Соплей нет, все правильно если верить даташиту 12-13 ноги входа компаратора корпус PDIP
Что еще не так, не знаю, обе микросхемы не работают. Выгнул с панельки 12 ногу на 13 ноге 4в через делитель, подаю +5 через 200 Ом на 12 ногу результат ноль убираю тоже ноль. Может что-то еще нужно разрешить?

// Analog Comparator initialization
// Analog Comparator: On
// Digital input buffers on AIN0: Off, AIN1: Off
ACSR=b_0000_1000;
DIDR=b_0000_0011;

interrupt [ANA_COMP] void ana_comp_isr(void)
{ PORTD.5=1; }

Кроме этого куска кода больше ничего не пишу. Может в codevisionavr нужно что-то поменять?

Последний раз редактировалось wowa_wa; 16.05.2010 в 22:03.
wowa_wa вне форума  
Непрочитано 16.05.2010, 22:42  
Saadov
Почётный гражданин KAZUS.RUN
 
Аватар для Saadov
 
Регистрация: 13.11.2008
Адрес: г.Смоленск
Сообщений: 2,010
Сказал спасибо: 348
Сказали Спасибо 1,023 раз(а) в 551 сообщении(ях)
Saadov на пути к лучшему
По умолчанию Re: Attiny2313 Analog Comparator

Может с этим поиграться???
Цитата:
// Digital input buffers on AIN0: Off, AIN1: Off
Из книги "CVAVR пособие для начинающих"
Цитата:
Disable Digital Input Buffer on AIN0(Запретить вход цифрового буфера на AIN0)- если выбрать эту опцию, то на выводе AIN0 будет запрещен вход цифрового буфера (Порта), таким образом, уменьшается энергопотребление чипа. В этом случае соответствующий бит в регистре PINx всегда будет читаться как 0
С AIN1 тоже самое...
Просто тут похожее поведение было на радиокоте с прерываниями на входах INTx, докопался я до проблемы, было именно связано с этими цифровыми буферами. Тут принцип аналогичный...Желаю удачи!
Saadov вне форума  
Непрочитано 17.05.2010, 00:43  
wowa_wa
Частый гость
 
Регистрация: 07.06.2005
Сообщений: 29
Сказал спасибо: 1
Сказали Спасибо 2 раз(а) в 1 сообщении
wowa_wa на пути к лучшему
По умолчанию Re: Attiny2313 Analog Comparator

С горем нашел где крыется проблема, но не знаю как решить.

Как только добавлю эти строки все компаратор не реагирует на изменение на ногах.
// External Interrupt(s) initialization
// INT0: On INT1: On
// INT Mode: Low level
// Interrupt on any change on pins PCINT0-7: Off
GIMSK=b_1100_0000;
MCUCR=0;
EIFR=b_1100_0000;

Если ставлю так то все ок.
GIMSK=0x00;
MCUCR=0x00;

Но мне нужны внешние прерывания.
Пробывал менять Digital input buffers on AIN0:, AIN1: оба вкл оба выкл не помогает
Из даташита, я так понял что когда они выключены, то безполезно читать PINx но компаратор будет работать.
wowa_wa вне форума  
Непрочитано 17.05.2010, 01:03  
Saadov
Почётный гражданин KAZUS.RUN
 
Аватар для Saadov
 
Регистрация: 13.11.2008
Адрес: г.Смоленск
Сообщений: 2,010
Сказал спасибо: 348
Сказали Спасибо 1,023 раз(а) в 551 сообщении(ях)
Saadov на пути к лучшему
По умолчанию Re: Attiny2313 Analog Comparator

Сообщение от wowa_wa Посмотреть сообщение
Но мне нужны внешние прерывания
Тогда вам на страницу 57 вашего даташита, там таблица, что надо делать, чтобы правильно использовать альтернативные функции порта(пинов), расшифровку сигналов из колонки "Signal
Name", смотрите на стр 53 под рисунком
Вроде теперь вопросы должны отпасть...
Saadov вне форума  
Непрочитано 17.05.2010, 09:46  
wowa_wa
Частый гость
 
Регистрация: 07.06.2005
Сообщений: 29
Сказал спасибо: 1
Сказали Спасибо 2 раз(а) в 1 сообщении
wowa_wa на пути к лучшему
По умолчанию Re: Attiny2313 Analog Comparator

Сообщение от Saadov Посмотреть сообщение
Тогда вам на страницу 57 вашего даташита.
Чесно говоря толком и не понял что там написано.
Но вот знаю что INT1 и INT0 работает когда я добавляю те строчки отлично, но компаратор отрубается, и наоборот, без их не работает компаратор.
Компаратор у меня на PB0..1, прерывания PD2..3 одно другому мешать не должно, а не работатет.
wowa_wa вне форума  
Непрочитано 17.05.2010, 09:56  
aleksandr-zh
Гражданин KAZUS.RUN
 
Регистрация: 03.12.2004
Сообщений: 932
Сказал спасибо: 822
Сказали Спасибо 609 раз(а) в 216 сообщении(ях)
aleksandr-zh на пути к лучшему
По умолчанию Re: Attiny2313 Analog Comparator

как я понял, Вы не можете добиться даже проверки состояния ан. компаратора...
работал с этим МК, тоже мучился, пока не изменил состояние DIDR

Вот пример: (пишу на FastAVR)
DIDR=3 ' ОТКЛ digital in !!!

While acsr.5=1
Wend ' Ждем 0

Это же, но на ассме:

' ОТКЛ digital in !!!
ldi zl,byte1(3)
out DIDR,zl

' Ждем 0--
L0046:
sbis ACSR,5
rjmp L0047
L0048:
rjmp L0046
aleksandr-zh вне форума  
Непрочитано 17.05.2010, 15:53  
wowa_wa
Частый гость
 
Регистрация: 07.06.2005
Сообщений: 29
Сказал спасибо: 1
Сказали Спасибо 2 раз(а) в 1 сообщении
wowa_wa на пути к лучшему
По умолчанию Re: Attiny2313 Analog Comparator

Сообщение от aleksandr-zh Посмотреть сообщение
как я понял, Вы не можете добиться даже проверки состояния ан. компаратора...
У меня как и у вас.
// Analog Comparator: On
// Digital input buffers on AIN0: Off, AIN1: Off
ACSR=b_0000_1000;
DIDR=b_0000_0011;

Если компаратор срабатывает то он дергает ногу, проблема вот в этих строках насколько я понял.
GIMSK=b_1100_0000;
EIFR=b_1100_0000;

Емли 7 бит ставлю 0 и в GIMSK и в EIFR то работает и прерывание INT0 и компаратор, но тем самым отключаю INT1.
Для моей задачи этого достаточно, но все-же интересно почему так.

Последний раз редактировалось wowa_wa; 17.05.2010 в 15:55.
wowa_wa вне форума  
 
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Однокристальные трансиверы TRC101 от RFM... Panchiks Автоматика и аппаратура связи 340 15.05.2017 21:10
AtTiny2313 ШИМ на два плеча Classic001 Микроконтроллеры, АЦП, память и т.д 44 10.04.2010 17:37
Прерывание по внешнему reset Attiny2313 sbcentr Микроконтроллеры, АЦП, память и т.д 18 12.02.2010 16:12
Микроконтроллер attiny2313 Kabzon Микроконтроллеры, АЦП, память и т.д 8 29.12.2009 15:56


Часовой пояс GMT +4, время: 11:02.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.