Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

accensione consecutiva con ciclo for pic184620

Raccolta di codici sorgenti

Moderatore: Foto UtentePaolino

0
voti

[1] accensione consecutiva con ciclo for pic184620

Messaggioda Foto Utenteelettrokimbo » 22 apr 2012, 17:40

salve a tutti..dopo aver effettuato la visione delle uscite sui 4 led della scheda picdem2 plus con pic18f4620..vorrei snellire il lavoro adottando un ciclo for che mi permetta di accendere consecutivamente i led tipo knight rider..in effetti l'ho fatto,ma usando queste istruzioni un po dispersive..come potrei abbreviare il tutto ???
grazie

Codice: Seleziona tutto
#include <p18f4620.h>   
#include <delays.h>

const int a=40;

void main (void){








  LATB = 0x00;
  TRISB = 0x11110000; //imposto uscite i bit dei 4 led RB3,RB2,RB1,RB0


for (;;)
{


PORTBbits.RB0=1;
Delay10KTCYx(a); //Delay di 0,5s
PORTBbits.RB0=0;
Delay10KTCYx(a);

PORTBbits.RB1=1;
Delay10KTCYx(a); //Delay di 0,5s
PORTBbits.RB1=0;
Delay10KTCYx(a);

PORTBbits.RB2=1;
Delay10KTCYx(a); //Delay di 0,5s
PORTBbits.RB2=0;
Delay10KTCYx(a);

PORTBbits.RB3=1;
Delay10KTCYx(a); //Delay di 0,5s
PORTBbits.RB3=0;
Delay10KTCYx(a);

PORTBbits.RB2=1;
Delay10KTCYx(a);
PORTBbits.RB2=0;
Delay10KTCYx(a);

PORTBbits.RB1=1;
Delay10KTCYx(a); //Delay di 0,5s
PORTBbits.RB1=0;
Delay10KTCYx(a);
}         
                                   
while (1) {
}

}
Avatar utente
Foto Utenteelettrokimbo
22 1 4
Frequentatore
Frequentatore
 
Messaggi: 156
Iscritto il: 7 dic 2011, 23:45

0
voti

[2] Re: accensione consecutiva con ciclo for pic184620

Messaggioda Foto UtenteTardoFreak » 23 apr 2012, 0:47

Uozz "knight rider" :-M
"La follia sta nel fare sempre la stessa cosa aspettandosi risultati diversi".
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
Avatar utente
Foto UtenteTardoFreak
73,9k 8 12 13
-EY Legend-
-EY Legend-
 
Messaggi: 15754
Iscritto il: 16 dic 2009, 11:10
Località: Torino - 3° pianeta del Sistema Solare

0
voti

[3] Re: accensione consecutiva con ciclo for pic184620

Messaggioda Foto Utentesimo85 » 23 apr 2012, 0:47

Devi usare una variabile di controllo per quando il valore di PORTB è 0x01 o 0xf0.. E poi fare lo shift a sinistra e destra..
Avatar utente
Foto Utentesimo85
30,9k 7 12 13
Disattivato su sua richiesta
 
Messaggi: 9927
Iscritto il: 30 ago 2010, 4:59


Torna a Firmware e programmazione

Chi c’è in linea

Visitano il forum: Nessuno e 4 ospiti