bonjour ,
je veut me mettre à la programmation de pic en language C et bloque sur un truc tout con.
je veut juste mettre un pin en entree et pour pouvoir tout simplement lire son etat et le recopier sur une sortie (sans utiliser de quelconques interuption).
j'ai fait un programme tout con mais ça ne marche pas !...
voici le main() de mon programe :
void main (void)
{
// on configure le pin 0 du port A en sortie
TRISAbits.TRISA0 = 0;
// on configure le pin 1 du port A en entree
TRISAbits.TRISA1 = 1;
while(1)
{
// on recopie l'etat du port 1 sur le port 0
PORTAbits.RA0 = PORTAbits.RA1;
}
}
pour info le pic est un 18F252 le meme que celui utiliser par http://mathieu.agopian.free.fr/
sinon voilà le fichier c en entier :
#include <delays.h> // fonctions de délais
#include <p18f252.h>// déclarations pour le PIC18F252
void main (void)
{
// on configure le pin 0 du port A en sortie
TRISAbits.TRISA0 = 0;
// on configure le pin 1 du port A en entree
TRISAbits.TRISA1 = 1;
while(1)
{
// on recopie l'etat du port 1 sur le port 0
PORTAbits.RA0 = PORTAbits.RA1;
}
}
#pragma romdata CONFIG
_CONFIG_DECL (
_CONFIG1H_DEFAULT & _OSC_HSPLL_1H,
_CONFIG2L_DEFAULT & _PWRT_ON_2L,
_CONFIG2H_DEFAULT & _WDT_OFF_2H,
_CONFIG3H_DEFAULT,
_CONFIG4L_DEFAULT & _STVR_OFF_4L & _LVP_OFF_4L
& _DEBUG_OFF_4L,
_CONFIG5L_DEFAULT & _CP0_OFF_5L & _CP1_OFF_5L
& _CP2_OFF_5L & _CP3_OFF_5L,
_CONFIG5H_DEFAULT & _CPB_OFF_5H & _CPD_OFF_5H,
_CONFIG6L_DEFAULT & _WRT0_OFF_6L & _WRT1_OFF_6L
& _WRT2_OFF_6L & _WRT3_OFF_6L,
_CONFIG6H_DEFAULT & _WPC_OFF_6H & _WPB_OFF_6H
& _WPD_OFF_6H,
_CONFIG7L_DEFAULT & _EBTR0_OFF_7L & _EBTR1_OFF_7L
& _EBTR2_OFF_7L & _EBTR3_OFF_7L,
_CONFIG7H_DEFAULT & _EBTRB_OFF_7H
);
#pragma romdata
-----