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

 
 
> Генератор шума на AVR, Как сделать на ASM
Nanobyte
сообщение Dec 4 2006, 20:14
Сообщение #1


За битами по регистрам гоняюсь
***

Группа: Свой
Сообщений: 457
Регистрация: 24-04-06
Из: Таганрог
Пользователь №: 16 446



Здравствуйте, коллеги.
Необходимо генерировать шумовой сигнал на одном из выводов МК. Как я понимаю, используя генератор псевдослучайных чисел, можно получить требуемый результат. Разрядность числа вполне устроит 16 бит. Поиск по форуму даёт реализации только на Си.
Вопрос: как это сделать, используя ассемблер? Может, кто нибудь из Вас уже делал такой ГПСЧ ?
Спасибо.


--------------------
Курсор влево, курсор вправо - считается хакерством. FORMAT C: производится без предупреждения
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
antoker
сообщение Dec 4 2006, 21:11
Сообщение #2


Участник
*

Группа: Новичок
Сообщений: 15
Регистрация: 27-11-06
Из: Tromsoe, Norway
Пользователь №: 22 821



Цитата(Nanobyte @ Dec 4 2006, 20:14) *
Здравствуйте, коллеги.
Необходимо генерировать шумовой сигнал на одном из выводов МК. Как я понимаю, используя генератор псевдослучайных чисел, можно получить требуемый результат. Разрядность числа вполне устроит 16 бит. Поиск по форуму даёт реализации только на Си.
Вопрос: как это сделать, используя ассемблер? Может, кто нибудь из Вас уже делал такой ГПСЧ ?
Спасибо.



А какой именно тип шума хотите получить, в смысле PDF какой у него должен быть? И в спектральном плане что надо, белый или нет? Или пофиг? По поводу реализации кода в uC asm подкидываю идею в плане генерации чисел, по методу фон Ньюмана-или-какевотам(самый простой):

1. берете seed, ну например 1111
2. sqrt(1111)
3. убираете две цифры в центре
4. получили random число
5. полученное число опять возводите в степень
6. опять убираете две цифры в центре и т.п.

Проблема с этим алгоритмом - комбинации повторяются довольно часто.

Можно усложнить задачу другим алгоритмом типа Mersenne twister/generalized feedback shift register и т.п, но выбирать тебе.
Go to the top of the page
 
+Quote Post
Nanobyte
сообщение Dec 4 2006, 21:29
Сообщение #3


За битами по регистрам гоняюсь
***

Группа: Свой
Сообщений: 457
Регистрация: 24-04-06
Из: Таганрог
Пользователь №: 16 446



Цитата(antoker @ Dec 4 2006, 22:11) *
А какой именно тип шума хотите получить, в смысле PDF какой у него должен быть? И в спектральном плане что надо, белый или нет? Или пофиг?

Этот генератор будет использоваться для музыкального синтеза, поэтому полоса частот будет ограничена сверху 5 кГц, шум белый.
Я склоняюсь к к варианту генерации шума (числа) методом сдвиговых регистров с обратными связями.
Вариант, который предложил beer_warrior хорош, но требует дополнительных внешних элементов, тогда и AVR будет просто не нужен.
И ещё. Метод генерации ПСЧ очень похож на вычисление CRC, те-же сдвиги и суммирование. Я правильно понимаю ?


--------------------
Курсор влево, курсор вправо - считается хакерством. FORMAT C: производится без предупреждения
Go to the top of the page
 
+Quote Post
Oldring
сообщение Dec 4 2006, 22:03
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(Nanobyte @ Dec 4 2006, 21:29) *
И ещё. Метод генерации ПСЧ очень похож на вычисление CRC, те-же сдвиги и суммирование. Я правильно понимаю ?


Генератор случайных чисел на LFSR - это абсолютно то же самое, нахождение остатка от деления многочленов. Только многочлен желательно выбрать примитивный, чтобы получить ПСП максимальной длины.

