打印

pic18LF25K42 EEPROM程序

[复制链接]
3972|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lizye|  楼主 | 2021-7-7 21:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
PIC18LF25K42芯片,采用MPLABX 的MCC找不到 EEPROM的资源,调用PIC18.H的EEPROM_READ(addr),EEPROM_WRITE(addr, value)采用XC8(1.45)编译不能通过,于是看数据手册自编 了EEPROM读写程序:
/*////////////////////////////////////////////////////////
函数名:unsigned char ReadEeprom(unsigned char address)
功        能: PIC18LF25K42   EEPROM读一字节数据 适用EEPROM小于等于256字节
输        入:        无
输        出:        返回  地址address的1字节数据
修        改:
*///////////////////////////////////////////////////////////
unsigned char ReadEeprom(unsigned char address)
{
    unsigned char temp;
    NVMCON1 = 0;
    NVMADRL = address;
    NVMCON1bits.RD = 1;
    temp = NVMDAT;
    return  temp;
}
/*///////////////////////////////////////////////////////
函数名:void WriteEeprom(unsigned char addr ,unsigned char Data)
功        能: PIC18LF25K42   EEPROM写一字节数据 适用EEPROM小于等于256字节
输        入:        addr EEPROM地址;addr EEPROM要写入的一个字节数据
输        出:        无
修        改:
*///////////////////////////////////////////////////////
void WriteEeprom(unsigned char addr ,unsigned char Data)
{
    NVMCON1 = 0;         // Setup Data EEPROM Access
    NVMADRL = addr ;     //Setup Address
                         //; Data Memory Value to write
    NVMDAT  =  Data;
    NVMCON1bits.WREN = 1; // enable writes
    INTERRUPT_GlobalInterruptDisable(); //disable interrupts

    NVMCON2 = 0x55; //unlock sequence
    NVMCON2 = 0xAA; //unlock sequence
// Set WR bit to begin write
    NVMCON1bits.WR = 1; //begin write
    INTERRUPT_GlobalInterruptEnable(); //enable interrupts
    NVMCON1bits.WREN = 0; // enable writes

}

使用特权

评论回复
沙发
heweibig| | 2021-7-7 21:04 | 只看该作者
MCC支持该芯片产生EEPROM代码。

使用特权

评论回复
板凳
jiajs| | 2021-7-7 21:05 | 只看该作者
在MCC的“device resourece"里选memory就是

使用特权

评论回复
地板
jlyuan| | 2021-7-7 21:07 | 只看该作者
mcc应该能直接生成吧

使用特权

评论回复
5
zwll| | 2021-7-7 21:09 | 只看该作者
其实, datasheet里面都有现成的代码..不用太迷信现成的代码这类的说法的...

使用特权

评论回复
6
stly| | 2021-7-7 21:12 | 只看该作者
字节写个读写的函数也很简单啊.

使用特权

评论回复
7
dengdc| | 2021-7-7 21:14 | 只看该作者
这是读写内部eeprom?

使用特权

评论回复
8
lizye|  楼主 | 2021-7-7 21:16 | 只看该作者

唉,还是没有什么结果,算了,多谢大家啦

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

852

主题

9757

帖子

2

粉丝