打印
[PIC®/AVR®/dsPIC®产品]

pic18LF25K42 EEPROM程序

[复制链接]
356|16
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lizye|  楼主 | 2022-12-8 19:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
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

}

使用特权

评论回复
沙发
llljh| | 2022-12-8 20:00 | 只看该作者
MCC支持该芯片产生EEPROM代码。

使用特权

评论回复
板凳
heweibig| | 2022-12-8 20:02 | 只看该作者
在MCC的“device resourece"里选memory就是

使用特权

评论回复
地板
xxrs| | 2022-12-8 20:04 | 只看该作者
mcc应该能直接生成吧

使用特权

评论回复
5
zhanghqi| | 2022-12-8 20:06 | 只看该作者
其实, datasheet里面都有现成的代码..不用太迷信现成的代码这类的说法的...

使用特权

评论回复
6
chuxh| | 2022-12-8 20:08 | 只看该作者
字节写个读写的函数也很简单啊.

使用特权

评论回复
7
supernan| | 2022-12-8 20:09 | 只看该作者
这是读写内部eeprom?

使用特权

评论回复
8
mollylawrence| | 2023-1-5 12:20 | 只看该作者
现在存储芯片的价格越来越便宜了。

使用特权

评论回复
9
mmbs| | 2023-1-6 12:31 | 只看该作者
eeprom的资源也可以生成的吗?

使用特权

评论回复
10
sesefadou| | 2023-1-6 14:53 | 只看该作者
网上有很多的资料可以参考的。              

使用特权

评论回复
11
macpherson| | 2023-1-6 19:31 | 只看该作者
内部自带的eeprom的吗?              

使用特权

评论回复
12
51xlf| | 2023-1-7 11:23 | 只看该作者
iic的基本代码。              

使用特权

评论回复
13
benjaminka| | 2023-1-9 14:59 | 只看该作者
怎么才能写入pic内部的flash呢?

使用特权

评论回复
14
zerorobert| | 2023-1-10 21:19 | 只看该作者
感觉eeprom落后了好多了。              

使用特权

评论回复
15
tifmill| | 2023-1-12 14:04 | 只看该作者
读写EEPROM,是以前入门的基础程序。

使用特权

评论回复
16
tifmill| | 2023-1-12 20:53 | 只看该作者
谢谢楼主分享pic18LF25K42 EEPROM程序

使用特权

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

本版积分规则

852

主题

9757

帖子

2

粉丝