Нужна схема мигалки

Обсуждаем цифровые устройства...
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6312
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Re: Нужна схема мигалки

Сообщение Jack_A »

[uquote="Alex_641",url="/forum/viewtopic.php?p=4144026#p4144026"]На МК собрать, и для генерации случайных чисел использовать шум АЦП.[/uquote]
Если уж МК, то для них программ-генераторов псевдослучайных чисел - чуть больше, чем до хрена. Безо всяких АЦП, которого в данном камне может и не оказаться.
Я же говорю: взяли СТС-5 или СИ3-БГ...
Изображение
Реклама
Аватара пользователя
Alex_641
Поставщик валерьянки для Кота
Сообщения: 2314
Зарегистрирован: Вт янв 26, 2021 22:33:21

Re: Нужна схема мигалки

Сообщение Alex_641 »

Jack_A писал(а):Если уж МК, то для них программ-генераторов псевдослучайных чисел
Тут получается генератор случайных ( а не псевдо случайных) чисел !
Не спрашивай по ком звонит колокол, он звонит по тебе !
Реклама
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6312
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Re: Нужна схема мигалки

Сообщение Jack_A »

Я понимаю: для ёлочной гирлянды - это супер-архиважно ! :)) 8)
Изображение
Аватара пользователя
Alex_641
Поставщик валерьянки для Кота
Сообщения: 2314
Зарегистрирован: Вт янв 26, 2021 22:33:21

Re: Нужна схема мигалки

Сообщение Alex_641 »

Может быть не только архи важно, но и архи нужно ! :))
Не спрашивай по ком звонит колокол, он звонит по тебе !
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
nHz
Потрогал лапой паяльник
Сообщения: 325
Зарегистрирован: Пн сен 15, 2014 15:19:01
Откуда: Екатеринбург

Re: Нужна схема мигалки

Сообщение nHz »

А чем не устраивает генератор псевдослучайных чисел? Если уж делать на контроллере. В принципе его можно инициализировать шумом с АЦП при старте, чтобы последовательности не повторялись.
Выходов можно сделать сколько угодно, запрашивая своё случайное состояние для каждого.

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

#define OUT_PIN 0
bool get_random(){
   static uint32_t S = 0x00000001;
       if (S & 0x00000001) {
           S = ((S ^ 0xea000001) >> 1) | 0x80000000;
           return true;}
       else {
           S >>= 1;
           return false;};
};

void setup() {
 pinMode(OUT_PIN,OUTPUT);
}

void loop() {
  digitalWrite(OUT_PIN,get_random());
  delay(500);

};
Чистый шум АЦП может быть не достаточно случаен для длинной последовательности. И не так хорошо параллелится, так как АЦП как правило один и последовательный запрос для нескольких каналов может не дать желаемого эффекта. Надо пробовать. Тут для каждого МК свой эффект может получиться. А ГПСЧ - надёжен и предсказуем. Я думаю последовательность в 4 млрд. значений вряд ли кто-то заподозрит в недостаточной рандомности.
Спойлерyou gotta do what you gotta do
Реклама
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6312
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Re: Нужна схема мигалки

Сообщение Jack_A »

[uquote="nHz",url="/forum/viewtopic.php?p=4144270#p4144270"]Я думаю последовательность в 4 млрд. значений вряд ли кто-то заподозрит в недостаточной рандомности.[/uquote]
Не, для ёлки маловато. Для мат. моделирования физического эксперимента ещё сошло бы, а тут - ну никак не меньше 10^12 :) :)) :shock:
Изображение
Реклама
Аватара пользователя
nHz
Потрогал лапой паяльник
Сообщения: 325
Зарегистрирован: Пн сен 15, 2014 15:19:01
Откуда: Екатеринбург

Re: Нужна схема мигалки

Сообщение nHz »

Ну я нарочно взял такой ГПСЧ, что масштабируется до 2^64 просто увеличением размерности переменной S и "раздвижением" констант. В обратную сторону также можно уменьшить. Просто когда мне понадобился такой генератор для формирования снега на экране, стандартные давали легко читаемый узор. А этот, при простоте, давал неплохую картинку белого шума. Рекомендую, в общем. Если при старте инициировать каждый бит переменной S, то можно попасть в случайное место не совсем случайной последовательности.
Спойлерyou gotta do what you gotta do
diplodok
Мудрый кот
Сообщения: 1781
Зарегистрирован: Чт авг 10, 2017 20:57:51

