JUEGO DE TIRO A CANASTA CON INDICADOR DE PUNTOS
FASE 2:
PROGRAMACIÓN BÁSICA CON BUCLES DE CONTROL
- COMPETENCIA ESPECÍFICA DE LA SESIÓN:
- Manejo de puertos de forma grupal e independiente para manejo de luces.
- Programación de sonidos mediante subrutinas.
- Creación de subrutinas mediante funciones.
- Declaración de variables enteras.
Las declaraciones de control son usadas para controlar el preceso de ejecución del programa.
Lo que Admite CCS son:
- If-Else
- While
- Do While
- For
- Swicth-Case
- Return
- Break, Continue y Goto
IF-ELSE
Con la Ayuda de If-Else se pueden tomar decisiones.
if (expresion)
sentencia1;
else
sentencia2;
Primero se evalúa la EXPRESIÓN y si es cierta, se ejecuta la SENTENCIA1, en el caso contrario, ejecuta la SENTENCIA2
Pueden anidarse los If-Else dando lugar a los ELSE-IF; esto permite tomar decisiones multiples.
if (expresion)
sentencia1;
else if (expresion)
sentencia2;
else
sentencia3;
En este caso las EXPRESIONES se evaluan en orden, si alguna de ellas es cierta la SENTENCIA asociada a ella se ejecutara y se termina la funcion. En caso contrario se ejecutra la SENTENCIA del ELSE. En ambos casos si existen arias sentencias para ejecutar se deben utilizar llaves.

SWITCH
Switch es un caso particular de una decision multiple
switch (expresion)
{
case constante1;
sentencias;
break;
case constante2;
sentecias;
break;
....
{default:
sentencias;}
}
Evalua la expresion y en orden a la CONSTANTE adecuada realiza las sentencias asociadas. Si ninguno de los CASE corresponde a la CONSTANTE se ejecutara DEFAULT (este comando es opcional).
El comnado BREAK provoca la salida de SWITCH, de lo contratio se ejecuta el siguite CASE.

FOR
Se usa para repetir sentencias
for (inicializacion ; condición de finalización ; incremento)
{
sentencias;
}
En las expresiones del FOR la inicializacion es una variable al cual se le asigna un valor inicial con el que controlar el bucle. La condición de finalizacion sirve para evaluar ANTES de ejecutar las sentecias si es cierto o no, en elcaso de ser cierta s ejecutan las sentecias y en caso contrario se sale del for. Por ultimo, la expresion de incremento o decremento modifica la variable de control DESPUES de eejecutar el bucle.

WHILE / DO-WHILE
While se utiliza para repetir sentecias .
while (expresion)
{
sentencias
}
La expresion y la sentencia se ejecutan mientras la expresion es verdadera, cuando es falsa se sale del while.
DO-WHILE se diferencia del WHILE y del FOR en la condicion de finalizacion, la cual se evalua al final de bucle, por lo que las sentencias se ejecutan al menos una vez.
Do
{
sentecias;
}
while (expresion);
Si se ejecutan las siguientes expresiones se consigue en un BUCLE SIN FIN;
While(1)
{
sentencias;
}
Do
{
sentencais;
}
While (1)
Programa desarrollado en el Laboratorio
Elaborar un programa que encienda un led a la vez cada vez que se presione un pulsador y al llegar al sexto pulso, que emita 3 bips y el programa se detenga allí hasta que se reinicie dicho programa presionando RESET. Muestre la simulación de dicho programa.
SIMULACION EN PROTEUS
OBSERVACIONES
- Observamos una instruccion de tipo Switch es un caso particular de una decision multiple, lo usamos para saber el estado de pulsaciones en el pulsador.
- Un bucle de tipo for se usa para repetir sentencias y contiene en ella for (inicializacion ; condición de finalización ; incremento).
- Notamos que cada puerto esta completamente codificado ya sea esta entrada o salida
- Al escribir nuestro condigo y mandarlo a la placa, esta no emitia el BIP indicado en el trabajo, ya que nuesto piezoelectrico estaba malogrado.
CONCLUSIONES
- Pudimos concluir que el comando OUTPUT_c(0b00000000) indica el valor de la salida ya que esta esta en código binario (000000000)
- Concluimos que al declarar una Función esta se puede llamar al final del bucle principal
- Al realizar el código para el trabajo se tiene que estar muy atento a las signos ya sean ";" "{}" "()".
- Analizamos al compilar con éxito nuestro codigo esta crea una extensión ".cof" esta nos sirve para simularlo en el "ENTRNADOR HFK-010U PIC S" mostrando los detalles tantos que pueden ser negativo y positivos.
RECOMENDACIONES
Para desarrollar un programa en lenguaje C, es necesario dar un bosquejo en borrador un diagrama de flujo que nos facilita la compresion del codigo.
Cuando se preograma en CCS por default los pines ya se configura lo que nos da una gran ventaja.
En la entrada de los pulsadores existe un rebote lo cual genera errore en el programa para eliminarlos debemos poner retardos de tiempos cortos, para evitarlos.