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

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

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

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

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

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

AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR...

 
Опции темы
Непрочитано 03.03.2016, 00:20  
makakus
Почётный гражданин KAZUS.RU
 
Регистрация: 08.10.2007
Сообщений: 2,760
Сказал спасибо: 1,105
Сказали Спасибо 1,037 раз(а) в 569 сообщении(ях)
makakus на пути к лучшему
По умолчанию Re: Attiny 26L глючит прерывание INT0

Сообщение от Godzilla82 Посмотреть сообщение
Вам бы _delay_ms(9). Но за это посадить могут.
Правильно, посадить. Прямо на костёр
У контроллера таймеры есть? Есть! Вот пусть один займётся делом, посчитает до 9мс. Досчитает - мигнёт прерыванием: "ожидание фронта включай".
Реклама:
makakus вне форума  
Непрочитано 04.03.2016, 23:56  
МВА
Гражданин KAZUS.RU
 
Регистрация: 15.08.2010
Адрес: Днепр
Сообщений: 842
Сказал спасибо: 74
Сказали Спасибо 199 раз(а) в 174 сообщении(ях)
МВА на пути к лучшему
По умолчанию Re: Attiny 26L глючит прерывание INT0

Сообщение от makakus Посмотреть сообщение
Вот поймали вы прерывание, по спаду. Следующее придёт через 10мс, да? Ну так и выключите прерывание на 9,9 мс, например. От греха. (Кстати, а что будет, если прерывание возникнет посередине периода?)
А что, эта идея мне очень понравилась.
Правда, надо не просто отсчитывать задержку таймером в прерывании, но по заднему фронту счетчика таймера (при переходе с 1 в 0) Сбросить на всякий случай флаг INT0, потому, что как только разрешишь прерывания оно тут же возникнет. А потом разрешить прерывания. В общем я подправил проект с первых постов. Прогнал задержку - получилась чуть больше 800 мкс. на частоте 1 Мгц.
Вложения:
Тип файла: rar INT0.rar (718.3 Кб, 21 просмотров)
МВА вне форума  
Сказали "Спасибо" МВА
ARTEM277 (07.03.2016)
Непрочитано 07.03.2016, 13:33  
ARTEM277
Временная регистрация
 
Регистрация: 24.03.2015
Адрес: Россия. г.Новосибирск
Сообщений: 69
Сказал спасибо: 12
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
ARTEM277 на пути к лучшему
По умолчанию Re: Attiny 26L глючит прерывание INT0

Сообщение от МВА Посмотреть сообщение
А что, эта идея мне очень понравилась.
Правда, надо не просто отсчитывать задержку таймером в прерывании, но по заднему фронту счетчика таймера (при переходе с 1 в 0) Сбросить на всякий случай флаг INT0, потому, что как только разрешишь прерывания оно тут же возникнет. А потом разрешить прерывания. В общем я подправил проект с первых постов. Прогнал задержку - получилась чуть больше 800 мкс. на частоте 1 Мгц.

Я пробовал что то подобное. Написанно конечно не так красиво было.Но работало.
Вообще я изобритаю цифровой регулятор мощьности галогенных ламп.Как оказалось, отключать прерывание INT0 на 9 ms нет смысла.МК ловит помехи именно при переходе через ноль.Когда я сделал зеро кросс на PC817 поставил фильтры.Он вообще стал идеально работать.Пошел на сварочный участок и попросил поварить сварщика мощьным трансформаторным сварочником.Потом инверторным.Все четко.
Ни разу не сбилса.Работало без каких либо блокировок прерывания.


Код Ваш интересный.Буду изучать.

Впринципе тему можно закрывать.Но после праздника еще кое какие моменты выложу для отчетности.Хочу детектор нуля собрать на какомнибудь MOC с детектором ноля.
ARTEM277 вне форума  
Непрочитано 07.03.2016, 13:36  
ARTEM277
Временная регистрация
 
Регистрация: 24.03.2015
Адрес: Россия. г.Новосибирск
Сообщений: 69
Сказал спасибо: 12
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
ARTEM277 на пути к лучшему
По умолчанию Re: Attiny 26L глючит прерывание INT0

Сообщение от МВА Посмотреть сообщение
Прогнал задержку - получилась чуть больше 800 мкс. на частоте 1 Мгц.

