Перейти к содержанию
    

каким образом читать сигнал приходящий на RA2? PIC16F886

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

 

Столкнулся с проблемой. (Опыта в данном деле мало)

В руки попала мертвая дверь для кошек (Microchip Petporte Smart Flap).

Мозгами дверцы является PIC16F886.

После ковыряний выяснилось, что PIC молчит и признаков жизни не подает.

Заказал и установил новый...

Проблема собственно в прошивке. Товарищи из PetSafe давать прошивку не желают.

Нашел на просторах сайт посвященный этой дверце.

На этом ресурсе нашел исходники, но ревизия плат оказалась разная!

Работают все функции кроме самой главной - считывания метки (FDX_B)!

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

 

Старая ревизия (под которую есть прошивка) была с доп. платой, которая втыкалась поверх основной.

На ней располагается операционный усилитель (LM 324) с обвязкой. Схемы к сожалению нет.

 

Выходы с этой платы были подключены следующим образом:

RFID board output 3 -> MCU PIN 4 (RA2) Comparator C2IN+

RFID board voltage supply (JP7 PIN4) -> MCU PIN 24 (RB3) Voltage supply for opamp

RFID board output 4 (JP7 PIN5) -> MCU PIN 3 (RA1) Comparator C12IN1-

 

При считывании использовался внутренний компаратор и прерывание на изменения значения на выходе.

С пониманием алгоритма вопросов не возникло...

 

В новой ревизии автор решил совместить доп плату с ОУ с основной, и внес коррективы.

Теперь выходы подключены так:

LM324 PIN 8 (C3 out) -> MCU PIN 4 (RA2) Digital signal from the receiver circuitry

LM324 PIN 4 (VCC) -> MCU PIN 24 (RB3) VCC Op-Amp via R25 (330 Ohm)

 

Собственно теперь вопрос: каким образом читать сигнал приходящий на RA2? Компаратор теперь не задействован, прерываний на этом пине нет...

Буду рад любому совету...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Буду рад любому совету...

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

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

Как реализовать алгоритм основываясь на прерываниях - я понимаю...но как обойтись без них ума не приложу.

В бесконечном цикле опрашивать RA2 и смотреть на таймер?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как реализовать алгоритм основываясь на прерываниях - я понимаю...но как обойтись без них ума не приложу.

В бесконечном цикле опрашивать RA2 и смотреть на таймер?

Наоборот. Например, по прерываниям от таймера (допустим, 1000 раз в секунду) опрашивать RA2.

Еще вариант - проводком завести этот сигнал на ножку, которая может генерировать прерывание. Возможно, это будет даже лучше или проще ...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Прошло достаточно много времени с последних экспериментов с этим считывателем и вот вернулся к нему вновь.

В прошлый раз мне удалось прочитать метку на расстоянии около 3см, но тут ко мне в руки попала новая дверь с родной прошивкой...