Re: Нужна схема мигалки

Сообщение diplodok »

Изображение

А можно и так.
Аватара пользователя
nHz
Потрогал лапой паяльник
Сообщения: 325
Зарегистрирован: Пн сен 15, 2014 15:19:01
Откуда: Екатеринбург

Re: Нужна схема мигалки

Сообщение nHz »

В теории, конечно здорово, но на практике заставить такую схему не уходить в повторяющуюся короткую последовательность очень сложно, так как генераторы будут паразитно влиять друг на друга. Но если развести на отдельных микросхемах, зашунтировать по питанию конденсаторами и правильно развести питание, может и получится кое какая случайность, но всё равно будет прослеживаться ритм первичных генераторов.
Спойлерyou gotta do what you gotta do
Аватара пользователя
Maykill
Друг Кота
Сообщения: 73964
Зарегистрирован: Вт дек 20, 2011 12:46:51
Откуда: Петроград
Контактная информация:

Re: Нужна схема мигалки

Сообщение Maykill »

[uquote="Jack_A",url="/forum/viewtopic.php?p=4144355#p4144355"][uquote="nHz",url="/forum/viewtopic.php?p=4144270#p4144270"]Я думаю последовательность в 4 млрд. значений вряд ли кто-то заподозрит в недостаточной рандомности.[/uquote]
Не, для ёлки маловато. Для мат. моделирования физического эксперимента ещё сошло бы, а тут - ну никак не меньше 10^12 :) :)) :shock:[/uquote]

кстати о случайной последовательности...

26535 89793 23846 26433 83279 50288 41971 69399 37510 58209 74944
59230 78164 06286 20899 86280 34825 34211 70679 82148 08651 32823 06647
09384 46095 50582 23172 53594 08128 48111 74502 84102 70193 85211 05559
64462 29489 54930 38196 44288 10975 66593 34461 28475 64823 37867 83165
27120 19091 45648 56692 34603 48610 45432 66482 13393 60726 02491 41273
72458 70066 06315 58817 48815 20920 96282 92540 91715 36436 78925 90360
01133 05305 48820 46652 13841 46951 94151 16094 33057 27036 57595 91953
09218 61173 81932 61179 31051 18548 07446 23799 62749 56735 18857 52724
89122 79381 83011 94912 98336 73362 44065 66430 86021 39494 63952 24737
19070 21798 60943 70277 05392


с виду- аПсолютно случайная, но ЭТо фрагмент числа ПИ :)
https://newtonov.ru/chislo-pi/
ПОЛНОСТЬЮ ВЫЧИСЛЯЕМАЯ :dont_know:
НО СВИДУ СОВЕРШЕННО СЛУЧАЙНАЯ
https://www.int-s.spb.ru
" Можно я лягу?"(C)
Аватара пользователя
nHz
Потрогал лапой паяльник
Сообщения: 325
Зарегистрирован: Пн сен 15, 2014 15:19:01
Откуда: Екатеринбург

Re: Нужна схема мигалки

Сообщение nHz »

Maykill писал(а):с виду- аПсолютно случайная, но ЭТо фрагмент числа ПИ
Подозреваю, что вычисление этого фрагмента сопряжено с некоторыми вычислительными затратами.
Преимущество алгоритма ГПСЧ, приведённого мной, в том ,что затраты по памяти минимальны, не требуется операция умножения - оптимально для слабых МК класса attiny13. Когда то я на нём делал гирлянду именно с этим ГПСЧ, но там ещё всякие эффекты были с нарастанием и спадом яркости. Выглядело на самом деле интересно и не наскучивало. Почти как смотреть на огонь.
Спойлерyou gotta do what you gotta do
Аватара пользователя
Maykill
Друг Кота
Сообщения: 73964
Зарегистрирован: Вт дек 20, 2011 12:46:51
Откуда: Петроград
Контактная информация:

Re: Нужна схема мигалки

Сообщение Maykill »

что такое ПСП - помню ещё по "искусству схемотехники" ;-)
а пример- чисто иллюстрация .Как закономерность может маскироваться под случайность
Философическое такое отступление
https://www.int-s.spb.ru
" Можно я лягу?"(C)
Ответить

Вернуться в «Цифровая техника»