Извините.Не внимательно прочитал.Вы же и блокировали прерывание когда контроллер в него заходил.А не когда идет полупериод
ARTEM277 вне форума  
Непрочитано 07.03.2016, 22:17  
МВА
Гражданин KAZUS.RU
 
Регистрация: 15.08.2010
Адрес: Днепр
Сообщений: 842
Сказал спасибо: 74
Сказали Спасибо 199 раз(а) в 174 сообщении(ях)
МВА на пути к лучшему
По умолчанию Re: Attiny 26L глючит прерывание INT0

Сообщение от ARTEM277 Посмотреть сообщение
Извините.Не внимательно прочитал.Вы же и блокировали прерывание когда контроллер в него заходил.А не когда идет полупериод
Ну... так и было задумано. Судя из выложенных осциллограмм Как раз сразу после прерывания идет следующее. А так, как в прерывании мы запретили прерывание на величину задержки, и если следом поднялся флаг, то перед разрешением мы его сбрасываем и ожидаем нового.
МВА вне форума  
Непрочитано 08.03.2016, 19:58  
Vovan_G5
Частый гость
 
Регистрация: 28.09.2015
Сообщений: 21
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Vovan_G5 на пути к лучшему
По умолчанию Re: Attiny 26L глючит прерывание INT0

Как вам такой рекомендованный алгоритм?
Миниатюры:
Нажмите на изображение для увеличения
Название: zero.JPG
Просмотров: 60
Размер:	41.1 Кб
ID:	89239  
Vovan_G5 вне форума  
Непрочитано 08.03.2016, 20:26  
МВА
Гражданин KAZUS.RU
 
Регистрация: 15.08.2010
Адрес: Днепр
Сообщений: 842
Сказал спасибо: 74
Сказали Спасибо 199 раз(а) в 174 сообщении(ях)
МВА на пути к лучшему
По умолчанию Re: Attiny 26L глючит прерывание INT0

Сообщение от Vovan_G5 Посмотреть сообщение
Как вам такой рекомендованный алгоритм?
Нет, не нравится. Во первых - цикл хоть и короткий, но удлиняет прерывание. Детектор нуля держит низкий уровень длиннее 5 циклов проверки ноги, так что уже бесполезно. А если после выхода прерывания проскочит иголка и опять вызовется, кстати прерывание работает по заднему фронту.
МВА вне форума  
Непрочитано 08.03.2016, 20:52  
Vovan_G5
Частый гость
 
Регистрация: 28.09.2015
Сообщений: 21
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Vovan_G5 на пути к лучшему
По умолчанию Re: Attiny 26L глючит прерывание INT0

Ну придет иголка, ну заскочит в прерывание, проверит 5 раз, а иголки уже и нет....
Vovan_G5 вне форума  
Непрочитано 08.03.2016, 22:44  
МВА
Гражданин KAZUS.RU
 
Регистрация: 15.08.2010
Адрес: Днепр
Сообщений: 842
Сказал спасибо: 74
Сказали Спасибо 199 раз(а) в 174 сообщении(ях)
МВА на пути к лучшему
По умолчанию Re: Attiny 26L глючит прерывание INT0

Сообщение от Vovan_G5 Посмотреть сообщение
Ну придет иголка, ну заскочит в прерывание, проверит 5 раз, а иголки уже и нет....
А если проверка промахнется на иголку? Или игла придет после прерывания? Даже с учетом 5 проверок длительность прерывания не более 20-30 мкс.
МВА вне форума  
Непрочитано 09.03.2016, 00:31  
ForcePoint
Почётный гражданин KAZUS.RU
 
Регистрация: 20.03.2007
Адрес: "Братское кольцо враждебности", т.е. ближайшее заМКАДье.
Сообщений: 7,000
Сказал спасибо: 3,017
Сказали Спасибо 3,191 раз(а) в 2,164 сообщении(ях)
ForcePoint на пути к лучшему
По умолчанию Re: Attiny 26L глючит прерывание INT0

Так "игла" или пачка их? В Атмеловском примере как-бы мажорирование используется...
ForcePoint вне форума  
 

Закладки
Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Прерывание по совпадению таймера 1 gruffi AVR 38 21.10.2016 22:58
Не срабатывает прерывание watchdog у Attiny AVR v170 Proteus 4 03.02.2014 14:10
Мега88 внешнее прерывание по низкому уровню E_C_C Proteus 0 06.09.2012 11:47


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


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot