CAN review

本人最早在06、07年开始搞CAN总线,采用的是RM9200+SJA1000和LPC2100通信。 当时CAN有CANOpen和DeviceNet 2种架构之分。我们采用了开源的lincan-0.3.2,把CAN注册为一个char设备,然后通过read/write函数进行CAN报文的接收和发送。 最近玩了freescale的i.MX6UL,这颗CPU本身具备2路CAN总线。 查了下当前CAN的支持,发现从2.6.25开始,CAN已经被引入到linux内核中,并被作为一个socket设备进行管理。 工具 由于CAN被整合进network,所以需要新的ip才能支持,点击进官网。或者可以使用GIT同步代码: [crayon-698ef249bedd2409437010/] 常用的CAN命令 查看可设置的配置参数: [crayon-698ef249bedd5664654061/] 设置CAN波特率为1Mbps: [crayon-698ef249bedd7977953771/] 查看CAN的配置: [crayon-698ef249bedd8271760896/] 启动/停止CAN: [crayon-698ef249bedd9722149835/] 或者 [crayon-698ef249bedda955371375/] 接收CAN报文: [crayon-698ef249beddb938289852/] 发送CAN报文 [crayon-698ef249beddc939205027/] 例如使用通道CAN1发送CAN ID为1,带有5个数据(0x01 0x23 0x45 0x67 0x89)的报文: [crayon-698ef249beddd916993463/]…

Freescale DPAA tips

structs struct qm_fd - Frame Descriptor functions dma_addr_t qm_fd_addr(const struct qm_fd *) 获得fd的物理地址  

Yocto tips

查找某个包的源码位置: [crayon-698ef249beeec916997328/] 编译 [crayon-698ef249beeee974961809/] 编译Standalone编译器 [crayon-698ef249beef0110917342/]

i.MX交叉编译openssl

freescale的i.MX采用了yocto的框架编译。提取toolchain并安装后,在toolchain的安装目录有一个脚本可以用来设置交叉编译的环境变量。 ISSUE 但是当使用此环境变量编译openssl后,会出现以下问题: [crayon-698ef249bef87745142724/] FIXes 此时可以通过手动配置编译环境解决: 重新开一个shell 设置交叉编译器目录到PATH [crayon-698ef249bef8a406792703/] 采用通用32位配置Autoconf [crayon-698ef249bef8b416519561/] 修改Makefile中的CC为交叉编译器的GCC,注意不要忘了后面的参数 [crayon-698ef249bef8c307795143/] 编译 [crayon-698ef249bef8d556398797/] 参考 http://berniechenopenvpn.blogspot.com/2015/10/wpasupplicant-am335x.html
端午国庆自驾游

端午国庆自驾游

2015/9/26号出发,经沈阳、27号在沈阳休息游玩一天,到长白山西坡,在到长白山北坡,经蛟河到长春,在回沈阳休息,最后经盘锦到北戴河小住,4号回京。 总计5个大人,1个小孩,话费11K - 12K。    

车到加油记录

现在都是撸互联网的羊毛啊,各种烧钱 特记录下车到加油的使用情况 时间 实际费用 优惠费用 2015/11/24 228 12 2015/11/4 247.6 10 2015/10/8 164 51 2015/9/25 113 17 2015/9/23 178 22 2015/9/16 221 30