查看: 2762|回复: 5

[求助] IIC的组件为何不能正常工作,不稳定

[复制链接]

该用户从未签到

16

主题

56

帖子

0

注册会员

Rank: 2

积分
164
最后登录
2020-11-20
发表于 2016-7-1 10:45:27 | 显示全部楼层 |阅读模式
要测试IIC的接口,
测试环境:
ke06z128的freedom测试板,
测试板载MMA8451倾角传感器,是IIC接口
启动processor expert,添加IIC组件,主要设置:
禁止中断,SCL4.688K
设置中发现有个小三角警告:polling trials:32000;修改其他值器没法消除警告,但曾经代码可以执行



主要代码如下:

  for(;;){
          n = MMA8451_SelectSlave(0x1d);        //IIC地址
          n = MMA8451_SendBlock("\x0d\x1d", 2, &i);  //0xd 是ID寄存器的地址 ,在这一步跳到event。c


          n = MMA8451_RecvChar(&c);                //取ID,应该是0x1a
          n = MMA8451_SendStop();
  }


单步执行后,跳到event.c
/*
** ===================================================================
**     Method      :  UnhandledInterrupt (component MKE06Z128LK4)
**
**     Description :
**         This ISR services the unhandled common interrupt.
**         This method is internal. It is used by Processor Expert only.
** ===================================================================
*/
PE_ISR(UnhandledInterrupt);
PE_ISR(UnhandledInterrupt)
{
  PE_DEBUGHALT();
}


补充说明一下:
1. 这个程序我一开始运行,是可以运行的,也能取到MMA8451的ID,偶尔会出问题,包括用中断的模式也是可以的;但运行不稳定,于是我重新建项目;只保留主要代码;
2. IIC我实际用肯定是要用中断的,现在先测试不用中断的模式;问题一个一个解决;

请教一下,我的PE组件的IIC代码问题在哪里?
我知道答案 目前已有5人回答
回复

使用道具 举报

该用户从未签到

712

主题

6371

帖子

0

超级版主

Rank: 8Rank: 8

积分
24861
最后登录
2025-7-18
发表于 2016-7-1 11:23:19 | 显示全部楼层
首先,楼主开始的代码可以工作,只是有个小的警告,一般在PE中警告或者提示都会提示哪里的设置引起这个问题。
跟着,现在工作不正常,我建议首先用示波器或者逻辑分析仪抓取波形看看,我觉得这样才能更精确的确定哪一个步骤或者操作引发的。
回复 支持 反对

使用道具 举报

该用户从未签到

16

主题

56

帖子

0

注册会员

Rank: 2

积分
164
最后登录
2020-11-20
 楼主| 发表于 2016-7-1 11:33:14 | 显示全部楼层
小恩GG 发表于 2016-7-1 11:23
首先,楼主开始的代码可以工作,只是有个小的警告,一般在PE中警告或者提示都会提示哪里的设置引起这个问题 ...

其实main只是调用了1个函数就出错,出门就跌倒;我想知道哪里错了?
我不会怀疑PE的组件代码有问题,
我估计是我的设置有点问题,或者使用不当;
另外PE的源代码好繁杂,用示波器看要先看懂PE的源代码;
我用PE就是不想看手册,
回复 支持 反对

使用道具 举报

该用户从未签到

16

主题

56

帖子

0

注册会员

Rank: 2

积分
164
最后登录
2020-11-20
 楼主| 发表于 2016-7-1 11:37:39 | 显示全部楼层
可能的话,NXP的工程师能否给我一个demo程序,用KEA的板子,使用PE的IIC组件,读取MMA8451的数据;我比较一下与我的代码的区别。
回复 支持 反对

使用道具 举报

该用户从未签到

712

主题

6371

帖子

0

超级版主

Rank: 8Rank: 8

积分
24861
最后登录
2025-7-18
发表于 2016-7-4 09:14:35 | 显示全部楼层
建议楼主可以先参考一下此分享,对比一下你自己的I2C组件设置
https://www.nxpic.org.cn/module/forum/thread-563356-1-1.html
回复 支持 反对

使用道具 举报

该用户从未签到

16

主题

56

帖子

0

注册会员

Rank: 2

积分
164
最后登录
2020-11-20
 楼主| 发表于 2016-7-13 08:46:15 | 显示全部楼层
谢谢,就是找这个,我去看看
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2025-7-18 22:16 , Processed in 0.092241 second(s), 26 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

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