什么是CAN总线?CAN是ControllerAreaNetwork的缩写(以下称为CAN),是ISO国际标准化的串行通信协议。在汽车车载产业中,出于对车载安全性、舒适性、方便性、低功耗、低成本等等的要求,各种各样的电子控制系统被开发了出来。由于这些电子控制系统之间通信所用到的数据类型、对可靠性的要求都不尽相同,而且由多条总线构成的情况也非常多,线束的数量也随着构成情况而增加。为适应“适当减少线束的数量”、“通过多个LAN,进行对大量数据间的高速数据通信”的需求,1986年德国电气商博世公司开发出了面向汽车行业的CAN通信协议。此协议推出之后,CAN通过ISO11898及ISO11519进行了
什么是CAN总线?CAN是ControllerAreaNetwork的缩写(以下称为CAN),是ISO国际标准化的串行通信协议。在汽车车载产业中,出于对车载安全性、舒适性、方便性、低功耗、低成本等等的要求,各种各样的电子控制系统被开发了出来。由于这些电子控制系统之间通信所用到的数据类型、对可靠性的要求都不尽相同,而且由多条总线构成的情况也非常多,线束的数量也随着构成情况而增加。为适应“适当减少线束的数量”、“通过多个LAN,进行对大量数据间的高速数据通信”的需求,1986年德国电气商博世公司开发出了面向汽车行业的CAN通信协议。此协议推出之后,CAN通过ISO11898及ISO11519进行了
讲完串口,这边再讲一个labveiw工控程序中比较常用的CAN通讯吧。很久没有写过CAN通讯的程序了,网上一搜就是什么现场总线,控制器局域网总线,然后一堆复杂的协议。在这里还是一样的,具体的底层协议不多说,大家自行百度哦(别问,问就是忘记了)。主要还是跟大家讲一下在labview应用端如何用代码实现通讯,一般是针对汽车产品,才会用到(做汽车仪表,音响导航类的公司就会经常用到)。大厂用的CAN盒,CAN卡大多是NI的,小小的一块东西就要几千上万,小公司一般是买国内的,比如周立功这些相对便宜的CAN工具,甚至有自己拿单片机开发CAN通讯工具的,这种稳定性可能不太好,会有丢包的现象,汽车
讲完串口,这边再讲一个labveiw工控程序中比较常用的CAN通讯吧。很久没有写过CAN通讯的程序了,网上一搜就是什么现场总线,控制器局域网总线,然后一堆复杂的协议。在这里还是一样的,具体的底层协议不多说,大家自行百度哦(别问,问就是忘记了)。主要还是跟大家讲一下在labview应用端如何用代码实现通讯,一般是针对汽车产品,才会用到(做汽车仪表,音响导航类的公司就会经常用到)。大厂用的CAN盒,CAN卡大多是NI的,小小的一块东西就要几千上万,小公司一般是买国内的,比如周立功这些相对便宜的CAN工具,甚至有自己拿单片机开发CAN通讯工具的,这种稳定性可能不太好,会有丢包的现象,汽车
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————CAN信号表示CAN总线采用不归零码位填充技术,也就是说CAN总线上的信号有两种不同的信号状态,分别是显性的(Dominant)逻辑0和隐形的(recessive)逻辑1,信号每一次传输完后不需要返回到逻辑0(显性)的电平。显性与隐性电平的解释:CAN的数据总线有两条,一条是黄色的CAN_High,一条是绿色的CAN_Low。当没有数据发送时,两条线的电平一样都为2
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————CAN信号表示CAN总线采用不归零码位填充技术,也就是说CAN总线上的信号有两种不同的信号状态,分别是显性的(Dominant)逻辑0和隐形的(recessive)逻辑1,信号每一次传输完后不需要返回到逻辑0(显性)的电平。显性与隐性电平的解释:CAN的数据总线有两条,一条是黄色的CAN_High,一条是绿色的CAN_Low。当没有数据发送时,两条线的电平一样都为2
最近在搞一个转换板开发,大概意思把CAN信号转换成SPI信号,方案有两种:1)通过硬件电路直接把信号的bit位一位一位移给两个集成芯片;2)通过MCU接收CAN信号,再把信号变量转换成SPI信号发送给其他集成芯片,从而主MCU通过转换板与其他芯片进行信息交互。目前我们采用的第二种方案,第二种方案实施较为简单,但是成本稍高。因为涉及到CAN的收发问题,刚好最近又在学习S32K148的芯片,顺便记录一下用SDK配置驱动和裸机配置的方法,有问题,欢迎大家指正。SDK配置步骤:1)CAN0初始化;主要包括一些外设时钟初始化2)配置RXBUFF;主要是RX_Message的标准帧,扩展帧,远程帧属性结构
最近在搞一个转换板开发,大概意思把CAN信号转换成SPI信号,方案有两种:1)通过硬件电路直接把信号的bit位一位一位移给两个集成芯片;2)通过MCU接收CAN信号,再把信号变量转换成SPI信号发送给其他集成芯片,从而主MCU通过转换板与其他芯片进行信息交互。目前我们采用的第二种方案,第二种方案实施较为简单,但是成本稍高。因为涉及到CAN的收发问题,刚好最近又在学习S32K148的芯片,顺便记录一下用SDK配置驱动和裸机配置的方法,有问题,欢迎大家指正。SDK配置步骤:1)CAN0初始化;主要包括一些外设时钟初始化2)配置RXBUFF;主要是RX_Message的标准帧,扩展帧,远程帧属性结构
使用腾讯云或者阿里云的服务器配置MariaDB数据库环境的时候,用Navicat远程连接在Centos7的Linux上配置MariaDB数据库环境的时候一直出错误代码"2002-Can'tconnecttoserveron''(10060)"可能原因如下 1.是否有权限访问MariaDB数据库 2.MariaDB的服务为开启或已关闭 3.MariaDB正在不同的端口上运行,连接端口错误 4.Linux防火墙阻止了与MariaDB的连接 5.是否被云服务器防火墙拦截1.查看是否给root赋予了远程访问的权限,如果没有需要先给root访问权限安装好MariaDB后设置访问权限,命令是:g
使用腾讯云或者阿里云的服务器配置MariaDB数据库环境的时候,用Navicat远程连接在Centos7的Linux上配置MariaDB数据库环境的时候一直出错误代码"2002-Can'tconnecttoserveron''(10060)"可能原因如下 1.是否有权限访问MariaDB数据库 2.MariaDB的服务为开启或已关闭 3.MariaDB正在不同的端口上运行,连接端口错误 4.Linux防火墙阻止了与MariaDB的连接 5.是否被云服务器防火墙拦截1.查看是否给root赋予了远程访问的权限,如果没有需要先给root访问权限安装好MariaDB后设置访问权限,命令是:g