Bienvenue aux nouveaux arrivants sur FantasPic !
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
Modérateur : Jérémy
instruction swith case et pic16f877a
instruction swith case et pic16f877a
- paulfjujo
Expert- Messages : 2597
- Âge : 73
- Enregistré en : juillet 2015
- Localisation : 01800
- Contact :
bonjour,
Pourquoi un switch case ?
dyli a écrit :Bonjour tout le monde,
J'ai essayé de de lire ou copier l'état de portb sur port c, c-a-d si:
RB0 vaut 1 logique , je fais allumer une led sur RC0
RB1 vaut 0 logique, j'éteins la led sur RC1
ainsi de suite jusqu'a RB7, ma question est comment faire avec 'instruction switch case?
Merci
Pourquoi un switch case ?
Code : Tout sélectionner
TRISC=0; // en sortie
TRISB=0xFF; //en entree
LATC=PORTB; // bits du port B copié sur sorties portC
instruction swith case et pic16f877a
salut paulfjujo,
switch case c'était juste pour apprendre a l'utiliser et me familiariser avec...
Par contre quand je compile avec Mikroc, il affiche ce message : Undeclared identifier 'LATC' in expression copier coller.c
voici mon code
switch case c'était juste pour apprendre a l'utiliser et me familiariser avec...
Par contre quand je compile avec Mikroc, il affiche ce message : Undeclared identifier 'LATC' in expression copier coller.c
voici mon code
Code : Tout sélectionner
//Programme qui permet de copier l'état du portb sur portc
// pic 16f877a 14.03.2017
void main(void)
{
do
{
TRISC=0; // en sortie
TRISB=0xFF; //en entree
PORTC=0;
delay_ms(100);
LATC = PORTB; // bits du port B copié sur sorties portC
}while (1);
}
instruction swith case et pic16f877a
- paulfjujo
Expert- Messages : 2597
- Âge : 73
- Enregistré en : juillet 2015
- Localisation : 01800
- Contact :
dyli a écrit :..., il affiche ce message : Undeclared identifier 'LATC' in expression copier coller.c
errare, c'est pour un 18F .. utilise PORTC à la place.
petite modif du code,
l'init .. 1 seule fois suffit
Code : Tout sélectionner
//Programme qui permet de copier l'état du portb sur portc
// pic 16f877a 14.03.2017
void main(void)
{
TRISC=0; // en sortie
TRISB=0xFF; //en entree
PORTC=0;
do
{
delay_ms(100);
PORTC = PORTB; // bits du port B copié sur sorties portC
}while (1);
}
le switch case ne serait pas un bon exemple pour ceci..
un exemple ci dessous
avec 4 interrupteurs sur les 4 bits de poids faible PORTB, actionnés INDIVIDUELLEMENT
allumage de 1, 2, 4, 8 leds
Code : Tout sélectionner
TRISC=0x00;
PORTC=0;
TRISB=0xFF;
do
{ j=PORTB & 0x0F;
switch (j)
{
case 1 : PORTC=0x01; break;
case 2 : PORTC=0x03; break;
case 4 : PORTC=0x0F; break;
case 8 : PORTC=0xFF;break;
default :PORTC=0;
}
}while(1);
instruction swith case et pic16f877a
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 33 invités