logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

[嵌入式linux] memset操作device mem map的空间出现bus error

kernel driver中用pgprot_noncached映射一片DMA内存到user space。在应用程序中通过memeset清零时,产生Bus error.vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);....memset(*Logical,0,Size);原因:在部分平台上,memset不能操作device映

[CANFD] 高波特率下收发器延时的处理机制-Transceiver delay compensation

CANFD数据段支持可变速率,最高可达12Mb/s。我们知道CAN控制器会将收发器RX pin的数据采样接收,用于判断TX pin的数据是否被成功发送,以便实现冲裁判断和错误处理。RX的回环检测是保证CAN总线可靠性的基础技术。但是,CAN收发器的信号转换都是有时延的,也就是说从TX出发到达CAN bus,以及从CAN bus返回RX都是延时的,在CAN2.0时代,收发器的延时在适合的采样点设置下

#单片机#自动驾驶
[CAN BUS]CAN分析仪(或其他CAN设备)的最大接收能力测试方法---CAN 接收压力测试(每秒最大接收帧数)

CAN通讯设备,尤其对于CAN适配器(各种USB/网络/PCIe转CAN设备)CAN记录仪、分析仪的一个很重要的指标就是每秒CAN帧的最大接收数量。这个指标关系到一个设备在高负载网络是否存在丢帧的情况,如何测试每秒接收帧数也就成了评估一个CAN设备的性能的关键。本测试方案适用于绝大多数CAN接收设备,本文以ZLG的USB CAN盒和开源USB-CAN CANable为例进行测试。测试设备:待测CA

#物联网
[嵌入式linux]将linux板卡虚拟为USB网卡设备(Ethernet Gadget)

kernel menuconfig-> Device Drivers ->USB support -> USB Gadget Support建议最好选成M,作为内核驱动模块,便于与其他Gadget驱动共存<M>USB Gadget Drivers<M>Ethernet Gadget (with CDC Etherne...

[嵌入式linux]RTL8111/RTL8168网卡内核驱动安装

RTL8111/RTL8168的驱动在内核中没有找到,网上查了一下也可以用RTL8169的驱动内核路径下执行make menuconfig->Device Drivers ->Network device support ->Ethernet driver support[*]Realtek devices<M>Realtek 8169 g...

[CAN BUS] USB-CAN adpter / USB转CAN 开源项目推荐(CANable candlelight cangaroo)

照理来说,USB-CAN这种东西应该已经被做的烂大街的工具,国内居然没有一个拿得出手的开源方案。淘宝上各种虚拟串口方案、替换dll兼容某立功软件的各种方案....价格都很低,性能和可靠性嘛.......就不多说了。这里推荐一个国外的开源工具CANable,ta有完全开源的软硬件及上位机支持,支持windos和linuxStock can并且都免驱哦。且支持Python。CANable实际上应该是3

[PCIe] linux 下测试ASPM

1. kernel config & driver.config - Linux/arm64 5.4.31 Kernel Configuration> Device Drivers > PCI support打开 PCI Express ASPM control和Debug PCI Express ASPM (会在sys_fs中添加aspm的控制node,方便手动修改进行测试)

#linux
[嵌入式linux]PCIe 热拔插(rescan)

linux下可通过/sys/bus/pci/devices/0000\:[bus number]\:[device number].[function number]/ 目录下的节点进行热拔插操作。板子上电前PCIe插槽有一块NVME的固态硬盘[0.198515] pci 0000:00:00.0: [16c3:abcd] type 01 class 0x060400[...

[PCIe]LTSSM与电源管理

1. LTSSMLTSSM全称是Link Training and Status State Machine,有以下11个状态:Detect, Polling, Configuration, Recovery, L0, L0s, L1, L2, Hot Reset, Loopback, Disable这些状态分为5大类:1、链路训练状态(Link Training State):D...

#linux#算法#自动驾驶
CAN/CANFD 总线负载率及计算(源码和工具)

CAN BUS的总线负载率是CAN总线架构协议设计时的一个重要的指标。一般建议负载率峰值不要高于80%,平均负载率不要超过50%。当然这只是一般建议,具体根据使用场景和系统设计而定。负载率定义关于CAN负载率的定义和计算,很多文章写得不求甚解,用帧数量来计算负载率是非常不正确的做法。其实总线负载率的定义其实是非常简单明了的:总线负载率=总线每秒上传输的实际bit数量/总线波特率*100%原理非常简

    共 22 条
  • 1
  • 2
  • 3
  • 请选择