Mood_lamp
Functions
Xorshift random number generator

This module consists 16-bit xorshift random number generator More...

Functions

void uint16_xorshift_init (uint16_t value)
 Xorshift initialization. More...
 
uint16_t get_random_uint16 ()
 Random value getter. More...
 

Detailed Description

This module consists 16-bit xorshift random number generator

Function Documentation

◆ get_random_uint16()

uint16_t get_random_uint16 ( )

Random value getter.

Calculates new random value by 16-bit xorshift method:

u16 get_random_u16(){
static uint16_t y16 = 1;
y16 ^= (y16 << 13);
y16 ^= (y16 >> 9);
return y16 ^= (y16 << 7);
}
Returns
Calculated random value

◆ uint16_xorshift_init()

void uint16_xorshift_init ( uint16_t  value)

Xorshift initialization.

Initializes xorshift random number generator by specified value

Parameters
[in]valueInitializing value
Note
If value is zero xorshift random number generator will be not initialized