百韵网 >>  正文

24C04或24CXX系列EEPROM读写程序 C51的 单片机 24CXX EEPROM 地址

来源:www.baiyundou.net   日期:较早时间
我课程设计使用的EEPROM型号为X24C16P(2048字节),使用的X24C16P EEPROM读写程序为AT24C02C修改来的,两者读写原理上基本一致。我先放上一个经过PROTEUS仿真的程序,可用,我课设的程序在同学电脑上,一时拿不到:#include<reg52.h> //软件模拟IIC的很好的例子,理解实质即可
#include<intrins.h> //程序虽然长,但是不是很复杂,关键在于理解IIC的工作机理
#define uchar unsigned char
#define uint unsigned int
#define DELAY5US _nop_(); _nop_(); _nop_(); _nop_(); _nop_();
sbit VSDA = P1^0;
sbit VSCL = P1^1;
sbit LED = P1^7;
uchar SLAW;
void STA() //发现:24C02C 是 256字节*8位的串行EEPROM存储器芯片,注意是ROM只读的
{ //但是这个例子将0-255这些数据写入到了ROM当中,怎么写的,是烧进去的,
VSDA = 1; //这个不是很理解啊
VSCL = 1;
DELAY5US

VSDA = 0;
DELAY5US
VSCL = 0;
}
void STOP()
{
VSDA = 0;
VSCL = 1;
DELAY5US
VSDA = 1;
VSCL = 1;
DELAY5US
}
void MACK()
{
VSDA = 0;
VSCL = 1;
DELAY5US
VSCL = 0;
}
void MNACK()
{
VSDA = 1;
VSCL = 1;
DELAY5US
VSCL = 0;
}
void CACK()
{
VSDA = 1;
VSCL = 1;
F0 = 0;
if ( 1 == VSDA )
{
F0 = 1;
}
VSCL = 0;
}
void WRBYTE(uchar idata *p)
{
uchar idata n = 8, temp;
temp = *p;
while(n--)
{
if ( 0x80 == (temp&0x80) )
{
VSDA = 1;
VSCL = 1;
DELAY5US
VSCL = 0;
}
else
{
VSDA = 0;
VSCL = 1;
DELAY5US
VSCL = 0;
}
temp = temp<<1;
}
}
void RDBYTE(uchar idata *p)
{
uchar idata n = 8, temp = 0;
while(n--)
{
VSDA = 1;
VSCL = 1;
temp = temp<<1;
if ( 1 == VSDA )
temp = temp|0x01;
else
temp = temp&0xfe;
VSCL = 0;
}
*p = temp;
}
void delayMoreThan5ms()
{
uint i;
for ( i = 0; i < 1000; i++ )
{
DELAY5US
}
}
int main()
{
uchar ch, *p;
uint i;
SLAW = 0xA2; //0xA0是slave write地址字节(写),A是1010是器件地址,由厂家决定
for ( i = 0; i <= 255; i++ ) //1010(A)是24C02C所属系列的器件地址
{ //0000是自己决定的,前3个0由24C02C芯片的A0A1A2决定
STA(); //最后一个0是写的意思,1则为读
p = &SLAW; //4个(器件地址),3个(引脚地址),一个(读写选择位)。
WRBYTE(p); //应答信号是关键啊
CACK(); //发送对应写, 接收对应读
if ( 1 == F0 )
{
LED = 0;
while(1)
;
}
ch = i;
p = &ch;
WRBYTE(p);
CACK();
if ( 1 == F0 )
{
LED = 0;
while(1)
;
}
WRBYTE(p);
CACK();
STOP();
delayMoreThan5ms();
}
while(1)
;
return 0;
}

单片机 24CXX EEPROM 地址~

主器件通过发送一个起始信号启动发送过程然后发送它所要寻址的从器件的地址8 位从器件地
址的高4 位固定为1010 见图5 接下来的3 位A2 A1 A0 为器件的地址位用来定义哪个器件
以及器件的哪个部分被主器件访问上述8 个CAT24WC01/02 4 个CAT24WC04 2 个CAT24WC08
1 个CAT24WC16 可单独被系统寻址。
这是芯片资料上写的,为什么位数越大可接的个数越少,这肯定与地址的位数有关。然后你看附件的图片也许会豁然开朗,举例24c16的低3、2、1位为a10、a9、a8,这是什么?这是字节地址的高三位,加上字节地址的低八位刚好可以寻址到2K的寻址空间。因为此时A1/A2/A3的地址线已经没有作用了,自然只可以接一个器件了。
对于32K以上的器件,想必不用说你也懂了,它的字节地址有两个字节。

  1、先买一个电脑打印机的打印线(两端有插头);

  2、再找一块现在市上卖的多用线路板,两孔相连的,截下一小块;


  3、将两个8脚IC插座及相关元件焊好(两个插座并联),

  4、将打印插头联线全焊掉,清理干净,留下5根备用,其余包好不用,将小插头线接好(特别注意引脚编号);

  5、大插头保留外壳(插头丢掉)焊上线路板,扣上外壳即成一个美观实用的读写器。

