1,can节点与总线脱离后怎么再回到节点

我不知道你用的什么的片子,我接触飞思卡尔比较多,早期的MSCAN是自动恢复机制,当总线错误计数慢256后,进入BUSoff状态。等待128个隐形位后自动尝试恢复。较高版本的MScan模块可以设置自动回复的时间,请仔细查阅datasheet,有问题请留言!
1.自带can控制器的那就在主控芯片编程2.不带can控制器的话,应该是独立的can控制器+主控芯片才能组成一个节点3.物理层的话还需要can总线驱动,用来变换电平。4.mcu+can控制器+can驱动器可以组成一个节点。

can节点与总线脱离后怎么再回到节点

2,关于CAN 总线控制器SJA1000的使用问题

嗯,是的!要先对寄存器 进行配置!比如你是工作在什么模式是BASIC还是PELI,你的总线速率是多少。节点地址等,都要提前的设定。! 你应该去研究下CAN操作的源码!这个有一个CAN自首发的实验,可以看看。
答:1、基本模式(basiccan)和扩展模式(pelican)的选择是通过设置“时钟分频寄存器cdr”的第7位来确定的。这两种模式的“主要的”区别是basiccan仅支持11位的id,pelican通过选择标准帧和扩展帧分别具有13位的id和29位的id。2、两者晶振可以互不相干,一个非常实用的建议是请将sja1000的晶振采用16m,方便利用现有的资料和波特率计算工具来计算波特率,避免用其他频率自己来算,对于初学,算波特率是一个稍微复杂的事情。3、采样率如果没有猜错的话说的还是波特率计算当中的事情。用了16m就省了。做通了再慢慢去理解都ok。4、第一个问题中已经有答案 补充问题回复:关于复位模式:复位模式是软件的(sja1000的复位引脚控制的是硬件复位),通过置位模式寄存器的第0位(mod.0)进入复位模式 ,清0则进入正常工作模式。(只要通过改变该位就可以实现两种模式的切换)在复位模式时候该节点的can总线是关闭的,部分控制器参数需要在这个模式下才能进行初始化,而在正常模式时候就不能被修改。当总线出错关闭时候也会自动进入复位模式,这时候需要清除错误,并恢复到正常工作模式。

关于CAN 总线控制器SJA1000的使用问题

3,切求助STM32F042 CAN总线驱动初始化不成功

can总线的接收程序都是放在中断里面的,下面是我的一段接收程序希望对你有启发 void USB_LP_CAN1_RX0_IRQHandler(void) //CAN_FIFO0接收中断   PCI,PnpISA,SCSI 和USB。其他的总线驱动程序由IHV 和OEM 提供。总线驱动程  序是必须的驱动程序;在一个机器里,每一类总线有一个总线驱动程序。如果机器里有不止一个同类的总线,则一个总线驱动程序能服务不止一个总线。  总线驱动程序的主要任务是:枚举其总线上的设备响应 PnP 和电源管理IRP总线的多路访问(对某些总线)总体上管理其总线上的设备  在枚举过程中,一个总线驱动程序识别它的总线上的设备并为它们产生设备对象。总线驱动程序用来标识相连接的设备方法取决于特别的总线。总线驱动程序代表其总线上的设备来执行一定的操作,包括访问设备寄存器来物理地改变设备的电源状态。例如,当设备休眠时,总线驱动程序设置设备寄存器来给设备适当的电源状态。  但要注意,总线驱动程序不能够处理其总线上的设备的读和写请求,一个设备的读和写请求由设备功能驱动程序处理(看1.4.1.2 部分)。仅仅当设备以原始模式使用时,父总线驱动程序处理设备的读和写。总线驱动程序为控制器,适配器,或者电桥起着功能驱动程序的作用,并因此为控制器,适配器,或者电桥管理设备电源策略。  总线驱动程序能够作为一个驱动程序/小驱动程序对来执行,即以SCSI 端口/微端口对驱动一个SCSIHBA(主机总线适配器)的方法。在这样的驱动程序对里,小驱动程序与次一级驱动程序(它是一个DLL)相链接。
……

切求助STM32F042 CAN总线驱动初始化不成功


文章TAG:装载机  如何  重启  can总线  装载机如何重启can总线  
下一篇