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

[复制链接]
1827|21
 楼主| huanghuac 发表于 2022-6-11 12:17 | 显示全部楼层 |阅读模式
谁能提供一个针对79SH165类EEPROM的确定能用的操作代码
zhenykun 发表于 2022-6-11 12:21 | 显示全部楼层
到源码区找找吧
 楼主| huanghuac 发表于 2022-6-11 12:25 | 显示全部楼层
我看了论坛上的某些代码,存储函数的形参为unsigned char idata的指针变量,现我要存储4个unsigned char变量和3个signed long变量,共16字节,怎么处理
zhenykun 发表于 2022-6-11 12:27 | 显示全部楼层

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 发表于 2022-6-11 12:30 | 显示全部楼层
这个类EEPROM,大家有什么建议或者说需要注意什么地方
jiajs 发表于 2022-6-11 12:37 | 显示全部楼层
FLASHCON寄存器为1,操作EEPROM; FLASHCON寄存器为0,操作code 区域
jiajs 发表于 2022-6-11 12:38 | 显示全部楼层
每次EEPROM擦除后,才能将为0的bit 置1,如果要将为1的bit清0,则需要擦除整个SECTOR
dengdc 发表于 2022-6-11 12:41 | 显示全部楼层
一定要在擦除,写入函数中加上软件标志位,判断你的擦除,写函数是否为正常的情况下进入的(不是跑飞掉进入),这样可以防止误擦写
 楼主| huanghuac 发表于 2022-6-11 12:43 | 显示全部楼层

谢谢,关于那个long,我感觉只能这样处理了。
规格书上操作eeprom似乎不太详细,有点资料么?
chenjunt 发表于 2022-6-11 12:48 | 显示全部楼层

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;
bqyj 发表于 2022-6-11 12:51 | 显示全部楼层
啥意思?
chuxh 发表于 2022-6-11 12:55 | 显示全部楼层
这个就是一个EEPROM编程的示例
 楼主| huanghuac 发表于 2022-6-11 12:58 | 显示全部楼层
读eeprom时,非得用unsigned char data类型么,普通的unsigned char行么?
heweibig 发表于 2022-6-11 13:00 | 显示全部楼层
renyaq 发表于 2022-6-11 13:02 | 显示全部楼层
中颖的代码基本一样。
 楼主| huanghuac 发表于 2022-6-11 13:04 | 显示全部楼层

其实还是不大明白,我再琢磨琢磨吧,多谢了哈
tpgf 发表于 2022-7-4 13:20 | 显示全部楼层
没有 用过这种存储单位
aoyi 发表于 2022-7-4 13:28 | 显示全部楼层
就是一个EEPROM编程的示例
nawu 发表于 2022-7-4 13:39 | 显示全部楼层
其他型号的基本 也可以用
zljiu 发表于 2022-7-4 13:48 | 显示全部楼层
非常讲究数据类型吗
您需要登录后才可以回帖 登录 | 注册

本版积分规则

772

主题

8473

帖子

6

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