TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: PabloFiscella en 02 de Junio de 2004, 10:43:00

Título: Numeros Aleatorios
Publicado por: PabloFiscella en 02 de Junio de 2004, 10:43:00
Hola a todos:

Existe alguna forma de sacar numeros aleatorios en PCW.

Gracias y Saludos.
Pablo
Título: RE: Numeros Aleatorios
Publicado por: jorgevert en 02 de Junio de 2004, 11:54:00
Para poder generar un numero aleatorio puedes usar la funcion rand que se encuentra en la libreria STDLIB.H
si quieres cambiar el rango de retorno de la funcion debes cambiar el valor de RAND_MAX. dentro de la libreria

saludos
Título: RE: Numeros Aleatorios
Publicado por: PabloFiscella en 02 de Junio de 2004, 11:56:00
Muchas gracias. No lo encontraba.

Saludos.
Pablo
Título: RE: Numeros Aleatorios
Publicado por: pocher en 02 de Junio de 2004, 12:50:00
Otra forma.

Podrías capturar en un momento determinado, el valor de un timer, el TMR0 por ejemplo y si por ejemplo quieres generar un número aleatorio entre 0 y 9, por programación trocear el intervalo total del timer que es 255 en 10 partes y mediante if preguntarte si el valor del timer esta en el primer intervalo que saque un 0, si en el 2º que saque un 1 etc.

Si quieres obtener un rango más amplio de valores usa el TMR1 que llega hasta 65535.

Un saludo
Título: RE: Numeros Aleatorios
Publicado por: PabloFiscella en 02 de Junio de 2004, 15:28:00
Ok gracias, lo voy a probar.
Título: RE: Numeros Aleatorios
Publicado por: MGLSOFT en 02 de Junio de 2004, 16:06:00
Debes llamar a Srand, que genera la semilla, con defines puedes acomodar lo que permite que la funcion tome como limites.
es mucho mejor esto en C que en PBP, donde hasta mi abuelita adivina cuales numeros van a salir...je..je..