完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛扫一扫,分享给好友
|
|
|
|
|
|
|
Hi Yichao,
canGetData函数的返回值为0,不是代表失败,而是指你想要读取的那个MessageBox没有新的数据收到。 这个函数中有根据newdata寄存器来判断是否有新数据收到,newdata寄存器会在新数据被读取后自动清除对应位,所以你第二次再调用去读相同的MessageBox时会返回0了。 所以,建议你在调用这个函数前,先调用canIsRxMessageArrived函数来判断是否有新的数据收到,如果有的话,再调用canGetData。 Regards, Jay |
|
|
|
|
小Qhhui 发表于 2018-6-23 04:51 谢谢你的回答。 我在这之前会这么调用 while(!canIsRxMessageArrived())函数 然后再调用canGetData函数 但是,程序会显示一直卡在while语句那里。 |
|
|
|
|
|
Hi Yichao, 我看过你的程序了,是在CAN总线的初始化里面没设置正确。messagebox1 对应的CAN ID和你的u***转CAN发送出来的数据的ID符不一样,从而导致你的3137接收不到数据。 你可以通过修改HALCOGEN里面的ID来修改你的程序。或者是说做如下的改变。这样CAN节点就不会屏蔽任何ID,所有的CAN 信息都会接收。 canREG1->IF1MSK = 0xC0000000U | (((uint32)0x00000000U & (uint32)0x000007FFU) << (uint32)18U); Ken BR, KEN |
|
|
|
|
lining870815844 发表于 2018-6-23 05:09 你好,已经按照你写的代码解决问题了,但是刚刚ccs出现一个小问题,点击小虫子之后程序会自动执行,不知道原因在哪里。 |
|
|
|
|
|
Hi Yichao, 可以尝试把板子断电以后再重新插上,很有可能是板子在运行硬件检测的过程中,发现了问题,而默认的程序里面只设置了一个while(1)的循环来处理。 Ken BR, KEN |
|
|
|
|
|
我程序也卡在了while(!canIsRxMessageArrived())函数,看了你的我改了标识符掩码 |
|
|
|
|
kong19 发表于 2018-6-23 05:55 hello,时间比较久了,留一下你的邮箱吧,我抽空找一下发给你 |
|
|
|
|
kong19 发表于 2018-6-23 05:55 hello,你好,我这边找了一下,暂时没找到,你可以找楼上那个TI的同学帮忙看一下,抱歉 |
|
|
|
|
kong19 发表于 2018-6-23 05:55 我刚刚找到了,还有一些当时的邮件,可以转给你,你留个邮箱吧 |
|
|
|
|
只有小组成员才能发言,加入小组>>
600 浏览 0 评论
1653 浏览 0 评论
2095 浏览 0 评论
为啥BQ7693003DBTR芯片在和BQ769X0盒子通讯时收不到信号?
1542 浏览 0 评论
DSP 28027F 开发板 XDS100v2调试探针诊断日志显示了 Error -150 (SC_ERR_FTDI_FAIL)如何解决
1385 浏览 0 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
1794浏览 29评论
2820浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
1748浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
1666浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
1680浏览 13评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-14 09:35 , Processed in 0.798105 second(s), Total 93, Slave 76 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
1733