PIC XC8 或PICC编译 EEPROM操作

 EEPROM初始化

对于那些支持对其EEPROM数据区域进行外部编程的器件,可以使用__EEPROM_DATA()宏将初始值放入可用于编程的HEX文件。

例:#include <XC.h>

__EEPROM_DATA(0,1,2,3,4,5,6,7);

该宏有8个参数,代表8个数据值,每个值为1BYTE。未使用的值用指定为零,否则编译器会报错。

每次使用时,__EEPROM_DATA将从EEPROM地址零开始写入,自动递增8。

若想使用更多的数据,可通过多次调用该宏来定义所需数量的EEPROM数据。最好将该宏放在所有函数定义之外。

该宏不能在运行时写入EEPROM里,而是编程烧写的时候装入EEPROM中的。

使用__EEPROMSIZE来表示可用的EEPROM字节数。

 访问函数

可以调用库函数来读取和写入EEPROM。

void eeprom_write(unsigned char addr, unsigned char value);
unsigned char eeprom_read(unsigned char addr);

使用这些函数时,会自动测试,并等待对EEPROM的所有并发写操作完成,再去执行所需的操作。

访问宏

宏版本跟访问函数不同,宏用法如下。

EEPROM_READ(address)

EEPROM_WRITE(address, value)

EEPROM_READ宏会返回读取的字节。

在低档和中档器件中,如PIC8 PIC16 PIC18系列中,宏函数读取不会等EEPROM写操作完成,使用时应查询标志。

再使用宏版本访问时,最好将中断关闭。

例 : xc.h

while (WR)

  continue;

value=EEPROM_READ(address);

实测数据:  初始化写入 3个数据  0X07,0X30,0X29

 

 查看寄存器已经 数据被写进去了

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值