相关要点总结:

13549158113:"0x7eafb315"指令引用的"0x01324c04"内存不能为"read"是怎么会事?_百 ...
芮虎答:●在检查运行regedit进入注册表, 在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellExecuteHooks 下,应该只有一个正常的键值{AEB6717E-7E19-11d0-97EE-00C04FD91972}, 将其他的删除。【如果还有一个(默认)值,不用管它,也不能删除,一般它为空。】必要时【还原】或重新...

13549158113:口袋怪兽红秘籍
芮虎答:第一个字 02024C04 xx 第二个字 02024C05 xx 第三个字 02024C06 xx 第四个字 02024C07 xx ...速度030042EE 0xxx 特功030042F0 0xxx 特防030042F2 0xxx 状态(非战斗中) 030042E0 xx xx状态表

13549158113:口袋妖怪 星之卡比
芮虎答:第一个字 02024C04 xx 第二个字 02024C05 xx 第三个字 02024C06 xx 第四个字 02024C07 xx 第五个字 02024C08 xx ■第一只宠物名字(对应文字表) 第一个字 03004298 xx 第二个字 03004299 xx 第三个字 0300429A xx 第四个字 0300429B xx 第五个字 0300429C xx 6.无限hp 02024808 00FF 7.无限...

13549158113:红宝石金手指密码,急!!!最好是下载版的!!!
芮虎答:特攻:020241EE:03e7 特防:020241F0:03e7 首位PM的等级: 020241E4:XX XX为等级,16进制 对方...10 100% 15 队伍中全部妖怪各作此攻击一次,实际效果各妖怪依各自能力分开计算,陷入异常状态或濒死的...F424C045 EAC8EC2E4CBCD53D 4C08C8BCEC4BCDEA 82BE17EBF2583C34 F42335A179353E47 55FB538D14...

13549158113:口袋妖怪红宝石386版金手指代码?
芮虎答:《口袋妖怪红宝石386版》的所有金手指物品前缀为:01XXF0D5:XX=,所有代码如下:一、03、光照的力量、降低对手命中率 二、07、自行车、旅行速度X2 三、08、月石、进化一些Pokemon 四、09、中毒剂、治愈中毒的Pokemon 五、0A、烧伤剂、治愈烧伤的Pokemon 六、0B、冰冻剂、治愈冰冻的Pokemon 七、0C...

13549158113:口袋妖怪红宝石386完美版所有金手指
芮虎答:87BB1EEC2F496722 杰尼龟:2CACE52C773FD195 卡咪龟:7A60E261FDA36FBD 水箭龟:9743CF688B567664 ...124 04(明响)125 05(吠叫)126 06(毒毒)127 07(雪花)128 08(组合上升)129 09(种子机械)12A ...数值大小8bit(1byte)10进制:0~255 16进制:00~ FF金手指码0yyyyyyy:xx作用: 一般用于修改数量...

13549158113:基于Proteus的51系列单片机设计与仿真的内容简介
芮虎答:《基于Proteus的51系列单片机设计与仿真》以目前流行的软、硬件仿真软件Proteus为核心,从实验、实践、实用的角度,通过丰富的实例详细叙述了该软件在51单片机课程教学和单片机应用产品开发过程中的应用。全书共9章,主要介绍51单片机系统的设计及相关软件的使用,在Proteus中原理图的绘制与仿真及PCB的制作、...

13549158113:红宝石金手指
芮虎答:0063 TM/HM 代码 0121 - TM01 0122 - TM02 0123 - TM03 0124 - TM04 0125 - TM05 0126 - TM06 0127 - TM07 0128 - TM08 0129 - TM09 012A - TM10 012B - TM11 012C - TM12 012D - TM13 012E - TM14 012F - TM15 0130 - TM16 0131 - TM17 0132 - TM18 ...

13549158113:求口袋妖怪红蓝宝石(各种版本)的金手指.
芮虎答:PM等级020241E4:xx<xx为等级> HP 020241E6:03E7 HP 020241E8:03E7(HP上限) 攻击: 020241EA:03e7 防御: 020241EC:03e7 特攻: 020241EE:03e7...0156 秘传机04 0157 秘传机05 0158 秘传机06 0159 秘传机07 015A 秘传机08 6>树果 0085 树果01 0086 树果02 0087 树果03 0088 树果04 0089 树...

13549158113:口袋妖怪绿宝石386全金手指
芮虎答:特攻: 020241EE:03e7 特防: 020241F0:03e7 敏捷: 020241F2:03e7 敌方首位PM能力或所遇PM能力 现在HP??: 0202443E:03E7 最大HP??: 02024440:03E7(HP上限)攻击: 02024442:03e7 防御: 02024444:03e7 特攻: 02024446:03e7 特防: 02024448:03e7 敏捷: 0202444A:03e7 6、地点转移类 这个和...

(编辑:本站网友)
相关推荐
关于我们 | 客户服务 | 服务条款 | 联系我们 | 免责声明 | 网站地图
@ 百韵网