Свежие обсуждения
Микроконтроллеры

Random !?

1 4

Как Можно сделать выдачу случайного числа в Порт ?
(Или псевдослучайного)

 

Самый простой вариант - запустить счётчик, а по стробу писать его значение в порт

 

Здесь две подзадачи --
генерация случайного числа,
вывод его через ножки мк в требуемом формате.

На чем вы споткнулись?

 

А если у вас просто задача сделать генератор случайного числа - рекомендовал бы привязать цифровой генератор шума (и инете есть схемка) к восьмибитному счётчику. Как вариант пойдут два 4х битных в одном корпусе (точно непомню: толи 155ИД4, толи 155ИЕ4). Естественно подобные микрухе доступны и в SMD корпусах (аналоги)

И никаких контроллеров

 

основан на шумах стабиллитрона
подаеш на ацп и с него в порт
http://www.eepn.com/Locator/Products/Index.cfm?Ad=1&ArticleID=32322

сам мк не имеет железного генератора

 

djelektronik
подаеш на ацп и с него в порт
Это помоему уже лес. Хотябы та же обвеска ИОНа.

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

 

Для какой цели требуются случайные числа? Еще точнее - насколько они должны быть случайными? Большинство методов генерации "хороших" случайных чисел требуют операции умножения (например, линейный конгруэнтный метод). Оно вам надо? Если требуемая длина псевдослучайной последовательности в разумных пределах (например, не более 256 чисел), проще заранее просчитать ряд чисел в Excel, и зашить их константами во флэш-память.По скорости это будет самый быстрый вариант.

 

Некоррелируемый ГШ - сложная тех. задача.
Гораздо проще и функциональнее построение псевдо-ГШ с регулируемым распределением вероятности.
Вам нужно сформулировать критерии.

 

Так я делал такой генератор псевдо случайной последовательности на МК. На дискрете он реализуется в виде линии задержки с обратной связью. Сигнал с отводов подается на "исключающее ИЛИ" и на вход линии задержки.
Очень просто реализуется на МК командами rlf (rrf) и xorlw (xorwf) в случае пиков. Период и "плотность" псевдошума зависит от длины регистра и количества отводов. "Отводы" делаются не откуда попало, существует строгая математическая закономерность.

 

... а чтобы долго не искать номера отводов, вот несколько готовых таблиц.

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

89909.rar