Страница 2 из 25

Добавлено: Вт апр 24, 2007 21:28:39
Kenny
Я имел ввиду открытие этой отмычкой но без емуляяции ключей

Добавлено: Пт май 04, 2007 12:13:28
Алексей П
А считываение ключа будет происходить если устройство подключить паралельно с домофоном?
И еще неплохобы исходник посмотреть.

Добавлено: Пт май 04, 2007 13:18:08
dx40
Алексей П писал(а):А считываение ключа будет происходить если устройство подключить паралельно с домофоном?
Сомневаюсь
Алексей П писал(а):И еще неплохобы исходник посмотреть.
Вот основной кусок. Только не думаю что он чем-то кому-то поможет. :)

Код: Выделить всё

if (a2==16) {
// читаем
PORTD.1=1;
DDRD.1=1;
if ( w1_init()==1 ) { 
#asm("cli");
w1_write(51);

for (x=0;x<8;x++) { code[x]=w1_read(); };
crc=crc8(code,7);
#asm("sei");

if (crc==code[7]){
a2=18;
for (x=0;x<8;x++) {
storage[x+a1*8]=code[x];  };
                               };
}

}

if (a2==18) {  
//емулируем
PORTD.1=0;
DDRD.1=0;
PORTD.0=0;
DDRD.0=0;

if (PIND.0==1){

while(a==0) #asm("nop");
#asm("cli");
PORTB=chargen[10];

y=0;
//ждем сброса
do  { y++; delay_us(100);  } while ((y<100)&&(PIND.0==1));
if (y<100){
//пережидаем сброс
PORTB=chargen[11];
do  { y++; delay_us(1);  } while ((y<1000)&&(PIND.0==0));
if  (y<1000){

delay_us(15);
DDRD.0=1;
delay_us(200);
DDRD.0=0;

PORTB=chargen[12];
for (x=1;x<9;x++) {
//типа читаем
y=0;
do  { y++; delay_us(1); }  while ((y<60000)&&(PIND.0==1));
y=0;
do  { y++; delay_us(1); }  while ((y<60000)&&(PIND.0==0));
}

//пишем
PORTB=chargen[13];

y=0;

for (x=0;x<8;x++) for (x2=0;x2<8>>x2)&1;
y=0;
if (PIND.0==1) {
do  { y++;  }  while ((y<30000)&&(PIND.0==1));
}

if (nxt==0) { DDRD.0=1;delay_us(45);DDRD.0=0; }
 else {if(PIND.0==0) { do  { y++; }  while ((y<60000)&&(PIND.0==0));}};
 
PORTB=chargen[14]; }

}}}
#asm("sei");
}

Вопросы.....

Добавлено: Пт май 04, 2007 15:41:59
AC/DC
Здраствуйте. Респект создателям девайса! Буду собирать.

Скажите пожалуйста, какие надо индикаторы: с общим катодом, или анодом.

И если я буду шить в AVReal'е, то как мне правильно выставить BodLevel?
BODLEVEL=4 ? Или подругому?

Добавлено: Пт май 04, 2007 18:47:38
ARV
Поглядел я на показанный код, и мне бросились в глаза #asm("cli") и #asm("sei"). Получается, прерывания запрещаются на приличное время - динамическая индикация не мигает при этом?

Добавлено: Чт май 10, 2007 21:45:17
AC/DC
САБЖ собрал, сразу заработало. :P Индикаторы с общим катодом. При прошивке в АВРеале указал только CKDIV8=1 и BODLEVEL=4. Вроде бы работает. Гемор с дребезгом кнопок всётаки есть, но терпимо.

Если кому надо печатную плату в Sprint Layout 5, то выложу.

Если не секрет, что девайс показывает, когда соединяю с домофоном? Когда соединяю, загорается буква "A", а потом, когда отпускаю - несколько секунд горит "]". Что это означает?

Добавлено: Сб май 12, 2007 14:01:06
dx40
Ответ сразу на оба вопроса - во время эмуляции динамическая индикация останавливается, работает только один индикатор, который показывает код текущего действия (или ошибки).
A - ждем сброса
b - пережидаем сбррос
C - читаем комманду
d - выдаем ответ
E - эмуляция закончена
Если все правильно, то буквы мигают так быстро что их не заметно. Если какая-то буква отображается заметное время, значит произошла ошибка (например из-за плохого контакта со считывателем).

