[PIC®/AVR® MCU] 请教一下,PIC24FJ128GL306单片机读写EEPROM的程序该怎么写?

[复制链接]
2484|14
手机看帖
扫描二维码
随时随地手机跟帖
橘子阿小|  楼主 | 2021-10-18 16:12 | 显示全部楼层 |阅读模式
本帖最后由 pzsh 于 2021-11-2 10:48 编辑

之前是一直接触PIC18单片机,刚刚接触PIC24,不太明白,希望你们指教一下,谢谢

使用特权

评论回复
chenqianqian| | 2021-10-18 21:01 | 显示全部楼层
随便参考一个EEPROM的读写驱动就可以了。

使用特权

评论回复
MianQi| | 2021-10-19 11:38 | 显示全部楼层
查一下MPLAB的应用示例。

使用特权

评论回复
橘子阿小|  楼主 | 2021-10-19 13:25 | 显示全部楼层
本帖最后由 橘子阿小 于 2021-10-19 13:28 编辑

找到了!!!
#include "xc.h"

int __attribute__ ((space(eedata))) eeData = 0x0;
unsigned int offset = 0x0;
//擦除一个字
void EEPROM_ERASE_WORD(unsigned int addr)
{
NVMCON = 0x4058;
TBLPAG = __builtin_tblpage(&eeData);
__builtin_tblwtl(__builtin_tbloffset(&eeData)+addr,0);
asm volatile ("disi #5");
__builtin_write_NVM();
while(NVMCONbits.WR==1);
}
//擦除所有
void EEPROM_ERASE_ALL()
{
    NVMCON=0x4050;
    asm volatile ("disi #5");
    __builtin_write_NVM();
}
//单字写入
void WR_EEPROM (unsigned int addr,unsigned int data)
{
    NVMCON = 0x4004;
    TBLPAG = __builtin_tblpage(&eeData);
    __builtin_tblwtl( __builtin_tbloffset(&eeData)+addr, data);
    asm volatile ("disi #5");
    __builtin_write_NVM();
    while(NVMCONbits.WR==1);
    return 1;
}
//读数据
unsigned int RD_EEPROM(unsigned int addr)
{
TBLPAG = __builtin_tblpage(&eeData);
return __builtin_tblrdl(__builtin_tbloffset(&eeData)+addr);
}

使用特权

评论回复
pzsh| | 2021-11-2 10:51 | 显示全部楼层
这里有个 文件  关于从PIC18改到PIC24的, 希望有帮助

使用特权

评论回复
uiint| | 2021-11-4 20:21 | 显示全部楼层
是内部的eeprom吗   

使用特权

评论回复
hellosdc| | 2021-11-4 20:21 | 显示全部楼层
iic通信协议是一样的。        

使用特权

评论回复
mituzu| | 2021-11-4 20:21 | 显示全部楼层
PIC18单片机可以直接移植的。     

使用特权

评论回复
suzhanhua| | 2021-11-4 20:22 | 显示全部楼层
你是不明白时序吗        

使用特权

评论回复
xietingfeng| | 2021-11-4 20:22 | 显示全部楼层
使用模拟iic能解决问题。   

使用特权

评论回复
isseed| | 2021-11-4 20:22 | 显示全部楼层
建议自己搜一个程序,然后修改一下。   

使用特权

评论回复
wangdezhi| | 2021-11-4 20:22 | 显示全部楼层
iic程序而已。      

使用特权

评论回复
biechedan| | 2021-11-4 20:22 | 显示全部楼层
PIC24也没有用过,应该差不多的。   

使用特权

评论回复
chenci2013| | 2021-11-4 20:23 | 显示全部楼层
PIC18单片机和PIC24差不多。   

使用特权

评论回复
gygp| | 2021-11-4 20:23 | 显示全部楼层
PIC24FJ128GL306多大的内存?

使用特权

评论回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则