leil编at89cat80c2051程序编写可以直接用SDA,SCL吗

SCL和SDA的问题!本人是菜鸟!
[问题点数:40分,结帖人myvisit]
本版专家分:0
结帖率 97.37%
CSDN今日推荐
本版专家分:0
结帖率 97.37%
本版专家分:69416
2012年11月 其他开发语言大版内专家分月排行榜第一2011年5月 其他开发语言大版内专家分月排行榜第一2010年6月 其他开发语言大版内专家分月排行榜第一2010年5月 其他开发语言大版内专家分月排行榜第一2010年4月 其他开发语言大版内专家分月排行榜第一2008年1月 其他开发语言大版内专家分月排行榜第一2007年12月 其他开发语言大版内专家分月排行榜第一2007年11月 其他开发语言大版内专家分月排行榜第一2007年4月 其他开发语言大版内专家分月排行榜第一2006年12月 其他开发语言大版内专家分月排行榜第一2006年11月 其他开发语言大版内专家分月排行榜第一2006年10月 其他开发语言大版内专家分月排行榜第一2006年7月 其他开发语言大版内专家分月排行榜第一2006年6月 其他开发语言大版内专家分月排行榜第一2005年11月 其他开发语言大版内专家分月排行榜第一2005年10月 其他开发语言大版内专家分月排行榜第一2005年9月 其他开发语言大版内专家分月排行榜第一2005年6月 其他开发语言大版内专家分月排行榜第一2005年5月 其他开发语言大版内专家分月排行榜第一2005年3月 其他开发语言大版内专家分月排行榜第一2005年2月 其他开发语言大版内专家分月排行榜第一2004年10月 其他开发语言大版内专家分月排行榜第一2004年9月 其他开发语言大版内专家分月排行榜第一2005年2月 硬件使用大版内专家分月排行榜第一2004年8月 硬件/嵌入开发大版内专家分月排行榜第一
2012年10月 其他开发语言大版内专家分月排行榜第二2011年7月 其他开发语言大版内专家分月排行榜第二2010年3月 其他开发语言大版内专家分月排行榜第二2007年10月 其他开发语言大版内专家分月排行榜第二2007年9月 其他开发语言大版内专家分月排行榜第二2005年3月 Windows专区大版内专家分月排行榜第二2005年2月 Windows专区大版内专家分月排行榜第二2005年6月 扩充话题大版内专家分月排行榜第二2006年9月 其他开发语言大版内专家分月排行榜第二2006年5月 其他开发语言大版内专家分月排行榜第二2006年3月 其他开发语言大版内专家分月排行榜第二2006年2月 其他开发语言大版内专家分月排行榜第二2005年12月 其他开发语言大版内专家分月排行榜第二2005年4月 其他开发语言大版内专家分月排行榜第二2004年11月 其他开发语言大版内专家分月排行榜第二2005年3月 硬件使用大版内专家分月排行榜第二
2011年11月 其他开发语言大版内专家分月排行榜第三2011年8月 其他开发语言大版内专家分月排行榜第三2008年10月 其他开发语言大版内专家分月排行榜第三2004年9月 硬件/嵌入开发大版内专家分月排行榜第三
本版专家分:0
结帖率 97.37%
本版专家分:25458
2018年4月 Delphi大版内专家分月排行榜第一2018年3月 Delphi大版内专家分月排行榜第一
2016年11月 Delphi大版内专家分月排行榜第二
2011年10月 其他开发语言大版内专家分月排行榜第三2010年8月 其他开发语言大版内专家分月排行榜第三2007年5月 其他开发语言大版内专家分月排行榜第三
本版专家分:0
结帖率 97.37%
本版专家分:25458
2018年4月 Delphi大版内专家分月排行榜第一2018年3月 Delphi大版内专家分月排行榜第一
2016年11月 Delphi大版内专家分月排行榜第二
2011年10月 其他开发语言大版内专家分月排行榜第三2010年8月 其他开发语言大版内专家分月排行榜第三2007年5月 其他开发语言大版内专家分月排行榜第三
匿名用户不能发表回复!|
CSDN今日推荐德州仪器 (TI) 是一家跨国性的半导体设计与制造公司。因具有100,000+个以上模拟IC和嵌入式处理器而独树一帜、同时兼备软件、工具以及业界最大的销售团队/技术支持团队。
Texas Instruments Incorporated. 版权所有.我想再请教你;我过去用老式编程器烧写,为何只需obj文件,而现在写at89c2051单片机为何要用hex文件?_百度知道
我想再请教你;我过去用老式编程器烧写,为何只需obj文件,而现在写at89c2051单片机为何要用hex文件?
我想再请教你;我过去用老式编程器烧写,为何只需obj文件,而现在写at89c2051单片机为何要用hex文件?我现在学用leil uvision2编译同样源程序时,得到的hex文件的字节数为何如此大,还大过at89c2051的可擦写Rom(2048字节)呢?我的工程项目在构造目标时的输出...
我有更好的答案
是你的编程器变了吧,有些编程器要hex文件,有些要obj文件。“CGCJJ-2& - 0 错误(s), 1
警告(s).”只是警告而已,没有错误产生。“正在从 &CGCJJ-2& 产生 HEX文件...”不是说已产生hex文件了吗,那就是可以执行文件啦。而这些警告有时候是可以忽略的,而有时是由于个人疏忽例如不小心搞错了等等造成的。
采纳率:19%
代码中..有重叠的地址另外老式编程器要的是 bin文件不是obj文件..hex文件可以简单的转化成bin文件.bin文件是没有..各种校验的,,文件如果部分破会不能检测出来.hex更加的安全,里面都带有校验,部分破会.编程器多半会告诉你,你的文件有问题(有些垃圾编程器软件不会)hex文件是 ascii形式存放的.在加上检验.文件肯定比bin的大.bin是存二进制文件..把内容一一放入 单片机存储器就可以执行hex文件..编程器软件.会自动帮你解码文件(解码的最终结果就是bin文件的内容)网上有相互转化的工具 bin2hex/ hex2bin
需要什么 文件由编程器的软件决定的。有的编程器除了可以用HEX文件,还可以用BIN文件烧写
以前KEIL在没注册的时候倒是不能写超过两K的代码哦。这hex大于两K是很正常的,比如说,你将2K的数据存入FLASH中,你就需要把他们写在程序当中吧,而关于这段代码的长度绝对长于2K。
你是不是编译了两个文件,0000H到0012H的地址重叠了
来自:求助得到的回答
其他2条回答
为您推荐:
其他类似问题
您可能关注的内容
obj文件的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。单片机中PDA PCL是程序写入通讯使用的,而SDA SCL则是单片机与单片机之间通讯使用的,请问理解正确吗?_百度知道
单片机中PDA PCL是程序写入通讯使用的,而SDA SCL则是单片机与单片机之间通讯使用的,请问理解正确吗?
我有更好的答案
不知道你说的是什么单片机,SDA、SCL分别是单片机i2c 总线的数据线和时钟线
为您推荐:
其他类似问题
pda的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。您的位置: >
AT24C04简介
AT24C04是ATMEL公司生产的4Kbit(512Bytes)E2PROM芯片,该芯片采用I2C总线设计,主要性能指标与AT24C02类似,不同点为:
容量为AT24C02的两倍,分为两部分存储空间,每部分256bytes。
有2个器件地址选择脚,一个I2C总线最多能够挂接4个AT24C04器件。
32页,每页16字节,每次可连续写入16字节数据。
WP引脚为高电平时,AT24C04的0~255地址空间的数据被写保护。
需要9位的地址进行数据寻址
AT24C04的引脚定义
AT24C04引脚功能
A0为空引脚,A1,A2口为器件地址设定口,通过A1,A2口来设定AT24C04的器件地址。
WP口接低电平时,可以对整个AT24C04器件的512个字节进行读写操作。当WP口接高电平后,器件前256个地址的数据被保护,只能读,不可写入,后256个字节数据可进行读写操作。
AT24C04的从器件寻址
AT24C04的器件地址由两个引脚决定,分别为A1,A2引脚。
AT24C04的数据空间由P0位决定,如图24-2所示,当P0为&0&时,将对AT24C04的0~255空间的数据进行操作;当当P0为&1&时,将对AT24C04的256~511空间的数据进行操作。
AT24C04的读写操作
对AT24C04的读写操作与AT24C02的读写操作完全相同。不同的是,AT24C04分为2个数据区,用P0位加以区别,当P0=0时,操作的是0~255地址单元的数据;当P0=1时,操作的是256~511地址单元的数据。
AT24C04的拨码开关设置只有2位(A1、A2),例程中应按图24-3设置
AT24C04读写演示程序
AT24C04应用电路
实现AT89C51对AT24C04进行单字节的读写操作。AT24C04是ATMEL公司的CMOS结构4096位(512Byte&8位)串行EEPROM,16字节页面写。与STC89C51单片机的接口如下图4-2-9所示。图中AT24C04的地址为0,SDA是漏极开路输出,接STC89C51的P17脚,上拉电阻的选择可参考AT24C04的数据手册,SCL是时钟端口,接STC89C51的P11脚。下面是通过I2C接口对AT24C04进行单字节读写操作的例程。
以下为C语言写的软件模拟I2C总线的数据传送读写程序,I2C芯片为AT24C04。单片机对AT24C04进行单字节的读写操作。
/*********************************************************************/
// 程序说明:用软件模拟I2C芯片AT24C04单字节的读写程序,地址为0。
// 功能是把数据0xc0存储到地址5中,
// 然后读出并通过P0口驱动LED显示
/*********************************************************************/
#include《reg51.h》
#include《intrins.h》
#define uchar unsigned char
#define nop _nop_()
sbit sda=P1^7; //SDA和单片机的P17脚相连
sbit scl=P1^1; //SCL和单片机的P11脚相连
//定义ACC的位,利用ACC操作速度最快
sbit a0=ACC^0;
sbit a1=ACC^1;
sbit a2=ACC^2;
sbit a3=ACC^3;
sbit a4=ACC^4;
sbit a5=ACC^5;
sbit a6=ACC^6;
sbit a7=ACC^7;
//开始函数
void start()
//停止函数
void stop()
//响应函数
void ack()
while((sda==1) && (i《250))i++;
//写一个字节函数
void write_byte(uchar dd)
sda=a7;scl=1;scl=0;
sda=a6;scl=1;scl=0;
sda=a5;scl=1;scl=0;
sda=a4;scl=1;scl=0;
sda=a3;scl=1;scl=0;
sda=a2;scl=1;scl=0;
sda=a1;scl=1;scl=0;
sda=a0;scl=1;scl=0;
//读一个字节函数
uchar read_byte()
scl=1;a7=scl=0;
scl=1;a6=scl=0;
scl=1;a5=scl=0;
scl=1;a4=scl=0;
scl=1;a3=scl=0;
scl=1;a2=scl=0;
scl=1;a1=scl=0;
scl=1;a0=scl=0;
return(ACC);
//写地址和数据函数
void write_add(uchar address,uchar date)
start();
write_byte(0xa0);//写2404地址命令
write_byte(address);//写地址
write_byte(date);//写数据
//读地址、数据函数
uchar read_add(uchar address)
start();
write_byte(0xa0);
write_byte(address);
start();
write_byte(0xa1);
temp=read_byte();
return(temp);
void delay(uchar i)
uchar a,b;
for(a=0;a《i;i++)
for(b=0;b《100;b++);
void init()
void main()
init(); //初始化函数
write_add(5,0xc0); //往地址5中写入0xc0
delay(100);
P0=read_add(5); //读地址5中的数据,并送P0口驱动发光二极管显示
while(1); //无限循环
程序下载硬件实验板上,运行结果如下图4-2-12所示。
非常好我支持^.^
不好我反对
相关阅读:
( 发表人:沈丹 )
评价:好评中评差评
技术交流、我要发言
发表评论,获取积分! 请遵守相关规定!提 交
Copyright &
elecfans.com.All Rights Reserved

我要回帖

更多关于 at24c64 程序 的文章

 

随机推荐