共2条
1/1 1 跳转至页

问
我现在没做自收自发。
我现在就想知道数据有否发出成功(SJA的TXD和RXD没连接),调试了程序。
在发送数据后读状态寄存器,读到0X82,即发送完成和总线错误。我想问,没连接TXD和RXD会出现总线错误吗?
还有一问。我调试时采用的是自发自收命令,有中断信号产生。一旦我用单纯的发送的命令,就没中断信号了,不知道为什么?
答 1: 回复主题:请问自收自发问题能把你的自收发程序贴来看看吗? 答 2: CAN自收发必须要收发器,没连接TXD和RXD会出现总线错误. 答 3: 再问zlgCAN我调试时采用的是自发自收命令(0X12),有中断信号产生。一旦我用单纯的发送命令(0X01),就没中断信号了,不知道为什么? 答 4: re自收发没有中断才不正常 答 5: 人家说的就是自收发有中断,单纯发送没有中断啊 答 6: 发送怎么还是总线错误我把收发模块接上去了,怎么还是收到0X82,即总线错误和发送完成? 答 7: 再问zlgCANzlgCAN:一般总线错误是有哪几种情况造成的?
还有自收发不是该有接收中断吗?是不是总线错误造成接收中断没有 答 8: re明确一点,自收发成功才有接收中断,自收发错误一样会出现总线错误中断 答 9: 谢谢stars_txx再问stars_txx。我定义如下:
#define REG_MODE_DATA 0x0C // 模式控制器: 单滤波器、自检测模式
#define T_R_CMD 0x12 // 产生一次自接收性质的报文发送,发送错误时不会重发
// 中断控制: 总线错误中断、发送中断、接收中断
SJA1000_WRITE(REG_INTENABLE,REG_INTENABLE_DATA); // 访问中断使能控制
然后发送,
TempData = SJA1000_CMD_PRG(T_R_CMD); // 产生一次自接收性质的报文发送,发送错误时不会重发
但就是收到0X82,即总线错误和发送完成。请帮我分析下可能存在的原因,谢谢! 答 10: re有几点必须注意,当设置模式寄存器的MOD.1~MOD.3时,必须在复位模式下进行。0x12并不是自收发请求正确的格式,0x12把睡眠位和停止位同时置位,这个我没试过所以,我不知道会出现什么后果正确应为0x03。要自收发成功,验收过虑最好设置为全接收方式 答 11: 一点看法各位:
我认为自发自收功能适用于调试软件逻辑功能是否正常的,
不需要在CANh,CANl接实际的电平。
答 12: re wangying80建议你去把CANh,CANl短路再进行自收发测试,看看出不出错,而不要想当然的说 答 13: 我也做不了自发自收我用的是82C250驱动器,用的内置CAN控制器的MCU,我想问要实现自发自收是不是要对82C250写一个什么控制字才行啊? 答 14: re82C250为电平转换器,本身不可编程
我现在就想知道数据有否发出成功(SJA的TXD和RXD没连接),调试了程序。
在发送数据后读状态寄存器,读到0X82,即发送完成和总线错误。我想问,没连接TXD和RXD会出现总线错误吗?
还有一问。我调试时采用的是自发自收命令,有中断信号产生。一旦我用单纯的发送的命令,就没中断信号了,不知道为什么?
答 1: 回复主题:请问自收自发问题能把你的自收发程序贴来看看吗? 答 2: CAN自收发必须要收发器,没连接TXD和RXD会出现总线错误. 答 3: 再问zlgCAN我调试时采用的是自发自收命令(0X12),有中断信号产生。一旦我用单纯的发送命令(0X01),就没中断信号了,不知道为什么? 答 4: re自收发没有中断才不正常 答 5: 人家说的就是自收发有中断,单纯发送没有中断啊 答 6: 发送怎么还是总线错误我把收发模块接上去了,怎么还是收到0X82,即总线错误和发送完成? 答 7: 再问zlgCANzlgCAN:一般总线错误是有哪几种情况造成的?
还有自收发不是该有接收中断吗?是不是总线错误造成接收中断没有 答 8: re明确一点,自收发成功才有接收中断,自收发错误一样会出现总线错误中断 答 9: 谢谢stars_txx再问stars_txx。我定义如下:
#define REG_MODE_DATA 0x0C // 模式控制器: 单滤波器、自检测模式
#define T_R_CMD 0x12 // 产生一次自接收性质的报文发送,发送错误时不会重发
// 中断控制: 总线错误中断、发送中断、接收中断
SJA1000_WRITE(REG_INTENABLE,REG_INTENABLE_DATA); // 访问中断使能控制
然后发送,
TempData = SJA1000_CMD_PRG(T_R_CMD); // 产生一次自接收性质的报文发送,发送错误时不会重发
但就是收到0X82,即总线错误和发送完成。请帮我分析下可能存在的原因,谢谢! 答 10: re有几点必须注意,当设置模式寄存器的MOD.1~MOD.3时,必须在复位模式下进行。0x12并不是自收发请求正确的格式,0x12把睡眠位和停止位同时置位,这个我没试过所以,我不知道会出现什么后果正确应为0x03。要自收发成功,验收过虑最好设置为全接收方式 答 11: 一点看法各位:
我认为自发自收功能适用于调试软件逻辑功能是否正常的,
不需要在CANh,CANl接实际的电平。
答 12: re wangying80建议你去把CANh,CANl短路再进行自收发测试,看看出不出错,而不要想当然的说 答 13: 我也做不了自发自收我用的是82C250驱动器,用的内置CAN控制器的MCU,我想问要实现自发自收是不是要对82C250写一个什么控制字才行啊? 答 14: re82C250为电平转换器,本身不可编程
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【EEPW电子工程师创研计划】技术变现通道已开启~ | |
发原创文章 【每月瓜分千元赏金 凭实力攒钱买好礼~】 | |
【EEPW在线】E起听工程师的声音! | |
“我踩过的那些坑”主题活动——第001期 | |
高校联络员开始招募啦!有惊喜!! | |
【工程师专属福利】每天30秒,积分轻松拿!EEPW宠粉打卡计划启动! | |
送您一块开发板,2025年“我要开发板活动”又开始了! | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
分享汽车通信和多媒体总线结构被打赏20分 | |
【我踩过的那些坑】结构堵孔导致的喇叭无声问题被打赏50分 | |
NUCLEO-U083RC学习历程38+串口通过队列的方式输出两个字符串被打赏20分 | |
【我踩过的那些坑】分享一下调试一款AD芯片的遇到的“坑”被打赏50分 | |
电流检测模块MAX4080S被打赏10分 | |
【我踩过的那些坑】calloc和malloc错误使用导致跑飞问题排查被打赏50分 | |
分享电控悬架的结构与工作原理(一)被打赏20分 | |
多组DCTODC电源方案被打赏50分 | |
【我踩过的那些坑】STM32cubeMX软件的使用过程中的“坑”被打赏50分 | |
新手必看!C语言精华知识:表驱动法被打赏50分 |