И. кстати, что такое "разрядность числа 16 бит на одном из выводов МК"?


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Nanobyte   Генератор шума на AVR   Dec 4 2006, 20:14
- - beer_warrior   Смотреть надо реализацию для писюков или дизассемб...   Dec 4 2006, 20:35
- - aaarrr   Цитата(Nanobyte @ Dec 4 2006, 20:14) Поис...   Dec 4 2006, 20:51
|- - Nanobyte   Цитата(aaarrr @ Dec 4 2006, 21:51) Неужел...   Dec 4 2006, 21:00
- - aaarrr   Почему? Восстанавливаем алгоритм -> реализуем н...   Dec 4 2006, 21:06
|- - Nanobyte   Цитата(aaarrr @ Dec 4 2006, 22:06) Почему...   Dec 4 2006, 21:08
|- - muravei   Цитата(aaarrr @ Dec 4 2006, 21:06) Почему...   Dec 4 2006, 21:31
|- - antoker   небольшая добавочка к моему предыдущем посту (пока...   Dec 4 2006, 21:22
||- - Nanobyte   Цитата(muravei @ Dec 4 2006, 22:31) Чего ...   Dec 4 2006, 21:48
||- - Nanobyte   Цитата(Oldring @ Dec 4 2006, 23:03) И. кс...   Dec 4 2006, 22:12
|- - Oldring   Цитата(antoker @ Dec 4 2006, 21:11) 1. бе...   Dec 4 2006, 22:16
|- - Nanobyte   Цитата(Oldring @ Dec 4 2006, 23:16) Тогда...   Dec 4 2006, 22:28
||- - singlskv   Цитата(Nanobyte @ Dec 4 2006, 22:28) 2. П...   Dec 5 2006, 02:12
||- - Nanobyte   Цитата(singlskv @ Dec 5 2006, 03:12) Нет,...   Dec 5 2006, 02:28
||- - singlskv   Цитата(Nanobyte @ Dec 5 2006, 02:28) Цита...   Dec 5 2006, 02:55
|||- - Oldring   Цитата(singlskv @ Dec 5 2006, 02:55) А то...   Dec 5 2006, 11:16
||- - Oldring   Цитата(Nanobyte @ Dec 5 2006, 02:28) Ну п...   Dec 5 2006, 10:00
||- - singlskv   Цитата(Oldring @ Dec 5 2006, 10:00) Если ...   Dec 5 2006, 15:04
|- - antoker   Цитата(Oldring @ Dec 4 2006, 22:16) И раз...   Dec 5 2006, 00:42
- - aaarrr   Цитата(Nanobyte @ Dec 4 2006, 21:29) И ещ...   Dec 4 2006, 21:42
- - Oldring   Это означает, что если значение очередного бита ра...   Dec 4 2006, 22:39
|- - Nanobyte   Цитата(Oldring @ Dec 4 2006, 23:39) Интер...   Dec 4 2006, 22:48
- - Oldring   Цитатаldi r19, #87h lsl r16 sbrc r18, 7 eor r16...   Dec 4 2006, 22:58
|- - Nanobyte   Цитата(Oldring @ Dec 4 2006, 23:58) Как г...   Dec 4 2006, 23:07
- - add   Странно что поиск ничего не дал?! http://ele...   Dec 5 2006, 09:39
|- - Nanobyte   Цитата(add @ Dec 5 2006, 10:39) Странно ч...   Dec 5 2006, 12:25
- - _Bill   Цитата(Nanobyte @ Dec 4 2006, 20:14) Здра...   Dec 5 2006, 10:27
- - Oldring   Цитата(_Bill @ Dec 5 2006, 10:27) Я сдела...   Dec 5 2006, 11:01
- - _Bill   Цитата(Oldring @ Dec 5 2006, 11:01) Цитат...   Dec 5 2006, 11:35
- - Oldring   Цитата(_Bill @ Dec 5 2006, 11:35) Вообще-...   Dec 5 2006, 11:42
- - _Bill   Цитата(Oldring @ Dec 5 2006, 11:42) Цитат...   Dec 5 2006, 12:33
- - Oldring   Цитата(_Bill @ Dec 5 2006, 12:33) И счита...   Dec 5 2006, 12:35
- - _Bill   Цитата(Oldring @ Dec 5 2006, 12:35) Цитат...   Dec 5 2006, 14:14
- - Oldring   Цитата(_Bill @ Dec 5 2006, 14:14) Цитата(...   Dec 5 2006, 18:56
- - singlskv   Цитата(Oldring @ Dec 5 2006, 18:56) Где-т...   Dec 5 2006, 20:54


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 03:58
Рейтинг@Mail.ru


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