EEPROM 93C46

E

emmos

Guest
Здрасти

Направих една програма за четене и писане от 936C46 памет
но изглежда, че когато се пише за нея Да пази на за зает статут.
Защо е така?
Четох, че clk честотата е 2MHz означава това му за microcontroller използва???

PLZ помогнете ми

 
Изглежда ви съвсем не е запознат с дейташитове четене (о;

2MHz е максималната честота часовник за 93C46 часовник ред (най-вече за 5V операция само).

Използвате ли точното време, както е описано в Справочник за писане за него?
Можете ли да четете обратно същите данни, както това бе писано за него?

 
Вие трябва да прочетете и дейташитове!
намаляване на честотата на часовника.

 
часовника е много висока.

по-долу е моя код, използване pic16f72, oxc 4MHZ

SENDC:
BANK_1
MOVLW B'00010000 ";
MOVWF TRISA;
BANK_0
; Гото $
1BCF CS_P
BCF CLK_P;
MOVLW 09H;
MOVWF R1;
BCF DIO_P;
SETC;
CLRWDT;
BSF CS_P
ПРОДЪЛЖИ;
BTFSC статус, CARRY;
BSF DIO_P;
Гото $ 1; WAIT 2
САЩBSF CLK_P;
RLF команда, 1;
Гото $ 1; WAIT 2
САЩBCF CLK_P;
BCF DIO_P;
DECFSZ R1, 1;
Гото ПРОДЪЛЖИ;
RETLW 0;
;**********************************;
; ** READ РАЗДЕЛ (два пъти) **;
;**********************************;
EEREAD; PAGE1
MOVFW АДРЕС
EEREAD0
BANK_0
MOVWF OUTBYT
BSF OUTBYT, 7; COMMAND = READ
BCF OUTBYT, 6; COMMAND = READ
; CALL OPCODE; ИЗПРАТИ COMMAND
CALL SENDC; ИЗПРАТИ команда EEPROM
READ;
BANK_1
MOVLW B'00010100 ";
MOVWF TRISA; B11001111
BANK_0
BSF CS_P
MOVLW 16D;
MOVWF R1;
READ_0;
Гото READDD;
READDD;
BSF CLK_P;
CLRWDT;
CLRC;
BTFSC DIO_P;
SETC;
RLF RW0, 1;
RLF RW1, 1
BCF CLK_P;
Гото DLB;
DLB;
DECFSZ R1, 1;
Гото READ_0;
Гото END_PRM;
;**********************************;
; ** Пишете 93LC46 **;
;**********************************;
EEWRITE; PAGE1
WRITE0 MOVLW 30H; WRITE позволяват COMMAND
MOVWF OUTBYT
CALL SENDC; ИЗПРАТИ команда EEPROM
BCF CS_P;
WRITE1 MOVFW адрес; GET EEPROM АДРЕС
MOVWF OUTBYT
BCF OUTBYT, 7; WRITE COMMAND
BSF OUTBYT, 6; WRITE COMMAND
CALL SENDC; ИЗПРАТИ команда EEPROM
WRITE;
BANK_1
MOVLW B'00010000 "
MOVWF TRISA;
BANK_0
MOVLW 16D; 16bit ЗА ЕДИН WORD
MOVWF R1;
WRITE_0;
BCF DIO_P;
RLF RW0, 1;
RLF RW1, 1;
BTFSC статус, CARRY;
BSF DIO_P;
Гото $ 1; WAIT 2
САЩBSF CLK_P;
Гото $ 1; WAIT 2
САЩCLRWDT;
BCF CLK_P;
BCF DIO_P;
DECFSZ R1, 1;
Гото WRITE_0;
BCF CS_P;
; Гото SDF;
SDF;
MOVLW 0X0C
MOVWF RW1;
BSF CS_P;
CHK
DECFSZ RW0, 1
Гото CHK;
DECFSZ RW1, 1
Гото CHK;
;
BCF CS_P;
CLRF OUTBYT
CALL SENDC; ИЗПРАТИ команда EEPROM

END_PRM;
BCF CS_P;
RETLW 0

 
прибавка на часовник, който действително е висока, някои чип от различни производителя имат ПИН код за избор на думата дължина, 8 или 16 битов

 

Welcome to EDABoard.com

Sponsor

Back
Top