打印

79sh165类EEPROM问题。

[复制链接]
1824|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zenwall|  楼主 | 2011-6-30 11:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近用到79SH165,有如下问题。
1.版主能否提供一个针对79SH165类EEPROM的确定能用的操作代码?
2.我看了论坛上的某些代码,存储函数的形参为unsigned char idata的指针变量,现我要存储4个unsigned char变量和3个signed long变量,共16字节,怎么处理signed long这个问题?
3.实际应该这个类EEPROM,版主有什么建议或者说我需要注意什么地方?
沙发
bananarer| | 2011-6-30 14:06 | 只看该作者
本帖最后由 bananarer 于 2011-6-30 14:08 编辑

1.版主能否提供一个针对79SH165类EEPROM的确定能用的操作代码?
不好意思,我这里真的是没有;你可以参考一下其他人的,差不多的。
2.我看了论坛上的某些代码,存储函数的形参为unsigned char idata的指针变量,现我要存储4个unsigned char变量和3个signed long变量,共16字节,怎么处理signed long这个问题?
signed long比较讨厌,可否用如下函数转换一下,然后存储
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);
}
3.实际应该这个类EEPROM,版主有什么建议或者说我需要注意什么地方?
注意有几点
1)FLASHCON寄存器为1,操作EEPROM; FLASHCON寄存器为0,操作code 区域
2)每次EEPROM擦除后,才能将为0的bit 置1,如果要将为1的bit清0,则需要擦除整个SECTOR
3) 一定要在擦除,写入函数中加上软件标志位,判断你的擦除,写函数是否为正常的情况下进入的(不是跑飞掉进入),这样可以防止误擦写

使用特权

评论回复
板凳
zenwall|  楼主 | 2011-6-30 14:27 | 只看该作者
谢谢斑竹,关于那个long,我感觉只能这样处理了。
规格书上操作eeprom似乎不太详细,有点资料么?

使用特权

评论回复
地板
bananarer| | 2011-6-30 15:08 | 只看该作者
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;

使用特权

评论回复
5
zenwall|  楼主 | 2011-6-30 15:13 | 只看该作者
:L这,啥意思?

使用特权

评论回复
6
bananarer| | 2011-6-30 15:32 | 只看该作者
不好意思,忘记写了。这个就是一个EEPROM编程的示例

使用特权

评论回复
7
zenwall|  楼主 | 2011-6-30 15:37 | 只看该作者
好的,我再仔细看看吧,谢谢了。:D

使用特权

评论回复
8
zenwall|  楼主 | 2011-7-1 09:38 | 只看该作者
斑竹,还有个小问题。就是读eeprom时,非得用unsigned char data类型么,普通的unsigned char行么?

使用特权

评论回复
9
bananarer| | 2011-7-1 12:37 | 只看该作者
行啊

使用特权

评论回复
10
daseagg| | 2011-7-1 21:52 | 只看该作者
bananarer好人啊.

使用特权

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

本版积分规则

33

主题

141

帖子

1

粉丝