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

 
 
5 страниц V  « < 2 3 4 5 >  
Reply to this topicStart new topic
> Сгенерировать случайное число, Возможно ли?
DpInRock
сообщение Aug 13 2008, 17:25
Сообщение #46


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



Хотел успокоится на внешней проге с самого начала. Но потом прикинул, что это мне ее писать...
И что-то расхотелось. Заказчик лишней работы не оплатит.


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
rv3dll(lex)
сообщение Aug 13 2008, 19:27
Сообщение #47


Полное ничтожество
*****

Группа: Banned
Сообщений: 1 991
Регистрация: 20-03-07
Из: Коломна
Пользователь №: 26 354



Цитата(DpInRock @ Aug 13 2008, 17:35) *
Адрес генерируется раз в жизни. И пишется во флэшку.


значит я не угадал применения
1 раз ломать дверь машины пришлось - разбивать стекло (((
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Aug 13 2008, 20:43
Сообщение #48


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



А ключем?


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
Guest_@Ark_*
сообщение Aug 13 2008, 23:38
Сообщение #49





Guests






Цитата(rx3apf @ Aug 13 2008, 17:53) *
... Радиокнопка, говорите ? Т.е. кнопка уже есть ? Ну так от включения и до первого нажатия на кнопку можно медленно и печально, не особо расходуя питание, крутить какой-нибудь таймер. И по нажатию на кнопку сохранить полученный результат, который и будет требуемым "случайным числом". Или я чего-то в логике работы недопонял ?

Вот это, с моей точки зрения, наиболее правильное решение! Кстати, не раз мною использованное...
В качестве источника случайного числа нужно использовать действия пользователя, а точнее - временной интервал между двумя любыми его действиями. В качестве старта логично использовать первое включение питания (подсоединение батареи). Далее - запускается 8 или 16 разрядный таймер, который останавливается (фиксируется) при обнаружении второго действия пользователя. Полученное значение записывается в EEPROM...
Что именно использовать для остановки таймера - решать разработчику. Вариантов масса - первое нажатие кнопки, перемещение движка резистора (если, конечно, они есть), первое обращение к устройству со стороны других устройств и так далее... Как правило, всегда можно найти источник...
Этот метод дает действительно случайные значения. Кроме того, он прост и надежен. Не усложняет устройство и не требует дополнительных манипуляций при изготовлении и использовании устройства...
Go to the top of the page
 
+Quote Post
rv3dll(lex)
сообщение Aug 14 2008, 04:31
Сообщение #50


Полное ничтожество
*****

Группа: Banned
Сообщений: 1 991
Регистрация: 20-03-07
Из: Коломна
Пользователь №: 26 354



Цитата(DpInRock @ Aug 14 2008, 00:43) *
А ключем?


через несколько лет эксплуатации без использования личинок они захрясают настолько, что их можно разве что высверлить.

к тому-же личинки ключей - возможность открыть ножницами
их при установке актуаторов часто отключают

Цитата(@Ark @ Aug 14 2008, 03:38) *
Этот метод дает действительно случайные значения. Кроме того, он прост и надежен. Не усложняет устройство и не требует дополнительных манипуляций при изготовлении и использовании устройства...


тода зачем вообще делать возможность пользователю "искать случайное число"
на сколько я понимаю все устройства прежде чем упаковать их в корпус и положить на склад проверяются.

вот на этом этапе и надо присвоить номер - 1 раз и навсегда

на плате предусмотреть поле для корочения - ту самую кнопку
можно поставить даже скрытую кнопку (нажимать булавкой) и сделать это фичей

подключили плату к источнику - нажали кнопочку - состояние таймера записалось во флеш
проверили надели корпус и положили на склад.
Go to the top of the page
 
+Quote Post
Guest_@Ark_*
сообщение Aug 14 2008, 09:12
Сообщение #51





Guests






Цитата(rv3dll(lex) @ Aug 14 2008, 08:31) *
... тода зачем вообще делать возможность пользователю "искать случайное число"
на сколько я понимаю все устройства прежде чем упаковать их в корпус и положить на склад проверяются. вот на этом этапе и надо присвоить номер - 1 раз и навсегда
на плате предусмотреть поле для корочения - ту самую кнопку
можно поставить даже скрытую кнопку (нажимать булавкой) и сделать это фичей
подключили плату к источнику - нажали кнопочку - состояние таймера записалось во флеш
проверили надели корпус и положили на склад.

Примерно так это и делается. smile.gif
Но, более правильно, все-таки, оставить возможность для повторной генерации номера в виде спецфункции. Так как возможно случайное совпадение номеров устройств, "сброс" EEPROM и т.п...
Go to the top of the page
 
+Quote Post
rv3dll(lex)
сообщение Aug 14 2008, 12:32
Сообщение #52


Полное ничтожество
*****

Группа: Banned
Сообщений: 1 991
Регистрация: 20-03-07
Из: Коломна
Пользователь №: 26 354



Цитата(@Ark @ Aug 14 2008, 13:12) *
Примерно так это и делается. smile.gif
Но, более правильно, все-таки, оставить возможность для повторной генерации номера в виде спецфункции. Так как возможно случайное совпадение номеров устройств, "сброс" EEPROM и т.п...


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

по её нажатию и искать новое число и переписывать еепром
Go to the top of the page
 
+Quote Post
xelax
сообщение Aug 14 2008, 12:37
Сообщение #53


Местный
***

Группа: Свой
Сообщений: 370
Регистрация: 7-11-06
Пользователь №: 22 035



Цитата(Ledmaster @ Aug 13 2008, 21:12) *
Да, дополнительные пару долларов себестоимости, это как раз то, что нужно для радиобрелка! smile.gif


Изобретение доморощенных средств на коленке может стать ещё дороже. smile.gif
Go to the top of the page
 
+Quote Post
rv3dll(lex)
сообщение Aug 14 2008, 12:40
Сообщение #54


Полное ничтожество
*****

Группа: Banned
Сообщений: 1 991
Регистрация: 20-03-07
Из: Коломна
Пользователь №: 26 354



Цитата(xelax @ Aug 14 2008, 16:37) *
Изобретение доморощенных средств на коленке может стать ещё дороже. smile.gif


в радиобрелках самая дорогая вещь сертифика кодировки
Go to the top of the page
 
+Quote Post
Guest_@Ark_*
сообщение Aug 14 2008, 13:38
Сообщение #55





Guests






Цитата(rv3dll(lex) @ Aug 14 2008, 16:32) *
я про это и говорю - кнопочка поиска нового случ числа должна быть недоступна для случайного обиходного нажатия - типа ресета в ноуте.

Лишняя кнопочка в брелке (которая используется раз год) - IMHO, роскошь. smile.gif Конечно можно, контактные площадки замыкать, но тогда нужно разрешать пользователю вскрывать устройство. Что не есть хорошо...
Наиболее приемлемый вариант - это некая специальная последовательность действий для перехода в режим генерации номера. Например, нажатие и удержание сразу нескольких кнопок в момент включения питания, или что-то в этом роде...
Go to the top of the page
 
+Quote Post
Sat360
сообщение Aug 15 2008, 03:17
Сообщение #56


Участник
*

Группа: Свой
Сообщений: 26
Регистрация: 26-02-08
Из: Томск
Пользователь №: 35 391



Если есть несколько кнопок, то действительно, зачем огород городить?
Даже если кнопка одна, написать в юзергайдере "для присвоения номера надо зажать кнопку, вставить батарейки, в течении 5 секунд нажать на кнопку 3 раза, и в течении еще 10 секунд не нажимать ее". Или любую другую морзянку wink.gif
Это гарантирует и защиту от случайной смены адреса, и дает сразу кучу временных интервалов (7), на основании которых можно что-то сгенерировать.
Go to the top of the page
 
+Quote Post
rv3dll(lex)
сообщение Aug 15 2008, 05:06
Сообщение #57


Полное ничтожество
*****

Группа: Banned
Сообщений: 1 991
Регистрация: 20-03-07
Из: Коломна
Пользователь №: 26 354



Цитата(Sat360 @ Aug 15 2008, 07:17) *
Это гарантирует и защиту от случайной смены адреса, и дает сразу кучу временных интервалов (7), на основании которых можно что-то сгенерировать.


для сертификации такого прибора заставят положить в комплект к нему секундомер.!

это даёт гарантию что при плохом контакте в кнопках отсыревщего брелка с ним будет всё что угодно.

стоимость брелка примерно 200 рублей себестоимость 50-100 - стоимость кнопки рубль
да в россии все хотят сверхприбыли

если разобрать брелок хорошего квартирного замка - кнопка сброс там есть.

Цитата(@Ark @ Aug 14 2008, 17:38) *
Лишняя кнопочка в брелке (которая используется раз год) -


не лишняя - а сервисная за эту возможность можно и денег взять

кстати если алгоритм кодировки нормальный, то даже 2 одинаковых брелка, находясь на разных точках ПСП кодировки не будут друг другу мешать
Go to the top of the page
 
+Quote Post
Guest_@Ark_*
сообщение Aug 15 2008, 13:35
Сообщение #58





Guests






Цитата(rv3dll(lex) @ Aug 15 2008, 09:06) *
... при плохом контакте в кнопках отсыревшего брелка с ним будет всё что угодно.

... кнопочка "сброс" тоже может случайно замкнуть от сырости, или, например, от вибрации (при падении брелка)... поэтому, что надежнее - на самом деле довольно спорный вопрос...

Цитата(rv3dll(lex) @ Aug 15 2008, 09:06) *
... не лишняя - а сервисная за эту возможность можно и денег взять

Взять, конечно, можно, если дадут... Иногда между ценой 200р и 199р есть весьма существенная разница. Впрочем, это уже не по теме...
Go to the top of the page
 
+Quote Post
UniBomb
сообщение Aug 15 2008, 14:45
Сообщение #59


Частый гость
**

Группа: Свой
Сообщений: 148
Регистрация: 26-05-05
Пользователь №: 5 416



А радиокнопка передаёт какую-то информацию (последовательнсть байт)? Умеет ли она принимать данные? Если ответы на эти вопросы положительные, то смею предложить следующий алгоритм:

При подаче питания на устройтсво оно начинает посылать команду (один из байтов которой - адрес устройства, ну или вообще один байт). Также в программе должно быть записано, что если оно принимает данные, содержащие его адрес, то он должен выдать определённый ответ. Так вот если ответ на команду не поступил, то устройство присваивает себе этот номер. Если же ответ поступил, то адрес инкрементируется и всё повторяется заново.

Алгортм основывается на том, что человек просто не в состоянии вставить одновременни две батарейки (исключая вероятность обладания пытливого ума, при котором он привлечёт товарища и они попытаются вдвоём по команде вставлять батарейки), посему время между включением одного брелка и другого будет вполне достаточно для определения свободности номера...
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Aug 15 2008, 22:10
Сообщение #60


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



Это устройство умеет только передавать. И никаких ПСП. Строго пакет соот. протоколу. Почти ЧМ.
Лишних кнопок и выводов нет. Вообще. Кнопки могут находится в любом состоянии. Никаких индикаторов нет. 99% времени кнопка спит как убитая и вовсю экономит электричество.

Уже многочисленные эксперименты с памятью - около 200 раз - НИ РАЗУ не дали совпадающих чисел (16 разрядов).

Хуже того. Попробовал это на другом Пике (было под рукой устройство.). Эффект тот же. Там правда, недолго пробовал. Пару раз.


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post

5 страниц V  « < 2 3 4 5 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 30th July 2025 - 04:00
Рейтинг@Mail.ru


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