Novedades Parallax
 Ejercicios Propeller
 
Ejercicio 8: Clock RC interno

"Clock", este sistema provee el ritmo de trabajo de nuestro Propeller

Hasta este momento hemos trabajado sin prestarle atención al "Clock", este sistema provee el ritmo de trabajo de nuestro Propeller, el hecho de no especificar un modo de trabajo en particular, hace que el sistema tome por defecto la opción RCFAST, pone a trabajar un oscilador RC interno, este tipo de oscilación no es para nada preciso, sin embargo sirve para utilizarlo en aplicaciones donde los tiempos de duración no son muy importantes, este reloj interno tiene 12 MHz de frecuencia nominal, debido a las características inherentes a este tipo de osciladores, puede variar esta frecuencia entre 8 y 20 MHz (Pág. 30).

Para comenzar a trabajar en el tema utilizaremos el código del Ejercicio-1 y le agregamos una entrada para constantes y luego de esta, una línea "_CLKMODE = RCSLOW (Pág. 131)", el sistema se ralentiza una enormidad, nuestro sistema ahora trabaja a 20 KHz nominales (de 13 a 33 KHz) 600 veces más lento, para no dormirnos esperando un parpadeo del LED, modificaremos la línea que actúa, como temporizador en nuestro programa "waitcnt(3_000_000 + cnt)" a "waitcnt(5_000 + cnt)", dividimos por 600.

¿Como se interpreta todo esto? En el ejercicio-1 tomábamos 3_000_000 de ciclos de Clock, de un total de 12_000_000 por segundo (la cuarta parte) o sea que hablando en tiempo en lugar de ciclos sería un cuarto de segundo, en nuestro actual ejercicio estamos tomando 5_000 partes de un total de 20_000, de esta forma obtenemos el mismo tiempo de demora a partir de otra frecuencia de Clock distinta. Ya que estamos hablando de "tiempos", es "hora" de hacer otra pregunta ¿Para que sirve todo esto? En los circuitos digitales existe una correlación entre la velocidad de trabajo y el consumo de energía, en el supuesto que nuestra aplicación trabaje alimentada desde la red, no serían problema unos pocos mili amperes extra, pero en cambio si se trata de un equipo alimentado por baterías, valdría la pena analizar cual sería el valor mínimo, de frecuencia posible.


Descarga del código fuente:
www.todomicrostamp.com/microsparallax/data/usr_642385188.zip





Ejercicios publicados:

Ejercicio 1: Nuestro primer programa, bucle infinito
Con este primer ejercicio se puede, además de comenzar a programar el Propeller, verificar el funcionamiento del sistema. El objetivo es hacer parpadear un LED, conectado en este caso al PIN 16.

Ejercicio 2: Bucle contador, directo
En el ejercicio anterior el programa hacía un bucle infinito. Supongamos que queremos un nuevo programa que realice la misma rutina, pero solamente por una determinada cantidad de veces. Para lograr esto, debemos insertar a continuación de "repeat", un número que sea igual al doble de veces que queremos que el LED parpadee; esto se debe a que cada vez que el programa recorre el bucle, una vez lo enciende y en la otra lo apaga.

Ejercicio 3: Bucle contador con constante
En algunas ocasiones se pueden crear valores constantes dentro del programa. Este no es el caso de nuestro programa en donde el valor se utiliza en un sólo lugar; por eso lo ponemos sólo como ejemplo. Pero en algunas ocasiones puede ocurrir que un mismo valor, se repita en varias ocasiones y eventualmente deba cambiarse; al utilizar constantes, éste cambio se realiza una vez y se manifiesta en todos los sitios donde se emplea CON.

Ejercicio 4: Bucle contador con variable
Al contrario que las constantes, las variables son espacio en la memoria con un nombre, en donde los valores se pueden cambiar durante la ejecución del programa.

Ejercicio 5: Una variable utilizada en distintos comandos
En este ejercicio utilizaremos la misma variable "n", además que para el contador, como un factor de multiplicación del tiempo de pausa; de esta forma éste se irá incrementando en cada bucle.

Ejercicio 6: Encendido y apagado secuencial del conjunto de LEDs
En éste ejercicio utilizaremos los ocho LEDs, conectados en los pines 16 al 23, se encienden todos en forma secuencial, una vez logrado esto se apagan siguiendo el mismo orden.

Ejercicio 7: Parpadeo secuencial de LEDs individuales
Modificamos el ejercicio anterior, de forma que los LEDs permanezcan encendidos de a uno por vez.

Ejercicio 8: Clock RC interno
"Clock", este sistema provee el ritmo de trabajo de nuestro Propeller

Ejercicio 9: Clock controlado por; critales o resonadores
Existen casos que se debe tener mucho cuidado con la exactitud del Clock

Ejercicio 10: Multiplicar la frecuencia del clock
El microcontrolador Propeller, dispone de un circuito interno, multiplicador de la frecuencia de entrada

Ejeccicio 11: Frecuencia final
Se puede indicar en el código fuente, la frecuencia final de nuestro sistema de Clock







RoboEye #30008