EEPROM 93C46

E

emmos

Guest
Hej

Jag gjorde ett program för att läsa och skriva från 936C46 minne
men det verkar som om det skriver om det Do håller på för upptagen status.
Varför?
Jag läste att clk frekvens 2MHz betyder det att för mikrocontroller användas??

plz hjälpa mig

 
8 kwietnia przestały pojawiać się nowe łatki i aktualizacje dla Microsoft Windows XP, co może stanowić wyzwanie dla bezpieczeństwa osób i firm korzystających z tego popularnego systemu operacyjnego. Potencjalnie zagrożonych jest aż 30 proc. wszystkich użytkowników pecetów.

Read more...
 
Verkar din helt inte känner till datasheet behandlingen (o;

2MHz är den största klockan frekvens för 93C46 klockan linje (mest för 5V drift endast).

Använder du exakt tidpunkt som anges i databladet för att skriva på den?
Kan du läsa tillbaka samma data som det är skrivet på den?

 
klockan är mycket hög.

Nedanstående är min kod, använd pic16f72, oxc 4MHZ

SENDC:
BANK_1
MOVLW B'00010000 ';
MOVWF TRISA;
BANK_0
; GOTO $
1BCF CS_P
BCF CLK_P;
MOVLW 09H;
MOVWF R1;
BCF DIO_P;
SETC;
CLRWDT;
BSF CS_P
FORTSÄTT;
BTFSC STATUS, bära;
BSF DIO_P;
GOTO $ 1,
vänta 2
USABSF CLK_P;
RLF COMMAND, 1;
GOTO $ 1,
vänta 2
USABCF CLK_P;
BCF DIO_P;
DECFSZ R1, 1;
GOTO fortsätta;
RETLW 0;
;**********************************;
** LÄS AVSNITT (två gånger) **;
;**********************************;
EEREAD; PAGE1
MOVFW ADRESS
EEREAD0
BANK_0
MOVWF OUTBYT
BSF OUTBYT, 7, COMMAND = LÄS
BCF OUTBYT, 6, COMMAND = LÄS
; INBJUDAN opcode; SKICKA KOMMANDO
INBJUDAN SENDC; SKICKA kommando till EEPROM
LÄS;
BANK_1
MOVLW B'00010100 ';
MOVWF TRISA; B11001111
BANK_0
BSF CS_P
MOVLW 16D;
MOVWF R1;
READ_0;
GOTO READDD;
READDD;
BSF CLK_P;
CLRWDT;
CLRC;
BTFSC DIO_P;
SETC;
RLF RW0, 1;
RLF RW1, 1
BCF CLK_P;
GOTO DLB;
DLB;
DECFSZ R1, 1;
GOTO READ_0;
GOTO END_PRM;
;**********************************;
** SKRIV TILL 93LC46 **;
;**********************************;
EEWRITE; PAGE1
WRITE0 MOVLW 30h; SKRIVA ENABLE KOMMANDO
MOVWF OUTBYT
INBJUDAN SENDC; SKICKA kommando till EEPROM
BCF CS_P;
WRITE1 MOVFW adress, GET EEPROM ADRESS
MOVWF OUTBYT
BCF OUTBYT, 7, SKRIVA KOMMANDO
BSF OUTBYT, 6, SKRIVA KOMMANDO
INBJUDAN SENDC; SKICKA kommando till EEPROM
WRITE;
BANK_1
MOVLW B'00010000 "
MOVWF TRISA;
BANK_0
MOVLW 16D, 16BIT FÖR ETT ORD
MOVWF R1;
WRITE_0;
BCF DIO_P;
RLF RW0, 1;
RLF RW1, 1;
BTFSC STATUS, bära;
BSF DIO_P;
GOTO $ 1,
vänta 2
USABSF CLK_P;
GOTO $ 1,
vänta 2
USACLRWDT;
BCF CLK_P;
BCF DIO_P;
DECFSZ R1, 1;
GOTO WRITE_0;
BCF CS_P;
; GOTO SDF;
SDF;
MOVLW 0X0C
MOVWF RW1;
BSF CS_P;
CHK
DECFSZ RW0, 1
GOTO CHK;
DECFSZ RW1, 1
GOTO CHK;
;
BCF CS_P;
CLRF OUTBYT
INBJUDAN SENDC; SKICKA kommando till EEPROM

END_PRM;
BCF CS_P;
RETLW 0

 
bredvid klockan, som faktiskt är hög, vissa chip från olika tillverkare har ett stift för att välja ut ordlängd, 8 eller 16 bitar

 

Welcome to EDABoard.com

Sponsor

Back
Top