[PIC®/AVR®/dsPIC®产品] pic18f4620单片机数据写入内部EEPROM的问题

[复制链接]
1687|40
 楼主| happy_10 发表于 2022-7-10 13:36 | 显示全部楼层 |阅读模式
本帖最后由 pzsh 于 2022-7-21 11:32 编辑

写了一个把一个字节写入到内部EEPROM的程序,但是我硬件仿真的时候,内部EEPROM相应的地址上不显示我写入的字节,但是我用软件仿真的时候,内部EEPROM相应的地址上就显示我写入的字节,请教大家是怎么一回事
jiahy 发表于 2022-7-10 13:39 | 显示全部楼层
楼主程序可以公开吗?贴程序看下吧,这么说看不出什么原因
 楼主| happy_10 发表于 2022-7-10 13:41 | 显示全部楼层
部分程序如下
  EEADRH = 0x00;         //EEPROM 地址的高位
    EEADR = 0x00;         //EEPROM 地址的底位
    EEDATA = 0x18;         //要写入的数据
    EECON1bits.EEPGD = 0;   //访问EEPROM存储器
    EECON1bits.CFGS = 0;    //访问闪存程序存储器或者EEPROM存储器
    EECON1bits.WREN = 1;    //允许对闪存程序器或者EEPROM存储器写周期
    INTCONbits.GIE = 0;     //禁止中断
    EECON2 = 0x55;          //必须的序列
    EECON2 = 0xAA;          //必须的序列
    EECON1bits.WR = 1;      //启动写周期
    INTCONbits.GIE = 1;     //使能中断
    while(!PIR2bits.EEIF);  //写完成后,EEPROM中断标志位EEIF被置1
    PIR2bits.EEIF = 0;      //EEIF必须用软件清0
    EECON1bits.WREN = 0;
jiajs 发表于 2022-7-10 13:45 | 显示全部楼层
写完查询下,不对就再写
 楼主| happy_10 发表于 2022-7-10 13:47 | 显示全部楼层
我这指令完全是按照数据手册上写的,应该是无误的
 楼主| happy_10 发表于 2022-7-10 13:50 | 显示全部楼层
可就是用kit3硬件调试时,EEPROM相应的地址没有数据显示
llljh 发表于 2022-7-10 13:53 | 显示全部楼层
硬件仿真时都EEPROM好像滞后很多
renyaq 发表于 2022-7-10 13:53 | 显示全部楼层
想要知道写入的对不对,写后在读出来看看。
jiajs 发表于 2022-7-10 13:56 | 显示全部楼层
注意EEPROM有个写入时间, 你可以看DataSheet电气特性eeprom章节, 大概5ms的样子...
 楼主| happy_10 发表于 2022-7-10 14:00 | 显示全部楼层
你说对了,数据可以从EEPROM中读出来,说明已经写进EEPROM中了
 楼主| happy_10 发表于 2022-7-10 14:02 | 显示全部楼层
那我想在调试的时候,可以在MPLAB X IDE开发环境中EEPROM相应的地址上显示我写入的数据,需要怎么做啊
juventus9554 发表于 2022-7-10 14:04 | 显示全部楼层
硬件仿真,IDE的EEPROM窗口并不会实时更新的,只能把芯片read回来,才会刷新
shimx 发表于 2022-7-10 14:06 | 显示全部楼层
EE Data Memory 不会自己刷新,需要点击该窗口左上的Read, 才能显示出来.(注: 如果是在debug模式下, Read按钮是灰色的,说明这个器件不支持Debug-Reads, 那就退出debug模式,让MCU自己运行,然后点击Read按钮)
 楼主| happy_10 发表于 2022-7-10 14:50 | 显示全部楼层
嗯,我再好好缕一缕吧,有了好消息及时通知大家
kkzz 发表于 2023-2-2 11:14 | 显示全部楼层
怎样用pic单片机把字符写到eeprom里面
mikewalpole 发表于 2023-2-2 11:22 | 显示全部楼层
单片机内部eeprom中的程序可以仿真吗
janewood 发表于 2023-2-2 14:23 | 显示全部楼层
片内带eeprom的单片机有哪些  
maqianqu 发表于 2023-2-2 15:19 | 显示全部楼层
PIC16F946d的EEPROM,怎么写不成功
maudlu 发表于 2023-2-2 16:07 | 显示全部楼层
单片机内部的flash rom利用来做EEPROM吗  
robincotton 发表于 2023-2-4 19:03 | 显示全部楼层
从指定地址下读取一个字节:uchar ReadEEPROM(uchar EE_Addr){ EEADR=EE_Addr; //给地址 EEPGD=0; // RD=1; //开始读 return EEDATA; //直接返回读取的EEPROM }
您需要登录后才可以回帖 登录 | 注册

本版积分规则

744

主题

7973

帖子

6

粉丝
快速回复 在线客服 返回列表 返回顶部