마하전자기술연구소 LOGO

제품검색 고객센터053-604-2355
기술자료실

Home > 기술자료실 기술자료실

제 목 5) EEPROM
첨부파일


PIC의 EEPROM의 구조

【EEPROM란? 】

EEPROM는 다른 메모리와는 완전히 독립에 갖춰져 있는 데이터를
격납하기 위한 메모리로, 특징은 전원이 OFF가 되어도 기억
내용이 사라지는 것이 없는 불휘발성 메모리가 되어 있다고 하는 것
입니다. 따라서, 개서가 되어있고 게다가 쭉 취해 두고 싶다
파라미터등을 격납해 두는데 사용합니다.


【EEPROM의 구조와 동작】

EEPROM는 8비트폭의 메모리로 구성되어 있어 최대 256바이트
까지의 용량을 지정 할 수 있습니다만, 실제로 실장되고 있는 것은,
현재 상태로서는 64바이트입니다.
구조는 밑그림과 같이 되어 있어, 4개의 Special Function Register
(SFR) 의 도움을 받아 간접적으로 액세스 합니다.
즉, EEADR 레지스터로 EEPROM의 주소를 지정해, 데이터는
EEDATA 레지스터에 꺼내집니다.
이 때의 Read/Write의 타이밍을 컨트롤 하는 것이
EECON1와 EECON2의 2개의 레지스터입니다.




【관련 SFR의 상세】

EEPROM를 액세스 할 때에 관련하는 Special Function Register
의 내용을 설명합니다.

(1) EEADR
  1바이트의 읽고 쓰기 가능한 레지스터로, EEPROM의 주소 지정
  에 사용합니다. 8비트이므로 결국 256바이트까지의 주소를
  지정할 수가 있습니다.

(2)EEDATA
  1바이트의 읽고 쓰기 가능한 레지스터로, EEPROM로부터 읽어내거나
  쓰기하는 데이터 그 자체가 이 레지스터 경유가 됩니다.

(3)EECON1
  EEPROM의 읽고 쓰기를 제어하거나 액세스 상태를 감시하기 위해(때문에)
  의 제어용 레지스터로 밑그림의 같은 내용이 되어 있습니다.



EEIF  :기록 완료 세치기 플래그
      기록이 완료하면(자) 「1」이 되어 인터럽트를 발생한다
WRERR:기록 error flag
      기록이 도중에 중단되었을 때 「1」(이)가 된다. 중단 요인
      (은)는, 전원단이나 watch dog timer에 의한 리셋트
WREN :기록 enable 「1」으로 허가 「0」으로 금지
WR   :기록 개시 제어
      「1」으로 스타트 해 종료하면(자) 자동 클리어 된다
RD   :읽기 개시 제어
      「1」으로 스타트 해 종료하면(자) 자동 클리어 된다

(4)EECON2
  레지스터로서 존재하는 것이 아니고, 단지 EEPROM 기록의
  순서를 만들기 위해서(때문에) 있다. 이 순서를 만드는 이유는
  전원의 ON/OFF나, 변동에 의해 EEPROM가 비정상으로 쓰기라고
  끝내는 것을 피하기 (위해)때문에.


【EEPROM로부터가 읽어내는 방법】

EEPROM로부터의 읽기 외날 아래와 같이 순서로 실시합니다.
우선, EEADRS에 주소를 세트 해 RD를 1으로 하면, EEDATA
에 데이터가 꺼내집니다. 이 읽기는 1 사이클로 완료한다
의로 완료를 확인하는 수속은 불필요합니다.

  MOVF   E_ADRS, W  ;
데이터 에리어의 주소 지정
  MOVWF  EEADR    ;
주소를 EEADR에 세트
  BSF   STATUS, RP0 ;PAGE1에 변환
  BSF   EECON1, RD  ;
읽기 개시
  BCF   STATUS, RP0 ;PAGE0로 돌아온다
  MOVF   EEDATA, W  ;
W레지스터에 데이터 꺼내


【EEPROM에의 기록(분)편】

EEPROM에의 기록 방법은 조금 귀찮은 수속이 필요합니다.
게다가, 기록에 필요로 하는 시간은 10 msec와 길고, 게다가 전원 전압이나
팁에 의해 차이가 있습니다. 따라서 기록이 완료했는지 확인을 한다
필요가 있습니다.
이 순서는 아래와 같은님이 됩니다.
특히 기록의 순서(아래와 같은 적자의 부분)는 특별히 순서가 결정
기다리고 있어 이 대로의 순서로 할 필요가 있습니다.

    BCF   STATUS, RP0  ;Set to page 0
    MOVF   E_ADRS, W   ;
데이터 에리어의 주소 지정
    MOVWF  EEADR     ;Address set
    MOVF   E_DATA, W   ;
기입하는 데이터 세트
    MOVWF  EEDATA    ;Data set
    BSF   STATUS, RP0  ;Set to Page 1
    BSF   EECON1, WREN  ;Set WR Enable
    MOVLW  55H      ;Write Sequence
    MOVWF  EECON2    ;Start write
    MOVLW  0AAH
    MOVWF  EECON2
    BSF   EECON1, WR   ;Go write

WR_LP             ;
기입 확인 대기 루프
    BTFSC  EECON1, WR   ;Check Write end
    GOTO   WR_LP
    BCF   STATUS, RP0  ;Return to page 0

목록보기

www.1chip.com, www.1chip.co.kr
www.micom114.com
자료실바로가기

대구광역시 북구 산격2동 1629 산업용재관 10동 13호 (2층) / Tel. 053-604-2355 / Fax. 053-383-2354 / E-mail. maha@paran.com