完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
各位高手,小弟正在开发DSP处理器与ARM处理器通过CAN总线通信的程序,在开发DSP处理器接收CAN消息的程序的时候,使用16~31邮箱作为接收邮箱。系统运行后,依次读取16~31编号的邮箱内容,发现未读出任何数据,请教其中的原因。部分代码如下: 主循环代码: while (1) { //Read from Receive mailboxes and begin checking for data */ for(j=16; j<32; j++) // Read & check 16 mailboxes { //mailbox_read(16); //从接收邮箱0中读出8字节消息负载和消息ID This funcreads the indicated mailbox data DELAY_US (200); mailbox_read(j); //mailbox_check(TestMbox1,TestMbox2,TestMbox3); //校验接收到的消息是否正确 Checks thereceived data printf ("n TestMbox1 = %02x n", TestMbox1); printf ("n TestMbox2 = %02x n", TestMbox2); } } 从邮箱中读出消息的函数: void mailbox_read(int16 MBXnbr) { volatilestructMBOX *Mailbox; Mailbox = &ECanbMboxes.MBOX0 + MBXnbr; TestMbox1 = Mailbox->MDL.all;// = 0x9555AAAn (n is the MBX number) TestMbox2 = Mailbox->MDH.all;// = 0x89ABCDEF (a constant) TestMbox3 = Mailbox->MSGID.all;// = 0x9555AAAn (n is the MBX number) } |
|
相关推荐
2个回答
|
|
我看不懂,帮顶
|
|
|
|
是不是没有赋给TestMbox1的值??
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
基于 DSP5509 进行数字图像处理中 Sobel 算子边缘检测的硬件连接电路图
1216 浏览 0 评论
568 浏览 0 评论
普中科技F28335开发板中,如何使用aic23播放由代码生成的正弦波
1653 浏览 0 评论
2420 浏览 1 评论
1012 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-10-16 04:55 , Processed in 0.550011 second(s), Total 77, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号