|
Diode IR ? mardi 4 décembre 2012 18:22:07 |
Membre depuis : 13 ans Messages: 15 |
|
Re: Diode IR ? mercredi 5 décembre 2012 18:00:54 |
Administrateur Membre depuis : 20 ans Messages: 640 |
|
Re: Diode IR ? mercredi 5 décembre 2012 20:58:56 |
Membre depuis : 13 ans Messages: 15 |
|
Re: Diode IR ? mercredi 5 décembre 2012 21:12:18 |
Administrateur Membre depuis : 20 ans Messages: 640 |
|
Re: Diode IR ? mercredi 5 décembre 2012 21:26:52 |
Membre depuis : 13 ans Messages: 15 |
|
Re: Diode IR ? jeudi 6 décembre 2012 15:00:22 |
Membre depuis : 13 ans Messages: 15 |
maintenant je pense à envoyer des codes comme ça je peux par exemple commander plusieurs récepteurs ou bien exécuter plusieurs taches pour un récepteur mais l'idée n'est pas assez simple avec la PWM ?
|
Re: Diode IR ? jeudi 6 décembre 2012 21:39:54 |
Administrateur Membre depuis : 20 ans Messages: 640 |
|
Re: Diode IR ? samedi 8 décembre 2012 17:02:55 |
Membre depuis : 13 ans Messages: 15 |
int boucle;
int cle;
int cle_test;
void PWM_start(){
PWM1_Init(36000);
PWM1_Set_Duty(127);
PWM1_Start();
delay_us(1280);
PWM1_stop();
}
void PWM(){
delay_us(640);
PWM1_Init(36000);
PWM1_Set_Duty(127);
PWM1_Start();
delay_us(640);
PWM1_stop();
}
void interrupt() {
if (PORTB.f7==1) goto tx1;
if (PORTB.f6==1) goto tx2;
goto fin;
tx1:
cle=0X11;
goto tx;
tx2:
cle=0X12;
tx:
PWM_start();
delay_us(640);
cle_test=cle &&0b10000000 ;
if (cle_test==0X80){PWM();}
else delay_us(1280);
endtx:
cle=cle<<1;
PWM();
boucle=boucle-1;
if(boucle==0){delay_ms(40);}
else goto tx;
fin:
delay_us(1);
}
void main() {TRISA.f0=0;TRISB=0XFF;
while(1){
boucle=8;
INTCON=8;
asm SLEEP; // Plonger le pic dans un someil
}
}
void Capteur_Temperature(){
PORTB.F2=1;
delay_ms(2000);
PORTB.F2=0;
delay_ms(2000);
}
void main() {int boucle;int cle;TRISB=1;
while(1){
main:
if (PORTB.f0==1){goto main;}
rrx:
boucle=0X08;
delay_us(1280);
if (PORTB.f0==1){goto main;}
bouclerx:
if (PORTB.f0==0){goto bouclerx;}
else
delay_us(640);
cle=cle<<1;
if (PORTB.f0==0){goto rx1;}
else cle=(cle &&0b11111110);
rxend:
delay_us(820);
if (PORTB.f0==1){goto main;}
else boucle=boucle-1;
if (boucle!=0){goto bouclerx;}
else goto analyse;
rx1:
cle=(cle ||0b00000001);
goto rxend;
analyse:
if (cle==0X11){Capteur_Temperature();}
}
}
|
Re: Diode IR ? samedi 8 décembre 2012 17:11:09 |
Membre depuis : 13 ans Messages: 15 |
|
Re: Diode IR ? dimanche 9 décembre 2012 09:21:06 |
Administrateur Membre depuis : 20 ans Messages: 640 |