uPP与I2c的问题 - OMAP-L138 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 8363|回复: 9

[已解决] uPP与I2c的问题

[复制链接]

5

主题

24

帖子

95

积分

注册会员

Rank: 2

积分
95
发表于 2017-4-24 17:41:01 | 显示全部楼层 |阅读模式
本帖最后由 wwfdzh2012 于 2017-4-29 15:31 编辑
3 T! p- o, ^( C5 A* i% t' C% `4 b* _2 K/ R/ w5 c2 r! ]+ F1 U
在使用过程中出现只要uPP在工作,i2c的通信就会出现不稳定现象,通信不可靠,请问uPP跟I2c的硬件资源是否有共用的地方?
9 }8 A2 `/ {* S/ Z/ I- f  S% b' _
回复

使用道具 举报

5

主题

24

帖子

95

积分

注册会员

Rank: 2

积分
95
 楼主| 发表于 2017-4-25 09:23:24 | 显示全部楼层
没人吗?????
回复

使用道具 举报

32

主题

97

帖子

2049

积分

金牌会员

Rank: 6Rank: 6

积分
2049
发表于 2017-4-25 11:32:32 | 显示全部楼层
是不是时钟有冲突
回复 支持 反对

使用道具 举报

5

主题

24

帖子

95

积分

注册会员

Rank: 2

积分
95
 楼主| 发表于 2017-4-25 11:34:46 | 显示全部楼层
IRONMAN 发表于 2017-4-25 11:32
) O$ J( }/ O' J" @1 d, L  ?3 L, f是不是时钟有冲突

7 ^$ w6 R! w" X/ ^# ]请问怎么排除?
回复 支持 反对

使用道具 举报

5

主题

24

帖子

95

积分

注册会员

Rank: 2

积分
95
 楼主| 发表于 2017-4-25 11:38:11 | 显示全部楼层
IRONMAN 发表于 2017-4-25 11:32* J  ~' ^4 z: F
是不是时钟有冲突

  S5 i# q, b# C6 mI2C和Upp的时钟会冲突吗,不明白您说的意思?
回复 支持 反对

使用道具 举报

32

主题

97

帖子

2049

积分

金牌会员

Rank: 6Rank: 6

积分
2049
发表于 2017-4-25 12:14:40 | 显示全部楼层
wwfdzh2012 发表于 2017-4-25 11:38
% b& b& ^* j4 }6 lI2C和Upp的时钟会冲突吗,不明白您说的意思?

+ Q; w$ @9 t. h6 Z你看他们的时钟有没有关联,可能是两个一起用的时候没有注意时钟频率一致
回复 支持 反对

使用道具 举报

5

主题

24

帖子

95

积分

注册会员

Rank: 2

积分
95
 楼主| 发表于 2017-4-25 13:35:23 | 显示全部楼层
IRONMAN 发表于 2017-4-25 12:143 C0 z5 W+ ?# h4 Q( r
你看他们的时钟有没有关联,可能是两个一起用的时候没有注意时钟频率一致 ...
' M8 P) L1 h/ V8 H  S5 z* E
我看了datasheet,两者的时钟并没有关联呀,麻烦您再帮忙排错一下* ?! l+ t2 J" y; b) N( n, s

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

3

主题

852

帖子

3538

积分

创龙

Rank: 8Rank: 8

积分
3538
发表于 2017-4-25 14:37:05 | 显示全部楼层
裸机情况下建议I2C使用查询方式,中断的话可能会跟upp冲突的。
回复 支持 反对

使用道具 举报

5

主题

24

帖子

95

积分

注册会员

Rank: 2

积分
95
 楼主| 发表于 2017-4-25 14:43:43 | 显示全部楼层
human 发表于 2017-4-25 14:37
' o0 P6 u5 I: J2 x4 h6 e1 u裸机情况下建议I2C使用查询方式,中断的话可能会跟upp冲突的。
& C1 i- U6 U- o# P* w$ y3 D' J/ d
uPP与i2c都是用轮询的
回复 支持 反对

使用道具 举报

5

主题

24

帖子

95

积分

注册会员

Rank: 2

积分
95
 楼主| 发表于 2017-4-29 15:31:07 | 显示全部楼层
问题解决了,确实是复位uPP会影响到I2C的通信,导致I2C的通信产生很大延迟(约1ms),不重新配置Upp而是重新配置DMA就可以解决,不知道是怎么影响的,影响I2C的语句:
) r! P: @7 t" J& L& C( l3 ~( _2 v
  K/ _: [4 T" B  v9 F1 w//reset uPP2 K( S5 F. t6 ]1 o6 v
SETBIT(UPP->UPPCR, UPP_UPPCR_SWRST);
9 x8 y# B. A/ ?4 a- T9 \7 E* J' `+ |, q
for(i = 0; i < 200; i++){}; //wait 200 clock cycles for reset.
6 n* M! y# b0 I$ g- g5 aCLRBIT(UPP->UPPCR, UPP_UPPCR_SWRST);
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2024-3-28 22:05 , Processed in 0.042961 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

快速回复 返回顶部 返回列表