Родная прошивка читает метки на расстоянии 10-12см не напрягаясь :(

 

Подключив осциллограф на ногу RA2 (выход с OpAmp) увидел следующую картину - при приближении метки к антенне происходит некоторое "возмущение" (ровно как и в моей прошивке) и в районе 12 см явно видно как проскакивает абсолютно чистый меандр.

 

То-есть такое впечатление, что при обнаружении некоторого "возмущения" на RA2 контроллер непостижимым мне образом заставляет OpAmp усиливать сигнал гораздо лучше.

 

Но как?

 

Заранее благодарю за ответ, еще раз прошу прощения за дилетантство.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Нашел интересную статью по мою душу, совсем свежую. (Не реклама)

 

RFID считыватель транспондеров TIRIS

 

Мой транспондер работает по аналогичному стандарту (ISO 11784/11785) но протокол FDX-B.

Судя по всему у меня не происходит цикл зарядки транспондера.

Буду ковырять в этом направлении, прошу прощения за лишний пост.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

К сожалению рытье в данную сторону ничего не дало.

Чтение FDX-B метки происходит несколько иначе, чем HDX.

 

Провел эксперимент...

 

Взял плату со своей прошивкой и подпаял к пину RA2 (выход с операционного усилителя) провод.

На плате с родной прошивкой отключил от RA2 операционный усилитель, тоесть пин RA2 на ней подвешен "в воздухе".

Подал на вход RA2 платы с оригинальной прошивкой сигнал с операционного усилителя платы со своей прошивкой.

Для чистоты эксперимента не подключал к оригинально плате антенну.

 

Результат: оригинал прекрасно читает метки.

Из чего делаю вывод, что весь секрет в самом пине RA2, т.к. контроллер подключен к операционному усилителю только этим пином.

 

Я понимаю, что без предоставления схемы, это как гадание на кофейной гуще...

Но всеже, очень прошу помощи. Что из функционала пина RA2 (RA2/AN2/VREF-/CVREF/C2IN+) может быть использовано для достижения такого результата?

Если нужна доп. информация - только скажите. Схемы нет, но отдельные необходимые части могу "срисовать".

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Но всеже, очень прошу помощи. Что из функционала пина RA2 (RA2/AN2/VREF-/CVREF/C2IN+) может быть использовано для достижения такого результата?
C2IN+ - вход аналогового компаратора, RA- цифровой вход/выход. Соответственно, если вам надо отлавливать изменения аналогового сигнала- подайте его (этот сигнал) на ногу C2IN+, предварительно установив эту ногу, как аналоговый вход. А на второй вход этого компаратора С2 надо задать опорное напряжение, например от внутреннего ИОН. Напряжение ИОН будет задавать порог срабатывания С2.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подал на вход RA2 платы с оригинальной прошивкой сигнал с операционного усилителя платы со своей

Я понимаю, что без предоставления схемы, это как гадание на кофейной гуще...

Но всеже, очень прошу помощи. Что из функционала пина RA2 (RA2/AN2/VREF-/CVREF/C2IN+) может быть использовано для достижения такого результата?

 

 

Про гадание на гуще - в самую точку. Из периферии пина RA2 для декодирования сигнала RFID не используется НИЧЕГО. На ногу подается сигнал уровней ТТЛ, который получают при помощи специальной схемы. Декодеры RFID 125 кГц ( радиометки для животных) могут быть сделаны на специальных микросхемах HTRC11001 или EM4095 или на LM324 или LM2903 (неспециальные).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Про гадание на гуще - в самую точку.

 

Срисовал схему операционного усилителя (номиналы конденсаторов не соответствуют действительности).

Схему составляю в первый раз, строго не судите.

 

Возможно ли воздействовать на усилитель средствами пина RA2?

 

u0vc54k76.png

 

Не могу понять, почему подключая выход с OpAmp своей платы на вход MCU с оригинальной прошивкой - на осциллографе наблюдаю импульс с четким сигналом, чего не наблюдаю при подключении к MCU со своей прошивкой.

То-есть поведение OpAmp меняется, если отключить его от RA2.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А на второй вход этого компаратора С2 надо задать опорное напряжение, например от внутреннего ИОН. Напряжение ИОН будет задавать порог срабатывания С2.

 

Каким образом можно задать опорное напряжение?

Насколько я понял из даташита опорное напряжение (внутреннее) можно задать на пине RA2 (C2IN+), но он задействован.

RA1/AN1/C12IN1- "болтается в воздухе".

RA0/AN0/ULPWU/C12IN0- задействован под фоторезистор.

 

Наверное, я плохо читаю даташит или не понимаю схему работы компаратора.

Возможно на RA1 таки можно задать опорное для С2?

 

Сигнал с OpAmp выглядит так (метка над антенной):

 

u220sf472.png

 

Достал наконец HEX оригинальной прошивки.

Прошелся по ней PIC-Disasm, но с ASM сталкивался только пару раз в жизни и не знаю даже с какой стороны подступиться.

Хочу найти место, в котором происходит считывание метки и место, в котором происходит взаимодействие с UART.

На плате торчат разведенные пины +5, GND, RX, TX. Но при подключении с этой прошивкой молчит как рыба.

CatFlap.zip

Изменено пользователем AcheleS

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

**

 

Близкий к правде вариант схемы считывателя можете посмотреть по ссылке. Нужная часть схемы выделена пунктиром.

 

http://domofon.ru/getfile/191.pdf

 

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

 

При наличии программы прошивки не нужно ломать мозг, как и что она делает. Надо купить новый микроконтроллер, запрограммировать его и установить вместо неисправного.

Изменено пользователем =L.A.=

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...