Bin Bin Clock Clock Reloj Reloj Binario Binario Implementación del Reloj Binario
El puerto Paralelo • Utilizado por impresoras • Se diferencia del puerto serial en la cantidad de datos que maneja. Un puerto serial maneja un bit a la vez. • El puerto paralelo maneja 1 byte(8 bits) a la vez.
El puerto Paralelo • Posee tres registros • DATA REGISTER (8 pines) • CONTROL REGISTER (4 pines) • STATUS REGISTER (5 pines)
El puerto Paralelo • El registro de DATOS tiene 8 bits que se pueden utilizar como salida • El registro de CONTROL tiene 4 pines que se pueden utilizar como entrada y salida. • El registro de ESTADO tiene 5 pines los que solamente se pueden utilizar como entrada.
El puerto Paralelo • Utilizaremos los 6 primeros bits del registro de datos para los minutos • Los 4 bits del registro de control para las horas. • Solo nos queda dos bits del puerto paralelo razón ésta por la cual solo implementaremos horas y minutos.
El puerto Paralelo • Para implementar con segundos necesitamos de CI más costosos, por lo que se implementación dejaremos para más adelante.
Procedimiento para crear el circuito Herramientas necesarias 1. Soldador (cautin) 2. Estaño 3. Tijeras 4. Pelacables 5. Pinzas
Procedimiento para crear el circuito 1)
Calentar la pista de cobre y la pata del componente por 10 segundos con el soldador. Si el componente es muy sencible al calor, no sobrecalentar, usar siempre un soldador de 25 watts, y dejar que el componente se enfríe antes de soldar otra de sus patas. Si estás por soldar un circuito integrado, es recomendable soldar un sócalo y no soldar el circuito integrado directamente a la placa.
Procedimiento para crear el circuito 2) Acercar el estaño a la pista de cobre y a la pata del componente hasta que el estaño se empiece a fundir:
Procedimiento para crear el circuito 3) Mover el soldador y la punta de estaño hacia arriba antes de separarlos:
Procedimiento para crear el circuito 4) Cortar la pata del componente cuidadosamente. Buena Soldadura
Mala Soldadura
La pista de cobre no está bien caliente
Qué debemos soldar en el DB25? Los pines 2 al 7 debe ser soldados Cada uno a un cable Los pines 1, 14, 16 y 17 (azules en El grafico) deben también tener Cables Los pines del 18 al 25 deben Unirse a un solo cable que será La tierra (0 V).
Qué es un LED? Componentes básicos: el diodo led
Dispositivo electro luminiscente que emite luz cuando se aplica una tensión de unos 2 o 3 V por sus patillas
Si se aplica una tensión de polarización directa (ánodo + y cátodo -) a través de una resistencia de absorción, emite luz. Esta puede ser de diferentes colores según modelo.
Qué es una Resistencia? Componentes básicos: Resistencias •
Proporcionan un efecto de absorción de tensión en función del valor que tengan. Se miden en ohmios (Ω) y su valor se determina mediante un código de colores.
COLOR
Valor
1ª cifra (4)
Negro
0
Marrón
1
Rojo
2
Naranja
3
Amarillo
4
Verde
5
Azul
6
Tolerancia:
Violeta
7
Oro=5%
Gris
8
Blanco
9
2ª cifra (7) Nº de ceros (1)
TOTAL=470 Ω
Plata=10%
RAD CPP • Es una librería que hace posible que la programación de interfases gráficas sea fácil. • Se puede programar en C y en C++
Un ejemplo sencillo #include Form form1("Timer test - RAD C++ Example"); //crear un formulario simple String timer1 = "Timer1"; //nombre único para el timer int x=0; //contador que se incrementará cada vez que venza el timer
Un ejemplo sencillo(cont.) EL subprograma que maneja los mensajes FormProcedure form1Proc(FormProcArgs) { ON_CLOSE() { //close applciation when form is closed form1.removeTimer(timer1); Application.close();
} ON_TIMER_NOTIFICATION(timer1) { //when timer named 'Timer1' notifies //increase value of variable 'x' and assgn it to caption/title of form //NOTE : str returns string presentation of a numeric value form1.caption = str(++x); } }
return 0;
rad_main()
Un ejemplo sencillo(cont.) El programa principal
//attach procedure to the form form1.procedure = form1Proc; //Set new timer, set notification time to 1 second, which will notify our Form after //each second continously until timer is not removed form1.setTimer(timer1, 1 * SECONDS); //MOREOVER: //1. you may pass direct value in terms of milliseconds e.g. 1000 in this case which is 1 second //2. you can use 2 * MINUTES which is 2 minutes, or 2 * HOURS which is repectively 2 hours rad_end()
Para tomar la hora del sistema 1. • • • •
#include char heure[80]; struct tm *ptr; time_t tam; int h, min, sec;
Variables que necesitaremos
Para tomar la hora del sistema • • •
tam = time(NULL); ptr = localtime(&tam); strftime (heure, 80,Variables “La hora es”, que necesitaremos %I:%M:%S %p.", ptr);