bonjour
j'ai besoin de l'aide pour lire et ecrire les eeprom 93cxxx j'ai avec ce petit code pour ecrire la donne 0x5a dans l'adresse 0x10 mais ça na pas marché si vous pouvez m'aider a initialiser les registes pour communiquer avec les eeprom spi et merci d'avance pour votre l'aide voici le code et le pdf de l'eeprom 93xxxx
/****************************** ****************************** *****************/
#include <htc.h>
#define _XTAL_FREQ 4000000
/****************************** ****************************** *****************/
__CONFIG (XT & WDTDIS & PWRTEN & BORDIS & WRTEN & LVPDIS & DUNPROT & DEBUGEN);
/****************************** ****************************** *****************/
typedef unsigned char byte; // unsigned char = byte
#define select RC7
/******** déclaration des constantes et variables ****************************/
static byte buffe;
/******** déclaration fonctions ****************************** ****************/
void init_spi(void);
byte output_spi(byte);
/****************************** ****************************** *****************/
/************************** programme principal ******************************/
/****************************** ****************************** *****************/
void main()
{
void init_spi(void);
buffe = output_spi(0x0a);
buffe = output_spi(0x10);
buffe = output_spi(0x5a);
while(1)
{
NOP();
}
}
/******** init spi ****************************** *****************************/
void init_spi(void)
{
SSPSTAT = 0x40; // 0b01000000;
SSPCON = 0x00; // 0b00000001; CKP bit4 = 0 vitesse egale 0001 = 250khz
TRISC = 0x10; // 0b00010000;
PORTC = 0;
select = 0;
}
/******** output spi ****************************** ***************************/
byte output_spi(byte octet)
{
SSPEN = 1;
SSPIF = 0;
select = 1;
SSPBUF = octet;
while(SSPIF) continue;
select = 0;
return SSPBUF;
}
-----