Bonjour,
Je début complètement dans la programmation de PIC, et je dois réaliser un programme sur un pic18f4580, sous mplab.
Le but du programme est simple, recevoir un caractère sur un port série, et en fonction de ce caractère, activer ou non les pin du port B.
Le souci que j'ai est que je ne sais pas faire toutes les initialisations qu'il y a à faire, et malgré ma lecture de la datasheet depuis un moment déja, je suis perdu.
Je viens donc ici demander votre aide pour m'éclairer.
Voici le code que j'ai pour le moment:
#include <p18f4580.h>
unsigned char TableCommandeRA [] = {0x00,
0x05,
0x0A,
0x09,
0x06,
0x80,
0x10,
0x20};
// indique qu'un caractère est dans RCREG de l'USART
char data_recue(void) // reception d'une interruption
{
if (PIR1bits.RCIF) /* char recu en reception*/
{
PIR1bits.RCIF=0; // efface drapeau
return (1); // indique qu'un nouveau caractère est dans RCREG
}
else return (0); // pas de nouveau caractère reçu
}
void main(void)
{
unsigned char Commande;
SPBRG = 25; /* configure la vitesse (BAUD) 9600 N 8 1*/
TXSTA = 0x24;
RCSTA = 0x90; /* active l'USART*/
TRISB = 0x00; // port A en sortie
while(1) // echo
{
if (data_recue())
{
Commande = RCREG;
PORTB = TableCommandeRA [Commande];
}
}
}
Cordialement
Tromok
-----