首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
飞思卡尔™半导体(Freescale Semiconductor)
» mcf52235的I2C问题
1
2
下一页
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
mcf52235的I2C问题
发短消息
加为好友
ericli_80
当前离线
UID
148171
帖子
19
精华
0
积分
116
阅读权限
20
在线时间
0 小时
注册时间
2006-9-15
最后登录
2008-7-9
注册会员
UID
148171
性别
男
1
#
打印
字体大小:
t
T
ericli_80
发表于 2008-4-3 13:44
|
只看该作者
mcf52235的I2C问题
tiffany
我启动了I2C后,怎么从机就是不应答,请教下
void mcf52235_iic_init(void)
{
MCF_GPIO_PASPAR |= 0x01;//MCF_GPIO_PASPAR_SCL_TXD2 | MCF_GPIO_PASPAR_SDA_RXD2;
MCF_I2C_I2FDR = 0x15; //divided by 640,braud:93.75k bps
MCF_I2C_I2AR = 0xf0; //slave address
MCF_I2C_I2CR = (0 | MCF_I2C_I2CR_IEN );
MCF_I2C_I2CR |= MCF_I2C_I2CR_MSTA ;
}
void SETD(uint8 Addr,uint8 Value)
{
InterruptDisable;
MCF_GPIO_PORTNQ &= 0xbf;
SomeNop;
MCF_GPIO_PORTNQ |= 0x40;
SomeNop;
while((MCF_I2C_I2SR & MCF_I2C_I2SR_IBB) != 0);//等待总线空闲
MCF_I2C_I2CR |= MCF_I2C_I2CR_MTX;//设置为发送模式
MCF_I2C_I2CR |= MCF_I2C_I2CR_MSTA;//设置主模式,产生START信号
MCF_I2C_I2DR = Addr;
while((MCF_I2C_I2SR & MCF_I2C_I2SR_IBB) == 0);//等待启动总线
while((MCF_I2C_I2SR & MCF_I2C_I2SR_IBB) != 0);//等待总线空闲
MCF_I2C_I2CR |= MCF_I2C_I2CR_MTX;//设置为发送模式
MCF_I2C_I2CR |= MCF_I2C_I2CR_MSTA;//设置主模式
MCF_I2C_I2DR = Value;
while((MCF_I2C_I2SR & MCF_I2C_I2SR_IBB) == 0);//等待启动总线
while((MCF_I2C_I2SR & MCF_I2C_I2SR_IBB) != 0);//等待总线空闲
SomeNop;
Delay1ms(1);//约300us
MCF_GPIO_PORTNQ &= 0xbf;
MCF_I2C_I2SR &= 0xef;//清IAL
Delay1ms(1);
InterruptEnable
}
收藏
分享
评分
希望你与广大的师兄,师姐们交流!
回复
引用
订阅
TOP
发短消息
加为好友
ericli_80
当前离线
UID
148171
帖子
19
精华
0
积分
116
阅读权限
20
在线时间
0 小时
注册时间
2006-9-15
最后登录
2008-7-9
注册会员
UID
148171
性别
男
2
#
ericli_80
发表于 2008-4-7 09:28
|
只看该作者
有做过的,请帮忙看看,我用示波器看波形,第9个脉冲一直都是高电平,也就是没有产生应答啊,不知道怎么回事?
希望你与广大的师兄,师姐们交流!
回复
引用
TOP
发短消息
加为好友
strongchen
当前离线
版主
UID
104380
帖子
7531
精华
0
积分
14828
阅读权限
90
在线时间
17 小时
注册时间
2005-2-28
最后登录
2012-5-17
论坛元老
UID
104380
性别
男
3
#
strongchen
发表于 2008-4-7 09:52
|
只看该作者
从机是什么芯片?I2C地址对吗?
海纳百川 有容乃大
回复
引用
TOP
发短消息
加为好友
ericli_80
当前离线
UID
148171
帖子
19
精华
0
积分
116
阅读权限
20
在线时间
0 小时
注册时间
2006-9-15
最后登录
2008-7-9
注册会员
UID
148171
性别
男
4
#
ericli_80
发表于 2008-4-7 10:02
|
只看该作者
从机是DS1302,地址是对的,就是不应答啊
希望你与广大的师兄,师姐们交流!
回复
引用
TOP
发短消息
加为好友
strongchen
当前离线
版主
UID
104380
帖子
7531
精华
0
积分
14828
阅读权限
90
在线时间
17 小时
注册时间
2005-2-28
最后登录
2012-5-17
论坛元老
UID
104380
性别
男
5
#
strongchen
发表于 2008-4-7 10:08
|
只看该作者
换一块芯片试试?
海纳百川 有容乃大
回复
引用
TOP
发短消息
加为好友
ericli_80
当前离线
UID
148171
帖子
19
精华
0
积分
116
阅读权限
20
在线时间
0 小时
注册时间
2006-9-15
最后登录
2008-7-9
注册会员
UID
148171
性别
男
6
#
ericli_80
发表于 2008-4-7 10:38
|
只看该作者
我也换过了啊,你帮我看下,我哪些初始化的对吗?
对了,那些停止信号是由MCF52235自动给的吧,不用程序编写的吧,就象是从机给应答信号一样的吧.
斑竹是否有例程,能否发出来,让我参考下,谢谢了!
希望你与广大的师兄,师姐们交流!
回复
引用
TOP
发短消息
加为好友
strongchen
当前离线
版主
UID
104380
帖子
7531
精华
0
积分
14828
阅读权限
90
在线时间
17 小时
注册时间
2005-2-28
最后登录
2012-5-17
论坛元老
UID
104380
性别
男
7
#
strongchen
发表于 2008-4-7 11:24
|
只看该作者
如果你看过波形,起始信号和波特率都是对的,而没有应答信号,只能说从机或连线有问题了。再仔细检查一下吧。
海纳百川 有容乃大
回复
引用
TOP
发短消息
加为好友
ericli_80
当前离线
UID
148171
帖子
19
精华
0
积分
116
阅读权限
20
在线时间
0 小时
注册时间
2006-9-15
最后登录
2008-7-9
注册会员
UID
148171
性别
男
8
#
ericli_80
发表于 2008-4-7 11:28
|
只看该作者
是啊,我看过波形了,反复的试,但是有更奇怪的事情,波形指示是第9个脉冲是一个高电平,但是看MCF52235的状态寄存器的I2SR的应答位,却说是0,即有应答,这个是怎么回事啊.
希望你与广大的师兄,师姐们交流!
回复
引用
TOP
发短消息
加为好友
strongchen
当前离线
版主
UID
104380
帖子
7531
精华
0
积分
14828
阅读权限
90
在线时间
17 小时
注册时间
2005-2-28
最后登录
2012-5-17
论坛元老
UID
104380
性别
男
9
#
strongchen
发表于 2008-4-7 14:58
|
只看该作者
把波形贴出来看看?
海纳百川 有容乃大
回复
引用
TOP
发短消息
加为好友
ericli_80
当前离线
UID
148171
帖子
19
精华
0
积分
116
阅读权限
20
在线时间
0 小时
注册时间
2006-9-15
最后登录
2008-7-9
注册会员
UID
148171
性别
男
10
#
ericli_80
发表于 2008-4-7 16:20
|
只看该作者
请麻烦看下,谢谢!
希望你与广大的师兄,师姐们交流!
回复
引用
TOP
发短消息
加为好友
ericli_80
当前离线
UID
148171
帖子
19
精华
0
积分
116
阅读权限
20
在线时间
0 小时
注册时间
2006-9-15
最后登录
2008-7-9
注册会员
UID
148171
性别
男
11
#
ericli_80
发表于 2008-4-7 16:24
|
只看该作者
[upload=image/pjpeg]uploadImages/BOXING.JPG[/upload]
刚才没有贴成功
希望你与广大的师兄,师姐们交流!
回复
引用
TOP
发短消息
加为好友
strongchen
当前离线
版主
UID
104380
帖子
7531
精华
0
积分
14828
阅读权限
90
在线时间
17 小时
注册时间
2005-2-28
最后登录
2012-5-17
论坛元老
UID
104380
性别
男
12
#
strongchen
发表于 2008-4-7 16:38
|
只看该作者
看起来好像是第一个字节还没有发送完,第二个字节就提前发送了。检查一下你的程序。
海纳百川 有容乃大
回复
引用
TOP
发短消息
加为好友
ericli_80
当前离线
UID
148171
帖子
19
精华
0
积分
116
阅读权限
20
在线时间
0 小时
注册时间
2006-9-15
最后登录
2008-7-9
注册会员
UID
148171
性别
男
13
#
ericli_80
发表于 2008-4-7 17:06
|
只看该作者
第一个字节是发完了(0X8E),你看第9个脉冲时,SDA(蓝)却是高,可是你看我旁边贴出来的I2SR却是有收到ACK,所以就发了第二个啊,但是更有奇怪的是,我现在发的第二个字节是0X00,如果我发0X80,则只会有一个脉冲,而不会有9个脉冲了,也就说,只要碰到了SDA为高电平,估计就被当作是停止信号,就不发了.我都搞不明白了
[此贴子已经被作者于2008-4-7 17:06:42编辑过]
希望你与广大的师兄,师姐们交流!
回复
引用
TOP
发短消息
加为好友
strongchen
当前离线
版主
UID
104380
帖子
7531
精华
0
积分
14828
阅读权限
90
在线时间
17 小时
注册时间
2005-2-28
最后登录
2012-5-17
论坛元老
UID
104380
性别
男
14
#
strongchen
发表于 2008-4-7 17:17
|
只看该作者
你外接小一些的上拉电阻试试。
海纳百川 有容乃大
回复
引用
TOP
发短消息
加为好友
ericli_80
当前离线
UID
148171
帖子
19
精华
0
积分
116
阅读权限
20
在线时间
0 小时
注册时间
2006-9-15
最后登录
2008-7-9
注册会员
UID
148171
性别
男
15
#
ericli_80
发表于 2008-4-7 17:19
|
只看该作者
上拉电阻已经是1.5K了,应该是没有问题的了,我现在觉得是软件的问题.
希望你与广大的师兄,师姐们交流!
回复
引用
TOP
1
2
下一页
返回列表
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议