générateur de bits aléatoires

Bonjour,

Je recherche une application (pour PC sous Windows) qui permet de générer sur le port RS232, une séquence binaire aléatoire. De plus, il faudrait que l'on puisse régler le débit dans une plage assez large (de l'ordre de 100 bit/s à 100 kbit/s).

Merci d'avance,

FS

Reply to
fabrices
Loading thread data ...

bonsoir

une premiere approche... cr=E9er un fichier texte... le remplir d'octets... "au hazard"... envoyer le fichier sur le port com... via le terminal...

sinon faire un programme en vb, c... g=E9n=E9rant les bits au hazard... et utilisant, par exemple, la librairie port.dll.... pour l'envoi des bits sur le port com..

vede ;O]

Reply to
vede

Bonjour,

S'il s'agit de générer réellement une suite de bits aléatoires, cela ne marchera pas sur le port COM d'un PC.

Le port COM gère en effet une transmission asynchrone où tout caractère transmis est précédé d'un START (bit à zéro) et suivi d'un STOP (niveau

1 de durée variable). Le START et le STOP seront toujours positionnés à la même place dans la séquence et la suite générée ne sera donc pas aléatoire.

Je ne vois vraiment pas comment on pourrait faire avec le port COM.

Bonnes manips

Jean-François FOURCADIER

-------------------------------

fabrices a écrit :

Reply to
J.F. FOURCADIER

On 18 sep, 08:28, fabrices :

Tu peux utiliser une fonction generatrice de polynomes cycliques, telles qu'uilises pour generer les CRC32. Ca donne une bonne sequence pseudo-aleatoire, et la densite de distribution des nombres est uniforme.

//------------------------------------------------------------ // Generateur pseudo-aleatoire //------------------------------------------------------------ void fNextKey( unsigned int *k ) { unsigned int v, w =3D *k; v =3D (w>>31) ^ (w>>6) ^ (w>>4) ^ (w>>2) ^ (w>>1) ^ w; *k =3D ((v&1) >1); }

//------------------------------------------------------------ // Programme principal //------------------------------------------------------------ unsigned int u =3D 0; // entier sur 32 bits (Windows)

// initilalise "u" a une valeur non nulle

while( !u ) { u =3D (unsigned int)(rand())

Reply to
Jean-Christophe

Merci pour toutes ces infos.

Mais je reste persuadé que quelqu'un a déjà écrit ce genre de programme...

Cordialement, FS

Jean-Christophe a écrit :

Reply to
fabrices

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.