合泰单片机存储程序eerom.c

这段代码提供了两个函数,一个是用于向HT66F0185的EEPROM进行字节写入,另一个是进行字节读取。在写入过程中,设置地址和数据,然后启用写入并等待写入完成。读取过程类似,但涉及读使能和等待读取结束。
摘要由CSDN通过智能技术生成

#include"global.h" 

void EEPROM_ByteWrite(u8 ADDR,u8 byte)
{
    _emi=0;
    _eea = ADDR;            //地址  HT66F0185 的EEPROM地址从0x01-0x7f 共128字节
    _eed = byte;            //数据
    _mp1 = 0x40;
    _bp = 1;
    _iar1|=0x8;                //写使能  间接寻址EEC寄存器
    _iar1|=0x4;                //开始写入 间接寻址EEC寄存器
    while((_iar1&0x04) !=0);//等待写入结束 间接寻址EEC寄存器
    _iar1&=0xf7;            //写入失能   间接寻址EEC寄存器
    _iar1=0;
    _mp1=0;
    _emi=1;
    _bp = 0;
}

u8 EEPROM_ByteRead(volatile u8 Addr)
{
    u8 byte;
    _emi=0;
    _eea=Addr;              //要读取的地址
    _mp1=0x40;              //EEPROM的物理起始地址
    _bp = 1;
    _iar1|=0x2;                //读使能       间接寻址EEC寄存器
    _iar1|=0x1;                //开始读取     间接寻址EEC寄存器
    while((_iar1&0x01) !=0);//等待读取结束 间接寻址EEC寄存器
    byte=_eed;
    _iar1&=0xfD;            //读取失能     间接寻址EEC寄存器
    _iar1=0;
    _mp1=0;
    _emi=1;
    _bp = 0;
   return(byte);
}
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

流动的太阳

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值