完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
你好,
我们正在使用3个PSoC在我们的董事会。我们使用CY8C5268AXI-LP047(PSOC5)、CY8C4247AZI M45(PSOC4200 M)和CY8C4245AXI-48(PSoC4200)。 PSoC5通过UsBART连接到PC,并且我使用超级终端发送命令。这些命令包括GPIO写/读。PSOC4200 M(地址:0x0A)和PSoC4200(地址:0x08)通过I2C连接到PSoC5。每当在超级终端中发出GPIO读/写命令时,PSoC5将返回GOPIO写的^ OK或^错误,而对于GPIO读则为低或高。 在硬件中,我们引入了一个作为PSOC5心跳的LED。使用SyBar定时器,LED被设置为每1秒切换一次。这表明PSOC5是完全可操作的。 为了调试我们的板,我做了一个模块化测试,流程如下: 1。PSOC5测试通过I2C发布GPIORAD/WORD命令来读取/写入PSOC5GPIO。USB COM是可以的,结果是意料之中的。 2。PSOC5和PSOC4200 M测试通过I2C发布GPIORAD/WORD命令来读取/写入TopSoC4200 MGPIO。USB COM是可以的。I2C COM是可以的。结果如出一辙。 3、PSOC5、PSOC4200和PSOC4200测试——通过I2C发布/写入命令来读取/写入ToPSoC4200 GPIO。接收到错误。PSOC5悬挂。PSoC5 LED不切换。 I2C代码的I2C奴隶是相同的。我没有预料到PSOC5,PSOC4200 MANDPSoC4200测试的错误。我做了一些调试,并包含了多个PrtoFS在PSoC5 I2C写。见下面的代码摘录: 空I2CyMistRoad编写(UINT8 SLaveAdvor,int i){UbjPrimtf(“rnMr.I2C写尝试…rn”);如果(0U==Read EngMnDead包(SLaveAdvor,I)){UBSPrimTf(“rNMrdIrror I2C尝试成功 rn”);/*从ReS/USPBPRINTF读取响应包(“rNMSTE-RE”)IAD I2C尝试rn);如果(0U==RealStaseBox(SLaveAdvor)){UBSPrimTf(“rnMead读取I2C尝试成功 rn”);Read BuffRealPosig();} {UBSPrimtf(“错误读取缓冲区”));i2c*Cug();UbjCug();} { UBSPrimTf(“rnMrdIrror I2C尝试失败 rn”);} UINT32写数据包(UINT8 SLaveAdter,INti){ UIT32 32状态=TrimeError;Unt8 Read Err;Char Err= DFEII2C2MistWrraveBuf(SaveAdvor,DFEYI2CBUFW,I,DFEYII2C2MODEIONEXEXEXEXFER);SpIFTF((char *)RES, rn%u错误在DFE主机写rn,WrreEnErr);MP;DFEII2C2MSTATIOWRESCMPLT){} /*显示传输状态*/IF(0U==(DFEII2I2CYMSTATHELXXFER和DFEII2CMASTSTATUS())){/*检查所有字节是否写入*/IF(DFEII2C2MASTEGETWORTER BUFSIZE()==i){Stase= TrimeSimultMPLT;}否则{UBSPrimtf( rNdfEi2CcMySt.)状态()= %Urn“,dFEII2CYMistStaseUs()); DFEII2CYMistCurrStasuSube();SpRAPTF((CHAR*)RES, RN写命令状态:%LURN”,状态); 我在超级终端上附加了PSOC5响应的图像。 I2CJMistWrreBuffe()API返回0个错误。 I2C*MistStaseUs()API返回162,因此RealEcMeMangDebug返回0xFF或255。我期望在超级终端打印消息“写命令状态:255”之后,应该立即遵循“MaSTeDrimeI2C尝试失败”,但是PSOC5冻结,而我需要对整个电路进行功率循环以解冻PSoC5。 我已经在这个问题上工作了相当长的一段时间,我仍然陷入困境。谁能指出什么是错的或者我错过了什么?此外,我不能直接提供项目zip文件在论坛,因为它是不批准我们的客户。然而,我可以通过电子邮件(KStReN.Gayo@ GungGA.com)转发项目的副本给任何可以帮助的人。 谢谢, K PSOC4200 I2C书写 27.9 K |
|
相关推荐
6个回答
|
|
嗨,鲍伯,
但是,在I2C传输之前,我仍然收到同样的错误。我以前检查了头文件,也没有发现162个值,这使得调试变得有点困难。 我可以尝试使用标准示波器来探测I2C线。我一有照片就上载。 谢谢, K |
|
|
|
嗨,鲍伯,
我能找到162值来自哪里。显然是来自地址NACK DFEII2C2MSTROSTATIO=(DFEIII2CYMSTATEYRIXXFER)DFEIII2CYMSTATEYR ErdRAD-NAK; 我已经检查了地址(0x08中的从地址)和DATARATE(100KbPS)。I2C从机和主控器都与设置同步。地址NACK的可能原因是什么? 谢谢, K |
|
|
|
嗨,鲍伯,
当我准备打开一个论坛条目时,我注意到,你在一个非常类似的情况下打开了一张票。我不知道我的发现和你的问题有没有关系,但这是我的条目。 一个HREF=“http://www. copy.com /pOCS-5-NeNN问题和解决方案/CysReT-I2C-ISR因果-PSoC冻结”& gt;http://www. Cypop.com /论坛/pSOC-5-NeNN问题和解决方案/CysReT-I2C-ISR因果-PSO-COLD & L//A& GT; Br 拉约什 |
|
|
|
看来,链接没有成功添加。这是你在那里找到的URL:
HTTP://www. CyPress .COM/FUMU/PSOC-5-NeNN问题和解决方案/CysRAT-I2C-ISR因果PSO-冻结 |
|
|
|
嗨,Lajos,
我已经检查了你的论坛条目。你也从I2C奴隶那里接收NAK吗? 在我的项目中的I2C硕士有2个奴隶,我能够沟通的奴隶之一(PSoC4200米)成功地没有任何问题。鲍伯能够指出我的代码错误,原因是为什么我遇到的“冻结”在我的PSoC5中,已经解决了。 每当我尝试与另一个奴隶(PSoC4200)通信时,我就根据I2CYMSTSTATION的值接收地址NAK错误。 我试着从启动板上的一块板上调查芯片和PSoC4200。这是我第一次在I2C中遇到一个地址NAK,这就是为什么我很清楚地知道哪里出了问题。顺便说一下,我们使用的是定制板。 谢谢, K |
|
|
|
你好,
在I2C世界中是很正常的,如果从设备没有准备好,仅仅设备不侦听I2C SDA/SCL线,因此由主母发送的地址字节不被从属者确认。在我的案子中,我没有发现这个错误。如果我记得WELI捕获的情况下,当几个字节假设由主机发送,其中一个数据字节包含无效值,这是由奴隶NKKDY,所以主机没有进一步发送Byth.pSOC控制器进一步工作,但两个I2C线保持在拉低状态。和SurrnPrPyPoSoCfelIt冻结下一个I2C操作,但实际上在这条I2C线路上,I2C启动不能启动,因为I2C线路必须处于高电平。但又是几天前,我可能记错了。 如果您认为,您的PSoC冻结是从I2C API ISR派生的,我真的建议添加它的一些VIIILIGN。对我来说,改变输出引脚的逻辑电平是最容易的。这依赖于事实,如果PSoC的ARM核冻结,芯片的硬件部分仍在工作,因此TestPin的逻辑电平保持在最后状态。 在CYASSERTinstructions之前,它只需要一行代码: *((UTIN 8*)(ADDR))=(0x0C+((值)和1)); 其中ADDR=(0x4005000)((端口)& lt;lt;3(+)),而值=0或1。例如,对于p2O3端口=2,PIN=3。 Br 拉约什 |
|
|
|
只有小组成员才能发言,加入小组>>
754个成员聚集在这个小组
加入小组2100 浏览 1 评论
1846 浏览 1 评论
3664 浏览 1 评论
请问可以直接使用来自FX2LP固件的端点向主机FIFO写入数据吗?
1782 浏览 6 评论
1532 浏览 1 评论
CY8C4025LQI在程序中调用函数,通过示波器观察SCL引脚波形,无法将pin0.4(SCL)下拉是什么原因导致?
560浏览 2评论
CYUSB3065焊接到USB3.0 TYPE-B口的焊接触点就无法使用是什么原因导致的?
412浏览 2评论
CX3连接Camera修改分辨率之后,播放器无法播出camera的画面怎么解决?
433浏览 2评论
379浏览 2评论
使用stm32+cyw43438 wifi驱动whd,WHD驱动固件加载失败的原因?
905浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-19 21:00 , Processed in 1.234250 second(s), Total 88, Slave 72 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号