2022年1月27日 星期四

Microchip PIC12F519 EEPROM (EEDATA) 讀寫設置

這個MCU的EEPROM需要要先擦再寫,不過實際上Datasheet是寫叫Flash Data Memory

然而DataSheet寫的Addr不知道用燒錄器怎麼反讀值出來



以下是擦寫讀的Code


 void Erase_Flash(uint8_t u8addr)

{
    EEADR=u8addr;
    //EEADR=0;
    EECONbits.FREE=1;
    EECONbits.WREN=1;
    EECONbits.WR=1;
    while(EECONbits.WR==1){;}
}

void Write_Flash(uint8_t u8addr1,uint8_t u8data)
{
    EEADR=u8addr1;
    //EEADR=0;
    EEDATA=u8data;
    EECONbits.WREN=1;
    EECONbits.WR=1;
    while(EECONbits.WR==1){;}
}

uint8_t Read_Flash(uint8_t u8addr2)
{
    uint8_t u8redata;
    EEADR=u8addr2;
    EECONbits.RD=1;
    NOP();
    u8redata=EEDATA;
    return u8redata;
}

至於怎麼在燒錄時就寫入初值,到目前為止還沒找到

沒有留言:

張貼留言