Escolar Documentos
Profissional Documentos
Cultura Documentos
Temperatura do ambiente
Microcontroladores
(Placa da BBX )
Botoes da Placa
Cooler da Placa
// Variveis
unsigned short Nivel = 255;
void main()
{
ADCON1 = 0x0F;
TRISB = 0b00000111;
PORTB = 0X00;
PWM1_Init(5000);
PWM1_Start();
while(1)
{
// Monitoramento dos Botes
if(PORTB.RB0==0)
// Verifica se BTN0 foi pressionado
{
Nivel = 0;
delay_ms(100);
}
if(PORTB.RB1==0)
{
Nivel = 1;
delay_ms(100);
}
if(PORTB.RB2==0)
{
Nivel = 2;
delay_ms(100);
}
// Definio do Ritmo
switch (Nivel)
{
case 0:
{
PORTB.RB4 = 1;
PORTB.RB5 = 0;
delay_ms(500);
PORTB.RB4 = 0;
PORTB.RB5 = 1;
delay_ms(500);
PWM1_Set_Duty(50);
break;
}
case 1:
{
PORTB.RB4 = 1;
PORTB.RB5 = 0;
delay_ms(250);
PORTB.RB4 = 0;
PORTB.RB5 = 1;
delay_ms(250);
PWM1_Set_Duty(80);
break;
}
case 2:
{
PORTB.RB4 = 1;
PORTB.RB5 = 0;
delay_ms(125);
PORTB.RB4 = 0;
PORTB.RB5 = 1;
delay_ms(125);
PWM1_Set_Duty(255);
break;
}
default:
{
PORTB.RB4 = 0;
PORTB.RB5 = 0;
break;
}
}
}
}
Concluso
O trabalho apresentado uma continuao do apresentado
anteriormente no 1 Bimestre, aperfeioando: antes o ritmo definido
era mantido somente atravs do pressionamento contnuo do boto,
agora, com apenas um click, o comando mantido indefinidamente
at ser pressionado outro boto ou se placa for desligada.
A proposta do trabalho implementao de um comando de controle,
que nesse caso, o da temperatura.
Para aperfeioar o trabalho falta criar um comando de atuador que
gere calor, e um outro comando para ler esse calor e acionar direto
automaticamente o controle, de acordo a cada um dos trs ritmos prprogramados.