打印
[其它应用]

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

[复制链接]
505|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
huanghuac|  楼主 | 2017-6-18 19:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
谁能提供一个针对79SH165类EEPROM的确定能用的操作代码
沙发
happy_10| | 2017-6-18 19:15 | 只看该作者

到源码区找找吧

使用特权

评论回复
板凳
huanghuac|  楼主 | 2017-6-18 19:19 | 只看该作者

我看了论坛上的某些代码,存储函数的形参为unsigned char idata的指针变量,现我要存储4个unsigned char变量和3个signed long变量,共16字节,怎么处理

使用特权

评论回复
地板
bqyj| | 2017-6-18 19:21 | 只看该作者

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);
}

使用特权

评论回复
5
huanghuac|  楼主 | 2017-6-18 19:23 | 只看该作者
这个类EEPROM,大家有什么建议或者说需要注意什么地方

使用特权

评论回复
6
bqyj| | 2017-6-18 19:25 | 只看该作者

FLASHCON寄存器为1,操作EEPROM; FLASHCON寄存器为0,操作code 区域

使用特权

评论回复
7
wenfen| | 2017-6-18 19:28 | 只看该作者


每次EEPROM擦除后,才能将为0的bit 置1,如果要将为1的bit清0,则需要擦除整个SECTOR

使用特权

评论回复
8
wenfen| | 2017-6-18 19:32 | 只看该作者
一定要在擦除,写入函数中加上软件标志位,判断你的擦除,写函数是否为正常的情况下进入的(不是跑飞掉进入),这样可以防止误擦写

使用特权

评论回复
9
chenho| | 2017-6-18 19:34 | 只看该作者

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;

使用特权

评论回复
10
huanghuac|  楼主 | 2017-6-18 19:36 | 只看该作者

啥意思?

使用特权

评论回复
11
chenho| | 2017-6-18 19:39 | 只看该作者
这个就是一个EEPROM编程的示例

使用特权

评论回复
12
huanghuac|  楼主 | 2017-6-18 19:40 | 只看该作者

读eeprom时,非得用unsigned char data类型么,普通的unsigned char行么?

使用特权

评论回复
13
chenho| | 2017-6-18 19:42 | 只看该作者

行啊

使用特权

评论回复
14
gongche| | 2017-6-18 19:45 | 只看该作者
中颖的代码基本一样。

使用特权

评论回复
15
huanghuac|  楼主 | 2017-6-18 19:47 | 只看该作者
嗯,那我按大家的说法挨个排查一下,先结贴啦,谢谢哈

使用特权

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

本版积分规则

772

主题

8473

帖子

6

粉丝