реклама на сайте
подробности

 
 
> Компаратор ATtiny24, Проблема с компаратором ATtiny24
Yuriy_AVR
сообщение May 16 2009, 19:37
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 12-01-07
Из: Крым
Пользователь №: 24 378



Ребята, что-то немогу понять - на ATtiny24 настроил компаратор :


sei
. . . . . . .
. . . . . . .

LDI TEMP1,(Off<<ACME)//подключение вывода AIN1 к отрицательному выводу компаратора
OUT ADCSRB,TEMP1

LDI TEMP1,(On<<ACBG)+(Off<<ACO)+(Off<<ACIE)+(Off<<ACIS0)+(Off<<ACIS1)+(Off<<ACD)
OUT ACSR,TEMP1
SBR TEMP1,Exp2(ACIE)//разрешение прерывания на компараторе
OUT ACSR,TEMP1

На вывод AIN1 (минус компаратора ) подаётся входной сигнал . При достижении на этом выводе 1,1 вольта ( значение опоры для данной тиньки ) должно происходить прерывание . НО ЕГО НЕТ !!!!!
Подключил JTAG ICE MKII . Начал отладку в живой железке . Но флаг прерывания не устанавливается ни при каких условиях !!! ( хотя значение на входном пине уже далеко за 1,1 вольта ).
Может я уже заработался , или чего-то не так сделал ?( хотя сильно сомневаюсь )
Может кто-то сталкивался с такой проблемой ?

Сообщение отредактировал Yuriy_AVR - May 16 2009, 20:31
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 4)
SysRq
сообщение May 16 2009, 21:39
Сообщение #2


Чайник, 1 литр
****

Группа: Свой
Сообщений: 655
Регистрация: 17-05-06
Из: Moscow
Пользователь №: 17 168



Проверить что в регистре DIDR0, проверить PA1 и PA2 чтобы были входами и выключен pullup, убедиться что TEMP1 никто не меняет в процессе настройки компаратора (прерывания-то разрешены..). Больше ничего не приходит так сразу..

Сообщение отредактировал SysRq - May 16 2009, 21:41
Go to the top of the page
 
+Quote Post
Yuriy_AVR
сообщение May 17 2009, 15:48
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 12-01-07
Из: Крым
Пользователь №: 24 378



LDI TEMP1,(On<<ADC2D)//ВЫКЛЮЧЕНИЕ ЦИФРОВОГО ПОРТА ДЛЯ ВЫВОДА КОМПАРАТОРА
OUT DIDR0,TEMP1

"проверить PA1 и PA2 чтобы были входами и выключен pullup"
Да в норме здесь всё
LDI TEMP1,(INput_Pin<<CompMinus_In) + . . .
OUT DDRA,TEMP1
LDI TEMP1,(PULLUP_Off<<CompMinus_In) + . . .
OUT PORTA,TEMP1

"убедиться что TEMP1 никто не меняет в процессе настройки компаратора (прерывания-то разрешены..)"
Ну это уровень первого класса - прерывания проверены многократно, тем более как только в прерывании появляется новый регистр - сразу сохраняю (при помощи макросов). Да и TEMP1 входит в макрос по сохранению статуса - так что это исключено .

ANA_COMP:

SAVE_STATUS

. . . . . . . . . . . . . . . . . . .

RETURN_STATUS

RETI

sad.gif
Go to the top of the page
 
+Quote Post
SysRq
сообщение May 17 2009, 18:27
Сообщение #4


Чайник, 1 литр
****

Группа: Свой
Сообщений: 655
Регистрация: 17-05-06
Из: Moscow
Пользователь №: 17 168



В PRR бит PRADC не установлен? Оно и компаратор выключит, кроме АЦП.
Go to the top of the page
 
+Quote Post
Yuriy_AVR
сообщение May 17 2009, 19:06
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 12-01-07
Из: Крым
Пользователь №: 24 378



Цитата(SysRq @ May 17 2009, 21:27) *
В PRR бит PRADC не установлен? Оно и компаратор выключит, кроме АЦП.


Нет, и здесь Ок
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 16:02
Рейтинг@Mail.ru


Страница сгенерированна за 0.01392 секунд с 7
ELECTRONIX ©2004-2016