草庐IT

can-animate

全部标签

labview入门到出家10(进阶)——CAN通讯

​     讲完串口,这边再讲一个labveiw工控程序中比较常用的CAN通讯吧。很久没有写过CAN通讯的程序了,网上一搜就是什么现场总线,控制器局域网总线,然后一堆复杂的协议。在这里还是一样的,具体的底层协议不多说,大家自行百度哦(别问,问就是忘记了)。主要还是跟大家讲一下在labview应用端如何用代码实现通讯,一般是针对汽车产品,才会用到(做汽车仪表,音响导航类的公司就会经常用到)。大厂用的CAN盒,CAN卡大多是NI的,小小的一块东西就要几千上万,小公司一般是买国内的,比如周立功这些相对便宜的CAN工具,甚至有自己拿单片机开发CAN通讯工具的,这种稳定性可能不太好,会有丢包的现象,汽车

labview入门到出家10(进阶)——CAN通讯

​     讲完串口,这边再讲一个labveiw工控程序中比较常用的CAN通讯吧。很久没有写过CAN通讯的程序了,网上一搜就是什么现场总线,控制器局域网总线,然后一堆复杂的协议。在这里还是一样的,具体的底层协议不多说,大家自行百度哦(别问,问就是忘记了)。主要还是跟大家讲一下在labview应用端如何用代码实现通讯,一般是针对汽车产品,才会用到(做汽车仪表,音响导航类的公司就会经常用到)。大厂用的CAN盒,CAN卡大多是NI的,小小的一块东西就要几千上万,小公司一般是买国内的,比如周立功这些相对便宜的CAN工具,甚至有自己拿单片机开发CAN通讯工具的,这种稳定性可能不太好,会有丢包的现象,汽车

CAN总线简介

————————————————————————————————————————————————————————————————————————————————————————————————————————————————————CAN信号表示CAN总线采用不归零码位填充技术,也就是说CAN总线上的信号有两种不同的信号状态,分别是显性的(Dominant)逻辑0和隐形的(recessive)逻辑1,信号每一次传输完后不需要返回到逻辑0(显性)的电平。显性与隐性电平的解释:CAN的数据总线有两条,一条是黄色的CAN_High,一条是绿色的CAN_Low。当没有数据发送时,两条线的电平一样都为2

CAN总线简介

————————————————————————————————————————————————————————————————————————————————————————————————————————————————————CAN信号表示CAN总线采用不归零码位填充技术,也就是说CAN总线上的信号有两种不同的信号状态,分别是显性的(Dominant)逻辑0和隐形的(recessive)逻辑1,信号每一次传输完后不需要返回到逻辑0(显性)的电平。显性与隐性电平的解释:CAN的数据总线有两条,一条是黄色的CAN_High,一条是绿色的CAN_Low。当没有数据发送时,两条线的电平一样都为2

S32K148-CAN收发

最近在搞一个转换板开发,大概意思把CAN信号转换成SPI信号,方案有两种:1)通过硬件电路直接把信号的bit位一位一位移给两个集成芯片;2)通过MCU接收CAN信号,再把信号变量转换成SPI信号发送给其他集成芯片,从而主MCU通过转换板与其他芯片进行信息交互。目前我们采用的第二种方案,第二种方案实施较为简单,但是成本稍高。因为涉及到CAN的收发问题,刚好最近又在学习S32K148的芯片,顺便记录一下用SDK配置驱动和裸机配置的方法,有问题,欢迎大家指正。SDK配置步骤:1)CAN0初始化;主要包括一些外设时钟初始化2)配置RXBUFF;主要是RX_Message的标准帧,扩展帧,远程帧属性结构

S32K148-CAN收发

最近在搞一个转换板开发,大概意思把CAN信号转换成SPI信号,方案有两种:1)通过硬件电路直接把信号的bit位一位一位移给两个集成芯片;2)通过MCU接收CAN信号,再把信号变量转换成SPI信号发送给其他集成芯片,从而主MCU通过转换板与其他芯片进行信息交互。目前我们采用的第二种方案,第二种方案实施较为简单,但是成本稍高。因为涉及到CAN的收发问题,刚好最近又在学习S32K148的芯片,顺便记录一下用SDK配置驱动和裸机配置的方法,有问题,欢迎大家指正。SDK配置步骤:1)CAN0初始化;主要包括一些外设时钟初始化2)配置RXBUFF;主要是RX_Message的标准帧,扩展帧,远程帧属性结构

使用云服务器配置MariaDB环境,Navicat远程连接一直出错误代码 "2002 - Can't connect to server on '' (10060)"

使用腾讯云或者阿里云的服务器配置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远程连接一直出错误代码 "2002 - Can't connect to server on '' (10060)"

使用腾讯云或者阿里云的服务器配置MariaDB数据库环境的时候,用Navicat远程连接在Centos7的Linux上配置MariaDB数据库环境的时候一直出错误代码"2002-Can'tconnecttoserveron''(10060)"可能原因如下  1.是否有权限访问MariaDB数据库  2.MariaDB的服务为开启或已关闭  3.MariaDB正在不同的端口上运行,连接端口错误  4.Linux防火墙阻止了与MariaDB的连接  5.是否被云服务器防火墙拦截1.查看是否给root赋予了远程访问的权限,如果没有需要先给root访问权限安装好MariaDB后设置访问权限,命令是:g

CAN数据链路层的帧格式介绍——错误帧

前言在CAN协议中,CAN总线除了众多优秀的特点外,还具有错误监测功能、错误通知功能、和错误恢复功能、故障封闭功能。下面系统了解以下CAN总线上的错误帧。错误检测所有ECU均有可以检测错误的功能。错误通知检测出错误的ECU会立即通知其他ECU错误恢复正常发送消息的ECU,一旦检测出错误,会强制结束当前错误封闭CAN可以判断出错误的类型是总线上暂时的数据错误,还是持续的数据错误。当总线上发生持续数据错误时,可将引起此故障的单元从总线上隔离出去。错误状态的类型1.主动错误状态(ActiveError)主动错误状态是可以正常参加总线通信的状态,处于主动错误状态的ECU检测出错误时,输出主动错误标志。

CAN数据链路层的帧格式介绍——错误帧

前言在CAN协议中,CAN总线除了众多优秀的特点外,还具有错误监测功能、错误通知功能、和错误恢复功能、故障封闭功能。下面系统了解以下CAN总线上的错误帧。错误检测所有ECU均有可以检测错误的功能。错误通知检测出错误的ECU会立即通知其他ECU错误恢复正常发送消息的ECU,一旦检测出错误,会强制结束当前错误封闭CAN可以判断出错误的类型是总线上暂时的数据错误,还是持续的数据错误。当总线上发生持续数据错误时,可将引起此故障的单元从总线上隔离出去。错误状态的类型1.主动错误状态(ActiveError)主动错误状态是可以正常参加总线通信的状态,处于主动错误状态的ECU检测出错误时,输出主动错误标志。