Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
DESCRITIVO
Inicialmente partimos do princpio de funcionamento da prensa
pneumtica, que possui os seguintes requisitos de funcionamento com
segurana:
1- Pressionado somente um boto, a prensa no dever funcionar.
2- Se ambos os botes forem pressionados dentro de um intervalo de 5
segundos, a prensa dever ser acionada.
3- Se um boto pressionado, mas o outro tardar mais do que 5 segundos
para ser pressionado, uma indicao de alarme dever ser acesa, e a
prensa no poder ser acionada.
4- Caso o item 3 ocorra, ser necessrio soltar os dois botes para apagar
a indicao de alarme, e reiniciar o processo.
5- Uma vez que a prensa esteja funcionando, e um dos botes seja
liberado, a prensa dever ser desativada.
6- Caso o item 5 ocorra, e o outro boto seja pressionado novamente
dentro de um intervalo de 5 segundos, a prensa voltar a funcionar.
7- Caso contrrio a indicao de emergncia dever ser acesa, sendo
necessrio soltar os dois botes para reiniciar o processo.
=
)=
**
+
) 20 .'/'0'(
=
9*
:
CDIGO
/*
* PRENSA_FINAL.cpp
*
* Created: 21/04/2016 09:21:40
* Author: Mauricio Bonadiman, Gabriel Centenaro , Mateus Tognon
*/
#include <avr/io.h>
#include <avr/interrupt.h>
#define F_CPU 1000000UL
int x=0;
int cont=0;
ISR(TIMER0_OVF_vect )
{
cont++;
TCNT0=12;
}
int main()
{
DDRC=0b00000011;
TCCR0=0b00000101;
PORTB=0b11111111;
sei();
TIMSK|=(1<<TOIE0);
TCNT0=12;
int x=0;
while(1)
{
if((PINB==0b11111110) | (PINB==0b11111101) )
{TCCR0|=(1<<CS02) | (1<<CS00);
PORTC&=~0b00000001;
if(cont >20) PORTC|=0b00000010;
}
if((PINB==0b11111100) )
{ if(cont > 20)
{ PORTC|=0b00000010;
TCCR0=0;cont=0;
x=1; }
{ PORTC|=0b00000001;
PORTC&=~0b00000010;TCCR0=0;cont=0; }
}
if(PINB==0b11111111)
{PORTC&=~0b00000011;
TCCR0=0;
cont=0;
TCNT0=12;
x=0; }
}
}
//
//
//
//
//
SIMULAO PROTEUS
PROJETO NA PROTOBOARD.
- imagens