Форум программистов, компьютерный форум, киберфорум
Наши страницы
Микроконтроллеры
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.72/25: Рейтинг темы: голосов - 25, средняя оценка - 4.72
Okmykoy
0 / 0 / 0
Регистрация: 30.12.2011
Сообщений: 5
1

PIC18F46k22. Компаратор.

17.03.2012, 15:34. Просмотров 4608. Ответов 1
Метки нет (Все метки)

Всем доброго времени суток!

Использую PIC18F26k22. Нужно задействовать компаратор и, соответсвенно, его прерывание. Инициализирую со следующими параметрами

Код
C1OE=0;                                         //нет выходу
C1POL=1;                                        //1 когда IN- > IN+
C1SP=1;                                         //высокоскорстной режим
C1IF=0;                                         //очистим флаг прерывания
C1IE=0;                                         //выключим прерывание
C1R=1;                                          //IN+ к Vref
C1RSEL=1;                                       //подкючение FVR BUF
C1CH0=1;                                        //
C1CH1=1;                                        //используем C12IN3- (RB1)
C1HYS=0;                                        //нет гистерезиса
C1SYNC=0;                                       //асинхронно
C1ON=0;                                         //включить компаратор
При работе с компаратором без прерывания - все отлично. Компаратор правильно определяет состояние RB1, в регистре C1OUT появляется соотвествующее знаечение. Но стоит задействовать прерывание, как возникает проблема - не сбрасывается флаг C1IF. Или, точнее, сбрасывается, но сразу же выставляется назад. То есть из цикла типа
Код
while (C1IF) C1IF=0;
не выходит.
Стыкался ли кто с чем-то подобным? И что вообще можно предпринять в таком случае?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.03.2012, 15:34
Ответы с готовыми решениями:

компаратор Atmega8535
Здравствуйте!Казалось бы простая такая штука компаратор,но при попытке настройки и симуляции в...

Компаратор и АЦП
В одном из проектов пробовал сделать программу, которая работала бы с АЦП и компараторам...

Атмега32 Компаратор
необходимо регулироват температуры воды исползуя терморезистор,нагревател и атмега 32. но не могу...

Не работает аналоговый компаратор?
Привет Всем! Кто скажет,правильный ли код: LDI TEMP,0b00000111 OUT DDRD,TEMP ;PD0,PD1,PD2 -...

Аналоговый компаратор - вопрос
Доброго дня! Заранее извиняюсь за нубский вопрос. Поймал глюк при использовании компаратора -...

1
Dykk
0 / 0 / 0
Регистрация: 16.08.2010
Сообщений: 69
18.03.2012, 19:33 2
Сработал у вас компаратор, выставился флаг прерывания, Вы его обработали, сбросили, а изменились ли уровни на входах? Если нет, то компаратор снова выставит флаг...
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.03.2012, 19:33

Аналоговый компаратор в ATtiny2313
Добрый вечер, прошу помощи, никак не могу разобраться, почему не работает аналоговый компаратор на...

компаратор авр и 2полярное меряние
Требуетса померять входной сигнал компаратором, вернее таймером вычислить длину импульсов, вроде...

Компаратор в микроконтроллере PIC18F25K22 (MPLAB C18) - Микроконтроллеры
Добрый день. В данный момент у меня на руках плата с контроллером PIC18F25K22 и проект от...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru