Страница 1 из 1

белый шум

Добавлено: Чт дек 06, 2012 20:21:16
pashka536
добрый всем вечер.подскажите :)) может у кого есть код программы генератора белого шума

Re: белый шум

Добавлено: Чт дек 06, 2012 21:06:06
ds1307
А зачем вам? Он обычно на паре транзисторов делается. На какой это частоте должен работать МК, чтобы результатом его работы был белый шум? :shock:

Re: белый шум

Добавлено: Пт дек 07, 2012 00:48:23
ILYAUL
Самый простой генератор белого шума - это сложение двух чисел по модулю два. О псевдопоследовательностях , что нибудь почитайте. и XOR Вам в помощь

Re: белый шум

Добавлено: Пт дек 07, 2012 01:17:29
DrGandalf
Для генерации белого шума можно использовать т. н. РЛСОС. Посмотрите здесь

Re: белый шум

Добавлено: Пт дек 07, 2012 13:27:21
Gudd-Head
DrGandalf писал(а): т. н. РЛСОС
Или ЛРР — линейно-рекуррентный регистр. Здесь можно почитать http://radiokot.ru/circuit/digital/game/03/

Re: белый шум

Добавлено: Сб дек 08, 2012 02:12:05
Antifritz
Или стандартная функция генерации ПСЧ. Но все же, зачем для этого использовать контроллер и какой?

Re: белый шум

Добавлено: Ср дек 12, 2012 18:10:50
pashka536
использую авр или мсп!необходимо для того,что бы реализовать еще несколько функций и что бы это все занимало мало места

Re: белый шум

Добавлено: Чт дек 13, 2012 02:48:42
Зукс
Я делал прогу для генерации белого шума. Реализация очень проста. Программируем таймер на шим и кидаем в регистры уровня ШИМ рандомно сгенерированное число от ноля до глубины ШИМ, ставим это в бесконечный цикл и все. Код писал под Avr Studio. На выходе получается довольно качественный белый шум звуковых частот. А вот и сам код:

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

#define F_CPU 8000000UL
#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/delay.h>
#include <stdlib.h>


void init_pwm (void)
{
  TCCR1A=(1<<COM1A1)|(1<<WGM10); 
  TCCR1B=(1<<CS10);
  OCR1A=0x00;
}


int main(void)
{ 
 DDRB=0x02;
 init_pwm();

 while (1)
  { 
      OCR1A=rand()/128;
  }
 return 1;
}