STC单片机EEPROM读写

发布者:未来感觉最新更新时间:2017-01-10 来源: eefocus关键字:STC单片机  EEPROM读写 手机看文章 扫描二维码
随时随地手机看文章

//****************************************************************   

//  STC单片机EEPROM读写--最简洁的的拿来就用保证没错^_^简洁至上!   

//----------------------------------------------------------------   

  

//--------------------------------//--------------------------------   

//注意:以下为STC89系列的地址   

//--------------------------------//--------------------------------   

  

sfr isp_data  = 0xe2;//ISP/IAP操作时的数据寄存器   

sfr isp_addrh = 0xe3;//高地址   

sfr isp_addrl = 0xe4;//低地址   

sfr isp_cmd   = 0xe5;//命令模式寄存器   

sfr isp_trig  = 0xe6;//命令触发寄存器   

sfr isp_contr = 0xe7;//ISP/IAP控制寄存器   

*/   

/*   

//--------------------------------//--------------------------------   

//注意:以下为1T新STC系列的地址   

//--------------------------------//--------------------------------   

sfr isp_data  = 0xc2;//ISP/IAP操作时的数据寄存器   

sfr isp_addrh = 0xc3;//高地址   

sfr isp_addrl = 0xc4;//低地址   

sfr isp_cmd   = 0xc5;//命令模式寄存器   

sfr isp_trig  = 0xc6;//命令触发寄存器   

sfr isp_contr = 0xc7;//ISP_IAP控制寄存器   

  

//----------------------------------------------------------------   

uchar eeprom_read(uint addres);//   

void  eeprom_write(uint address,uchar wdata);//   

void  eeprom_eares(uint addres);//扇区擦除   

//****************************************************************   

//  扇区擦除   

//----------------------------------------------------------------   

void eeprom_eares(uint addres)   

{        

    uchar i;   

       

    isp_addrl=addres;     //低位地址   

    isp_addrh=addres>>8;  //高位地址   

    isp_contr=0x01;    

    isp_contr=isp_contr|0x80; //设时间与充ISP操作。   

    isp_cmd=0x03;         //扇区命命令   

    isp_trig=0x46;        //触发   

    isp_trig=0xb9;        //触发启动。   

    for(i=0;i<3;i++)   

        ;   

    isp_addrl=0xff;   

    isp_addrh=0xff;   

    isp_contr=0x00;   

    isp_cmd=0x00;   

    isp_trig=0x00;    

}   

//****************************************************************   

//  读数据   

//----------------------------------------------------------------   

unsigned char eeprom_read(unsigned int addres)   

{   

    unsigned char i,z;   

       

    isp_addrl=addres;     //低位地址   

    isp_addrh=addres>>8;  //高位地址   

    isp_contr=0x01;    

    isp_contr=isp_contr|0x80; //设时间与充ISP操作。   

    isp_cmd=0x01;         //写命令   

    isp_trig=0x46;        //触发   

    isp_trig=0xb9;        //触发启动。   

    for(i=0;i<3;i++)   

        ;   

    isp_addrl=0xff;   

    isp_addrh=0xff;   

    isp_contr=0x00;   

    isp_cmd=0x00;   

    isp_trig=0x00;   

    z=isp_data;   

       

    return(z);           

}   

//****************************************************************   

//  写数据   

//----------------------------------------------------------------   

void eeprom_write(unsigned int addres,unsigned char write_data)   

{   

    unsigned char i;   

       

    isp_data=write_data;  //要写入的数据。   

    isp_addrl=addres;     //低位地址   

    isp_addrh=addres>>8;  //高位地址   

    isp_contr=0x01;    

    isp_contr=isp_contr|0x80; //设时间与充ISP操作。   

    isp_cmd=0x02;         //写命令   

    isp_trig=0x46;        //触发   

    isp_trig=0xb9;        //触发启动。   

    for(i=0;i<3;i++)   

        ;   

    isp_addrl=0xff;   

    isp_addrh=0xff;   

    isp_contr=0x00;   

    isp_cmd=0x00;   

    isp_trig=0x00;     

}   


关键字:STC单片机  EEPROM读写 引用地址:STC单片机EEPROM读写

上一篇:SD卡在单片机上的应用
下一篇:STC89C58串口接收GPS信号

推荐阅读最新更新时间:2024-03-16 15:29

STC单片机内置ADC的使用方法
STC系列单片机中的STC89LE516AD/X2提供了8路8位精度的高速A/D转换器,位于P1口上,从而省去了片外ADC的麻烦。这8路ADC为电压输入型,可做按键扫描,电池电压检测,频谱检测等。ADC转换过程需要17个机器周期。通过对相关功能寄存器的适当配置,就可以控制其工作。下面就对相关功能寄存器进行介绍。 A/D转换寄存器总表: 寄存器 地址 名称 7 6 5 4 3 2 1 0 初始初
[单片机]
STM32L系列单片机内部EEPROM读写
STM32L系列单片机内部提供了EEPROM存储区域,但实质上,其FLASH也是EEPROM类型,只不过有一块区域被开放出来专门用作EEPROM操作而已。STM32L的EEPROM使用寿命设计为100000次擦写以上,容量为2K-4K,这对于一般设备的参数存储来说是非常理想的。但从EEPROM使用方式看,其不适用于被反复修改的数据存储使用,一般作为配置参数,其修改次数往往是比较少量的。 STM32L的EEPROM和FLASH是统一编址,操作共用同一个读写电路,所以在EEPROM读写的时候STM32L核对于FLASH的一切访问和操作都将暂停,只有当EEPROM的操作完成后,才继续执行后续代码,在这期间只有EEPROM的读写电路工
[单片机]
【STM8S】 FLASH与EEPROM读写操作
以下为FLASH操作: #include flash.h #include stm8s_flash.h void Flash_Write_bytes(uint32_t Address , uint8_t * DataBuff,uint16_t length) { uint16_t Count=0; for( Count=0 ; Count length ; Count++ ) { FLASH_ProgramByte_User(Address+Count,DataBuff ); } } void FLASH_ProgramByte_User(uint32_t Address, uint8_t
[单片机]
单片机片上EEPROM读写例程
今天无意间看到STC系列芯片手册上关于片上EEPROM的介绍,狂喜。 原来STC单片机本身就有EEPROM的,可惜发现晚了点,不然很多同学的毕设上就可以省块24C02,也不用去搞那个IIC程序了。 下午花了点时间看了资料,然后写了个例子程序,本程序在STC89C52RC上测试,运行成功。 //============================================================================ //prjname :STC89C51RC,STC89C52RC,STC89C54RD+ EEPROM例程 //funtion :程序实现P0口,P1口分别驱动LED灯(低电平亮)把两
[单片机]
实用的单片机模拟I2C总线控制EEPROM读写程序
之前写的EEPROM程序虽然能够软仿成功,但烧到单片机里的时候却不能用,无疑是时序的问题,今天修正了时序,总算硬仿成功了。对照上次的程序可以发现就是添加了头函数: intrins.h ,这样就可以通过 _nop_() 指令较为准确的控制时序。 上次那个问题依然没有解决:就是接收缓冲区的数据是从readbuf 开始的,以这个程序为例: readbuf 中存放0x96 readbuf 中存放0x84 readbuf 中存放0xd5 readbuf 中存放0x63 readbuf 中存放0x7c readbuf 中存放0x8c 其实我是想把收到的数据存放在readbuf ~ 中的,我也不知道为什么结果会这样,有知道的麻烦指教
[单片机]
以C语言完成读写24LCxx系列的EEPROM的实例
//************************************************************************ //* Using I2C Master Mode for access Slave (EEPRM) //* //* Written by: Richard Yang //* Sr. Corporate Application Engineer //* Microchip Technology Inc. //* Date: Oct. 3nd '2002
[单片机]
24C02(EEPROM)以字节读写程序(ASM)
24C02以字节读写时序 选择性读时序 .................24c02字节读写程序(已调试过 )....................... ;//////////////////////////////////////////////////// ;AT89C52与AT24C02的IIC通信 ;控制数码管显示0-P ;AT24C02采用字节写和选择性读 ;//////////////////////////////////////////////////// DAUN EQU 18 ;写入字节数,对24C02(256BK)最大为255 ADDR EQU 41H ;24C02操作数据地址 WRD
[单片机]
24C02(<font color='red'>EEPROM</font>)以字节<font color='red'>读写</font>程序(ASM)
STC单片机编程软件安装
STC单片机是由宏晶科技自主研发的可以款基于C51内核的单片机,在国内使用非常广泛。 STC在传统的C51单片机的基础上,性能设计得到了很大的提升,性能优越,而且价格比较低廉,获得了很多大学生和工程师的喜爱。 接下来,给大家简单的介绍一下STC 单片机(C51也兼容)开发环境的搭建 单片机开发最常用的编译软件有Keil,IAR 等,宏晶科技没有开发自己的单片机开发环境,是Keil C51软件来开发的。 STC单片机程序开发用的是Keil C51. (最常见的Keil 软件还有一个MDK版本,但MDK不适合STC单片机,MDK主要适用于ARM内核单片机开发使用),所以我们就需要下载并安装keil C51。 一、 下载Kei
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved