u8 framRead (u16 fAdr)
fAdr : 어드레스 (16 진수 0x7fff 이내의 값) |
FRAM 의 특정번지에서 1 바이트 데이터를 읽어오는 함수입니다.
FRAM 은 EEPROM 의 단점을 개선한 비휘발성 메모리입니다. FRAM 에 저장된 데이터는 전원이 없어도 보존됩니다. 모아콘에는 32KB 의 FRAM 이 내장되어 있습니다.
32KB 에서의 사용가능 어드레스 : 0 ~ 0x7FFF |
다음 소스프로그램은 fram 의 100 번지에 1 씩증가하는 데이터를 기록하고, clcd 상에표시해주는 프로그램입니다.
아래 프로그램을 실행시키면 clcd 상에 증가되는 숫자가 보입니다. 전원을 끄고, 다시키면 좀전에 증가되던 수치에서 계속 증가됩니다. Fram 이 전원이 없는상태에서도 데이터값을 유지하고 있기 때문입니다.
#include "moacon500.h" void cmain(void) { u8 i; clcdI2cInit(0); // 슬레이브 어드레스는 0 으로 합니다. clcdPower(1); // lcd 의 Power 를 On delay(100); // clcd 기동시간 대기 clcdCls(); MOACON User’s Manual - 148 - clcdCsr(0); while(1) { i = framRead(100); clcdPrint(0,2,"%02X",i); // 100 번지에서 읽은값을 print framWrite(100,++i); delay(500); // fram 기록을 기다리기위한 대기시간이 아닙니다. // Lcd 표시를 0.5 초마다 하기위한 딜레이입니다. // framWrite 는 별도의 대기시간이 필요하지 않습니다. } }