Documente Academic
Documente Profesional
Documente Cultură
Práctica de Laboratorio
ALUMNOS:
ASIGNATURA: MICROCONTROLADORES
HUANCAYO Mayo de 2020
Tiempos:
20 segundos: H=103 L=105
5 segundos: H=217 L=218
2 segundos: H=240 L=190
21 segundos: H=95 L=200
25 segundos H=65 L=68
Prueba de experimental:
Prueba final:
PROGRAMACION:
/* ****************************************************************************
* Programa: Problema 02, Guía de Práctica 05
* Descripción: Controlar el funcionamiento de una red semafórica con
* la secuencia de la figura. El semáforo cuenta con una
* llave (interruptor) que permite encenderlo y apagarlo.
* Al estar el semáforo apagado ninguna luz debe permanecer
* encendida. Al encenderlo, debe iniciarse la secuencia
* indicada. Los tiempos deben controlarse con cualquiera
* de los cuatro temporizadores del PIC18F2550.
* Fecha: 20/05/20
**************************************************************************** */
// Definiciones y constantes
#define S1 RA0_bit
#define V1 LATB0_bit
#define A1 LATB1_bit
#define R1 LATB2_bit
#define V2 LATB3_bit
#define R2 LATB4_bit
#define ON 1
#define OFF 0
//variables
bit R2_actual;
void main()
{
// Configuración
OSCCON=0x53; // Oscilador interno a 2 MHz
ADCON1=0x0F; // Puerto A --> digital
TRISA=0x01; // RA0 --> Entrada
TRISB=0; // RB4:RB0 --> Salidas
TRISC=0; // Puerto C no se usa
// Timer0 en modo de 16 bits con predivisor 1:256, inicia apagado
T0CON=0x17;
// Bucle principal
while(1)
{
/* ********************************* Primer if 1 **************************** */
if(S1 && !V1 && !A1 && !R1 && !V2 && !R2 && !V2 )
{
// Encender LED verde de automóviles y encender LED rojo de peatones
V1=ON; R2=ON;
TMR0H=103; TMR0L=105; // Preparar Timer0 para 20 s
TMR0IF_bit=0; // Borrar el flag de Timer0
TMR0ON_bit=ON; // y encender el temporizador
}