http://blog.csdn.net/flydream0/article/details/8161418

CAN总线在嵌入式Linux下驱动程序的实现

http://www.21ic.com/app/embed/200911/49216.htm

Socke Can设置波特率

找到其中一个方法使用IP命令,BUSYBOX制作的IP好像不支持对socketcan的设置,必须要自己去下载iproute2的源代码自己编译。得到IP命令,拷贝到自己系统的bin目录下。
ip link set can0 type can bitrate 250000
设置CNA0的波特率为250K,在设置前需要先把CAN0关闭了,ip set can0 down
可以结贴了,!!!!!!!!!!!!

linux can 总线socket接口测试使用,解释了为什么会从字符设备升级到socket设备

http://blog.chinaunix.net/uid-26119896-id-3452315.html

http://www.cnblogs.com/zym0805/p/4345175.html

dmesg | grep can

root@imx_mfgtools_nogpu:~# dmesg | grep can
can-3v3: 3300 mV
flexcan 2090000.can: device registered (reg_base=a0968000, irq=142)
flexcan 2094000.can: device registered (reg_base=a0970000, irq=143)
can: controller area network core (rev 20120528 abi 9)
can: raw protocol (rev 20120528)
can: broadcast manager protocol (rev 20120528 t)
can: netlink gateway (rev 20130117) max_hops=1
can-3v3: disabling

ifconfig -a

can0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          NOARP  MTU:16  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:10
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:142

can1      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          NOARP  MTU:16  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:10
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:143

ip -details link show can0

root@imx_mfgtools_nogpu:~# ip -details link show can0
2: can0: <NOARP,ECHO> mtu 16 qdisc noop state DOWN mode DEFAULT group default qlen 10
    link/can  promiscuity 0
    can state STOPPED (berr-counter tx 0 rx 0) restart-ms 0
          bitrate 0 sample-point 0.000
          tq 0 prop-seg 0 phase-seg1 0 phase-seg2 0 sjw 0
          flexcan: tseg1 4..16 tseg2 2..8 sjw 1..4 brp 1..256 brp-inc 1
          clock 30000000

ip -details link show can0  // 查看
ifconfig can0 down  // 关闭
ip link set can0 up type can // 打开
 
./candump can0  // 接受数据
./cansend   can0 -e 0x11 0x22 0x33 0x44 0x55 0x66 0x77 0x88  // 发送数据

Linux Canbus调试笔记的更多相关文章

  1. Apollo2.5 CANBUS调试笔记(测试版)

    前言:CANBUS是Apollo需要根据你的底盘写代码的地方,感觉也是Apollo最难调试的部分.这部分首先要选好CAN卡,因为不是Apollo推荐的CAN卡,驱动程序和对应接口,可能都需要自己调整, ...

  2. RC 522模块在LINUX平台调试笔记

    硬件平台: 1 主控:SMDK Exynos4412 POP S5M8767A 2 RFID模块:君盾集团提供的RC522模块 3 通信接口:SPI 软件平台:Android ICS & ke ...

  3. linux 下camera调试笔记【转】

    转自:https://blog.csdn.net/kevinx_xu/article/details/8801931 linux camera调试 2011-10-23 10:43:37|  分类:  ...

  4. storysnail的Linux串口编程笔记

    storysnail的Linux串口编程笔记 作者 He YiJun – storysnail<at>gmail.com 团队 ls 版权 转载请保留本声明! 本文档包含的原创代码根据Ge ...

  5. linux内核调试指南

    linux内核调试指南 一些前言 作者前言 知识从哪里来 为什么撰写本文档 为什么需要汇编级调试 ***第一部分:基础知识*** 总纲:内核世界的陷阱 源码阅读的陷阱 代码调试的陷阱 原理理解的陷阱 ...

  6. linux内核编程笔记【原创】

    以下为本人学习笔记,如有转载请注明出处,谢谢 DEFINE_MUTEX(buzzer_mutex); mutex_lock(&buzzer_mutex); mutex_unlock(& ...

  7. Linux实战教学笔记17:精简shell基础

    第十七节 精简shell基础 标签(空格分隔): Linux实战教学笔记 1,前言 1.1 为什么学习shell编程 Shell脚本语言是实现Linux/UNIX系统管理及自动化运维所必备的重要工具, ...

  8. Linux实战教学笔记18:linux三剑客之awk精讲

    Linux三剑客之awk精讲(基础与进阶) 标签(空格分隔): Linux实战教学笔记-陈思齐 快捷跳转目录: * 第1章:awk基础入门 * 1.1:awk简介 * 1.2:学完awk你可以掌握: ...

  9. Linux实战教学笔记13:定时任务补充

    第十三节 定时任务补充 标签(空格分隔): Linux实战教学笔记 ---[更多资料点我查看][1] 1,生产环境常用Crontab专业实例 1.1书写crontab定时任务多个基本要领 1.1.1 ...

随机推荐

  1. java lambda表达式学习笔记

    lambda是函数式编程(FP,functional program),在java8中引入,而C#很早之前就有了.在java中lambda表达式是'->',在C#中是‘=>’. 杜甫说:射 ...

  2. 如何使用国内源部署Ceph?

    由于网络方面的原因,Ceph的部署经常受到干扰,通常为了加速部署,基本上大家都是将Ceph的源同步到本地进行安装.根据Ceph中国社区的统计,当前已经有国内的网站定期将Ceph安装源同步,极大的方便了 ...

  3. java中的数据结构 --- 集合

    集合类在Java.util包中!  在java中常用的是Set,Map,和List. 容器和迭代器 链表 集 映射

  4. 【转】c# 调用windows API(user32.dll)

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.R ...

  5. 素数筛 poj 3518

    给你一个n 求包括n的一个非素数区间有多长 +1输出 #include<stdio.h> #include<string.h> #include<algorithm> ...

  6. 概率 light oj 1248

    t组样例 n<100010 dp[i]  从i翻到n面的期望 接下来翻 可能是i面已经有的 也可能是n-i面没有的 dp[i]=i/n*(dp[i]+1)+(n-i)/n*(dp[i+1]+1) ...

  7. lucene-查询query->RangeQuery在某一范围内搜索

    有时用户会需要一种在一个范围内查找某个文档,比如查找某一时间段内的所有文档,此时,Lucene提供了一种名为RangeQuery的类来满足这种需求. RangeQuery表示在某范围内的搜索条件,实现 ...

  8. Mybatis 保错:Mapped Statements collection already contains value for jaxrs.dch.projects.y

    原因是mapper.xml中定义了相同的两个方法

  9. RunLoop的深入了解

    RunLoop 是 iOS 和 OS X 开发中非常基础的一个概念,这篇文章将从 CFRunLoop 的源码入手,介绍 RunLoop 的概念以及底层实现原理.之后会介绍一下在 iOS 中,苹果是如何 ...

  10. python 列表与元组的操作简介

    上一篇:Python 序列通用操作介绍 列表 列表是可变的(mutable)--可以改变列表的内容,这不同于字符串和元组,字符串和元组都是不可变的.接下来讨论一下列表所提供的方法. list函数 可以 ...