[其它应用] 谁能提供一个针对79SH165类EEPROM的确定能用的操作代码

[复制链接]
 楼主| huanghuac 发表于 2014-7-12 19:27 | 显示全部楼层 |阅读模式
谁能提供一个针对79SH165类EEPROM的确定能用的操作代码
happy_10 发表于 2014-7-12 19:29 | 显示全部楼层
到源码区找找吧
 楼主| huanghuac 发表于 2014-7-12 19:30 | 显示全部楼层
我看了论坛上的某些代码,存储函数的形参为unsigned char idata的指针变量,现我要存储4个unsigned char变量和3个signed long变量,共16字节,怎么处理
冰清玉洁 发表于 2014-7-12 19:32 | 显示全部楼层
void main(void)
{
          long i=-0x12ef5678;
          unsigned char j,k,m,n;
          long d;
          j = (unsigned char) i;
          k = (unsigned char) (i>>8);
          m = (unsigned char) (i>>16);
          n = (unsigned char) (i>>24);
          d = (((unsigned long)n)<<24) | (((unsigned long)m)<<16) | (((unsigned long)k)<<8) | j;
          while(1);
}
 楼主| huanghuac 发表于 2014-7-12 19:33 | 显示全部楼层
这个类EEPROM,大家有什么建议或者说需要注意什么地方
冰清玉洁 发表于 2014-7-12 19:34 | 显示全部楼层
FLASHCON寄存器为1,操作EEPROM; FLASHCON寄存器为0,操作code 区域
wenfen 发表于 2014-7-12 19:36 | 显示全部楼层
每次EEPROM擦除后,才能将为0的bit 置1,如果要将为1的bit清0,则需要擦除整个SECTOR
wenfen 发表于 2014-7-12 19:37 | 显示全部楼层
一定要在擦除,写入函数中加上软件标志位,判断你的擦除,写函数是否为正常的情况下进入的(不是跑飞掉进入),这样可以防止误擦写
 楼主| huanghuac 发表于 2014-7-12 19:38 | 显示全部楼层
谢谢,关于那个long,我感觉只能这样处理了。
规格书上操作eeprom似乎不太详细,有点资料么?
chenho 发表于 2014-7-12 19:39 | 显示全部楼层
FLASHCON=1;
XPAGE = XX;
IB_OFFSET = XX;
IB_DATA = XX;
if(flag != 0x96)
{
      return;
}
IB_CON1 = 0x6E;// PROGRAM
IB_CON2 = 0x05;
IB_CON3 = 0x0a;
IB_CON4 = 0x09;
IB_CON5 = 0x06;
NOP;
NOP;
NOP;
........
FLASHCON = 0;
 楼主| huanghuac 发表于 2014-7-12 19:40 | 显示全部楼层
啥意思?
chenho 发表于 2014-7-12 19:44 | 显示全部楼层
这个就是一个EEPROM编程的示例
 楼主| huanghuac 发表于 2014-7-12 19:45 | 显示全部楼层
读eeprom时,非得用unsigned char data类型么,普通的unsigned char行么?
chenho 发表于 2014-7-12 19:46 | 显示全部楼层
行啊
gongche 发表于 2014-7-12 19:47 | 显示全部楼层
中颖的代码基本一样。
 楼主| huanghuac 发表于 2014-7-12 19:49 | 显示全部楼层
好,大力感谢大家
amw1688 发表于 2014-7-16 23:24 | 显示全部楼层
gxliu08 发表于 2014-7-17 09:32 | 显示全部楼层
问厂家技术支持?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

772

主题

8473

帖子

6

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