Добавлено: Чт май 24, 2007 15:34:20
ленивец
Вопрос: а если просто вольт 40 пустить в приемник для ключей? По идеи у них МК просто сгорит. Есть правда вариант что при этом дверь не откроется, а закроется, но это очень маловероятно. если например случится пожар и мк сломается(или отключат питание) то дверь должна быть открыта....

Добавлено: Чт май 24, 2007 16:23:53
dx40
От 40 вольт точно ничего не случится.
По входу там резистор на пару сотен ом + стабилитрон на землю. Это минимум, а вообще часто еще разрядник, индуктивность, защитные диоды.

Добавлено: Чт май 24, 2007 17:04:23
ленивец
Хорошо, а если поставить генератор переменного тока(мотор то бишь) и трансформатор? Чтобы крутанул пару раз ручку и вольт 400?

Добавлено: Чт май 24, 2007 17:05:57
ленивец
Хотя с другой стороны нехорошо это - домофоны портить....

Добавлено: Чт май 24, 2007 18:11:11
Мышонок
Ст. 214 УК РФ. 8)

Добавлено: Чт май 24, 2007 18:27:27
Max
У товарища мышонка всегда найдется для вас статья - обращайтесь :)))

Индикация

Добавлено: Пн июн 04, 2007 13:11:22
AC/DC
Пару раз было, что индикаторы 2 ноля показывают. Что это значит?

Добавлено: Чт июн 21, 2007 21:14:25
TimON
Давно уже задумал подобный девайс (не именно этот, а функционально аналогичный, контроллер кстати под рукой оказался этот же), сделал - нифига не работает! Процедурку эмуляции копал/проверял/рассматривал потихоньку, ибо к подъезду с осциллом и т.д. не вылезешь и не поизучаешь - чревато.. И забросил. А тут (с год примерно прошло с тех времён) наткнулся на сабж..
Ну это была предыстория, далее суть: есть вопросы к тем кто сей девайс поюзал уже (автору в том числе):
1. Такие вообще есть? =)
2. Марки домофонов (или иных устройств на базе DS1990) на которых проверено и работает/не работает.
3. То что оно само себя (в смысле точно такой же девайс в режиме эмуля) игнорирует на чтение (полностью, как будто и нету ничего) - нормально, или я место произростания рук неверно указал?

ЗЫ: Покопал код, изменил там индикацию - теперь индикатор нужен один - при эмуле светит, при чтении мигает. Остановился пока не проверю саму эмуляцию на домофоне (пока нету такой возможности).
Далее планирую, при успешном тесте собственно эмуляции в домофоне, довести штучку до ума, и выложить тут результаты. Пока лишь в мыслях крутится воплощение габаритами примерно с саму таблетку, ну мож чуть больше, пока упёрлось всё в испытания на домофоне...

Re: Индикация

Добавлено: Чт июн 21, 2007 21:54:58
TimON
AC/DC писал(а):Пару раз было, что индикаторы 2 ноля показывают. Что это значит?
Неверно прошит, либо глюк контроллера. Там в коде в принципе нет такой кондиции чтоб он два нуля показывал. На первый индикатор выгоняется либо 0x10 либо 0x12 - собственно чтение или эмуляция, иного быть не может, разве только это не тестовая последовательность в процессе эмуляции, которая пришлась на первое знакоместо, но нуля там тоже нету.

Добавлено: Ср авг 01, 2007 02:21:08
Pa5ha
Кстати, а где Вы там исходник увидели? Найти что-то не могу. Поделитесь плз ) Или это военная тайна?

Кстати, как данный девайс относится к дребезгу при подключении и юзании?

Добавлено: Ср авг 01, 2007 03:19:12
Алексей П
Pa5ha смотри выше, пост от dx40 за 04.05.07

Добавлено: Ср авг 01, 2007 10:32:40
dx40
Исходник я постил, не весь но основную часть.

К дребезгу относится нормально, т.е. все работает.

Добавлено: Ср авг 01, 2007 20:18:58
Дмитрий О
А в CVAVR это можно сэмулить? Типо, ждем, пока мастер сбросит шину, потом юзаем w1_read для чтения команды, а потом w1_write отправляем код семейства, номер и CRC. Команда ведь одним байтом передается?
Замышляю эмуль 1 батона на tiny15 в скором будущем сделать. Выложу.