Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: белый шум
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
roman_golovenkov
Доброе время суток.
Подскажет кто программную реализацию на С белого или "псевдо белого" шума определенной амплитуды? В принципе, нужно реализовать генератор медленно изменяющегося сигнала (синус с периодом ~10с) 0-1 В, зашумленного в полосе частот примерно 1-100Гц амплитудой ~10мВ. На ЦАП сигнал не пойдет. Что-то вроде эмулятора приема сигнала с АЦП с интервалов отсчетов ~ 0,01с для дальнейшей обработки. Точность получения именно чисто белого шума не нужна.
kovigor
Цитата(roman_golovenkov @ Mar 18 2012, 14:37) *
Подскажет кто программную реализацию на С белого или "псевдо белого" шума определенной амплитуды?


Google молчит ? Я спросил про "алгоритм генерации шума":

http://forum.sources.ru/index.php?showtopi...mp;view=showall
roman_golovenkov
Да, на этом же сайте видел и еще коды, но не понятен принцип их работы. как установить амплитуду, например, частотный диаразон.
Откуда берутся такие числа?
Код
unsigned long GetRand(void)
{
    static unsigned long t = 1;
    unsigned long k;
    
    k = t / 12773;
    t = 16807 * (t - k * 12773) - 2836 * k;
    
    return t;
}


Код
private static double b_noise = 19.1919191919191919191919191919191919191919;
public double easyNoise()
{
//alternatively, the number 19 below can be replaced with a number of your choice, to get that particular flavour of noise.
    b_noise = b_noise * b_noise;
    int i_noise = (int)b_noise;
    b_noise = b_noise - i_noise;
    double b_noiseout = b_noise - 0.5;
    b_noise = b_noise + 19;
    return b_noiseout;
}
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.