- 博客(169)
- 资源 (11)
- 收藏
- 关注
原创 modprobe: FATAL: Module xxx.ko not found in directory /lib/modules/$(uname -r)
如果遇到此错误,首先要检查要加载的驱动是否已经存在与系统默认驱动路径/lib/modules/$(uname -r) 下面,确认拷贝完成后,需要在加载模块之前建立该模块的依赖关系。也即必须用 depmod 来更新一下/lib/modules/$(uname -r)/modules.dep 文件。之后再执行指令 modprobe xxx.ko 就可以了。具体步骤:root@ubuntu:
2017-04-11 15:07:56 17718 10
原创 Altium Designer原理图库引脚名字添加上划线
双击引脚在输入名字的时候每一个字母后面加上反斜杠 '\' 就可以了。Exp:R\S\T\
2017-04-11 10:53:26 24948 5
原创 Altium Designer如何画虚线
流程如下:在原理图上右键 --> Place --> Drawing Tools --> Line,在画线的时候按 Tab 键,然后将 Line Style 改为 Dashed,就可以画虚线了。
2017-04-11 10:49:52 15003
原创 Linux 如何加载并口/打印口驱动
实际上Linux是自带并口驱动的,因此不需要再使用第三方驱动编译加载了。设置并口的具体步骤如下:rmmod lprmmod parport_pcinsmod /usr/lib/modules/$(shell uname -r)/kernel/drivers/parport/parport_pc io=0xb000 irq=10或者 modprobe parport_pc io=0...
2017-03-30 14:06:45 4179 2
原创 CH340芯片选型
CH340是一个USB总线的转接芯片,其中转串口的应用场合居多,且市场占有率很高。CH340芯片根据不同的功能可以实现为USB转串口、打印口和IrDA红外接口,因此选型的时候就首先需要根据功能加以区分了。如下表所示:(以下数据更新至2019年5月)功能划分功能列表 芯片型号 USB转串口 CH340G/CH340T/CH340C/CH340N/CH340K/CH340E/C...
2017-03-30 10:56:47 16839 2
原创 CH340电路设计
最近选用USB转串口芯片进行开发调试,在调研了各主流芯片的之后,觉得 CH340 系列的性价比很高,而且技术支持在国内,如果遇到问题解决起来也会方便很多。但是 CH340 / CH341 型号很多,具体选型就就该结合需求和芯片手册了,关于选型也可以参考我的其他博文,在这里我选择的型号是 CH340g。去官网地址:江苏沁恒股份有限公司 http://www.wch.cn/ 然后选择“在线下载”,
2017-03-27 10:56:34 13258
原创 openwrt gpio控制与使用
查看datasheet和确认GPIO复用引脚scheme通过查看mt7628 datasheet可以明确复用关系:在这里我以I2S对应的GPIO引脚为例。查看 mt7628an.dtsi 文件中对gpio的注册$(TOPDIR)假定为宿主机上 OpenWrt 的编译目录。在$(TOPDIR)/target/linux/ramips/dts/mt7628an.dt
2017-03-23 10:42:42 9986 1
原创 MT7628如何控制GPIO
查看datasheet和确认GPIO复用引脚scheme通过查看mt7628 datasheet可以明确复用关系:在这里我以I2S对应的GPIO引脚为例。查看 mt7628an.dtsi 文件中对gpio的注册$(TOPDIR)假定为宿主机上 OpenWrt 的编译目录。在$(TOPDIR)/target/linux/ramips/dts/mt7628an.dtsi
2017-03-23 10:35:45 9840 3
原创 学习java的经典书籍
《java编程思想》《Java编程思想(第4版)》书共22章,包括操作符、控制执行流程、访问权限控制、复用类、多态、接口、通过异常处理错误、字符串、泛型、数组、容器深入研究、Iava’UO系统、枚举类型、并发以及图形化用户界面等内容。这些丰富的内容,包含了Java语言基础语法以及高级特性,适合各个层次的Java程序员阅读,同时也是高等院校讲授面向对象程序设计语言以及Java语言的绝佳教材和参考
2017-03-22 08:43:22 1142
原创 Linux文件去掉^M
1. 直接用 vim 编辑器打开文件,然后把字符串 "^M" 替换成空的就可以了。命令如下:输入 : 号进入底行模式,然后输入: %s/\r//g ,再 Enter 就可以了。2. 使用现成的工具。命令如下:dos2unix hello.c 新系统如果没有这个工具,可以安装:apt-get install tofrodos使用介绍:Use "fromdos"
2017-03-21 21:11:22 712
原创 与朱元思书
风烟俱净,天山共色。从流飘荡,任意东西。自富阳至桐庐一百许里,奇山异水,天下独绝。水皆缥碧,千丈见底。游鱼细石,直视无碍。急湍甚箭,猛浪若奔。 夹岸高山,皆生寒树,负势竞上,互相轩邈,争高直指,千百成峰。泉水激石,泠泠作响;好鸟相鸣,嘤嘤成韵。蝉则千转不穷,猿则百叫无绝。鸢飞戾(天者,望峰息心;经纶世务者,窥谷忘反。横柯上蔽,在昼犹昏;疏条交映,有时见日。
2017-03-09 16:48:38 1119
原创 调用 usb_control_msg 返回错误值 -32, Broken pipe, 对 hidraw write时 返回错误值 -32, Broken pipe
如题,使用 libusb 对 hid 类设备进行控制传输的时候,有时会遇到此错误,但是实际上传输是成功的,用usb分析仪等工具和程序中验证,比如发送数据成功后,让设备返回给主机,主机读取数据后验证数据正确性。由此看来,该错误是内核返回出现了错误,并不是指实际的通讯异常。现在在使用其他HID类设备在进行测试,发现有些HID类设备不会出现类似的报错,因此写程序模拟该设备通讯过程,尝试与主机通讯,依
2017-02-28 20:11:07 3213 6
原创 Libusb开发教程<一> 安装
1. 从官网下载需要使用的离线资源包:进入 libusb.org下载 libusb-1.0.9.tar.bz2 下载 libusb-compat-0.1.4.tar.bz22. 实验平台OS: Ubuntu16.04Kernel: 4.4.03. 安装过程 拷贝步骤一中的离线包到 Linux 系统目录,一般拷贝至 /opt 目录,我在 PC 下新建了一个 Tool
2017-02-25 16:55:25 4605 3
原创 Linux 内核打印级别
printk的打印级别#define KERN_EMERG "" /* system is unusable */#define KERN_ALERT "" /* action must be taken immediately */#define KERN_CRIT "" /* critical conditions */#define KERN_ERR "" /* er
2017-02-25 15:00:42 1179
原创 HID设备类详解
HID设备类Base Class 03h (HID – Human Interface Device)This base class is defined for devices that conform to the HID Device Class Specification found on the USB-IF website. That specification d
2017-02-24 11:46:11 2544 1
原创 USB 设备类代码表
USB Class CodesUSB defines class code information that is used to identify a device’s functionality and to nominally load a device driver based on that functionality. The information is contained in
2017-02-24 11:27:03 3880
原创 硬件通讯协议的数据传输方式
硬件协议数据传输的包含要素主要为:物理介质,编码方式,通讯协议,传输特点。下面就对常见的硬件通讯协议进行简单总结。1. UARTLSB First 2. USBLSB First,小端传输3. SPIMSB First4. IICMSB First5. 网络大端传输
2017-02-22 10:10:09 4863
转载 USB基础与重点梳理—关于USB的问题
Q1. USB的传输线结构是如何的呢?A1: 一条USB的传输线分别由地线、电源线、D+、D-四条线构成,D+和D-是差分输入线,它使用的是3.3V的电压(注意哦,与CMOS的5V电平不同),而电源线和地线可向设备提供5V电压,最大电流为500MA(可以在编程中设置的,至于硬件的实现机制,就不要管它了)。Q2. 数据是如何在USB传输线里面传送的?A2: 数据在USB线里传送是
2017-02-21 23:58:01 811
原创 TCPDUMP/LIBPCAP 3-PCAP 中文手册(1)
SYNOPSIS#include DESCRIPTIONPCAP提供为抓包系统提供高级接口。网络上的所有数据包,即使是发往其他主机的数据包,都可以通过这种机制访问。它还支持将捕获的数据包保存到“savefile”,和从“savefile”中读取数据包。Opening a capture handle for reading调用 pcap_create()
2017-02-21 22:30:18 1505
转载 各类总线传输速率
1. USB总线USB1.1:-------低速模式(low speed):1.5Mbps-------全速模式(full speed): 12MbpsUSB2.0:向下兼容。增加了高速模式,最大速率480Mbps。-------高速模式(high speed): 25~480Mbps USB3.0:向下兼容。-------super speed :理论上最
2017-02-20 18:30:10 5651
原创 Linux termios 串口编程之 VTIME与VMIN
在Linux TTY编程时会涉及到 termios 结构,其中c_cc数组里面,有 VTIME 和 VMIN 下标。关于他们的使用经常令人迷惑,查阅了不少博客,上面的讲解也有不少误区。在这里重新对这二者关系进行介绍。结合实验会令人记忆更深刻。VTIME 和 VMIN 的值只能用于非标准模式,两者结合起来共同控制对输入的读取。此外,两者结合使用还能控制在一个程序试图读取与一个终端关联的文件描
2017-02-17 13:37:09 4945
原创 虚拟机找不到/mnt/hgfs挂载目录
如果在安装好 VMware Tools 并在设置里面设定好共享目录之后仍然找不到 /mnt/hgfs 默认挂载目录,那么尝试以下步骤:1. 确认VMware Tools 和共享目录设定已经完成:2. 如果操作结果如上所示,那么表示前提条件准备充足啦,因为
2017-02-10 22:35:10 41108 27
原创 The path "" is not a valid path to the xx-generic kernel headers
如果在安装 VMware Tools 的过程中弹出该选项,按照以下步骤进行操作:1. 检查系统内是否已经安装好相应的 kernel headers,比如我的系统:如果没有该目录的话,那么需要安装以下资源:sudo apt-get install build-essential linux-headers-$(uname -r)2. 检查并安装完成后,进入管理
2017-02-10 16:36:25 840
原创 2016我的程序员总结
作为一个程序员从毕业至今都没有好好写过总结,意识感觉做程序员的履历中没有什么发光点可写,二是因为慵懒。我这个人从小到大都不喜欢写总结,若是以前还好,思维活跃,经常思考问题和人生。可随着年龄增长,反应和思考能力下降以及更多的琐事需要去做,思考总结的时间是越来越少。可正如大部分优秀的人所说,只有总结与思考才能让自己每时每刻更清楚自己的近期和远期目标,才能有计划的去完成未来的规划。13年毕业,不
2017-01-23 10:34:34 1036 4
原创 课文《小站》
小站--作者:袁鹰这是一个铁路线上的小站,只有慢车才停两三分钟。快车疾驰而过,旅客们甚至连站名还来不及看清楚。就在这一刹那,你也许看到一间红瓦灰墙的小屋,一排漆成白色的小栅栏,或者还有三五个人影。而这一切又立即消失了,火车两旁依然是逼人而来的山崖和巨石。这是一个在北方山区常见的小站。小屋左面有一张红榜,上面用大字标明了二百四十一天安全无事故的记录,贴着竞赛优胜者的照片。红榜旁边
2017-01-22 11:30:43 6519
原创 linux input/output error
在操作linux系统的时候有时候会遇到这个错误提示,那么首先要确定之前有没有操作过分区表,修改过磁盘配置等。尤其在虚拟机环境下改动后直接操作都会出现这个错误,此时尝试以下方法:1. reboot 2. 确定报错的挂载目录对应的分区,通过 df -Th查看。 然后修复模式进入系统,执行:e2fsck -a /dev/sdb4 (sdb4 为假设的问题分区)有其他出错情形与方法,可
2017-01-21 17:19:05 32066 1
原创 iSCSI 2-环境搭建<一>
实验环境操作系统:CentOS release 6.5 (Final)iSCSI Target:10.0.0.11 (#yum install scsi-target-utils)iSCSI Initiator 1:10.0.0.12 (#yum install iscsi-initiator-utils)iSCSI Initiator 2::10.0.0.13 (#yu
2017-01-20 16:06:51 1155
原创 Linux LVM-删除卷组逻辑卷物理卷
查看卷组相关信息[root@localhost /]# vgscan Reading all physical volumes. This may take a while... Found volume group "VolGroup00" using metadata type lvm2查看卷组VolGroup00包含的PV、LV信息。[root@localhost
2017-01-20 15:09:03 16444
转载 存储技术与iSCSI
本章主要介绍基于IP SAN的网络存储iSCSI。iSCSI技术以其低廉的构建成本和优秀的存储性能,博得了很多CIO和存储管理员的喜爱,目前陆续进入企业应用领域,推动了企业的存储环境向集中式转变。虽然,目前对于iSCSI应该在什么样的环境中使用还存在着诸多争议,但是iSCSI的前途是光明的,在未来的存储世界中,iSCSI一定会占据重要的席位。本章重点介绍iSCSI在Windows和Linux环境下
2017-01-20 13:27:46 645
原创 ISCSI 1-由零开始
iSCSI的概念 iSCSI,即Internet SCSI,是IETF制订的一项标准,用于将SCSI数据块映射为以太网数据包。从根本上说,它是一种基于IP Storage理论的新型存储技术,该技术将存储行业广泛应用的SCSI接口技术与IP网络技术相结合,可以在IP网络上构建SAN。简单地说,iSCSI就是在IP网络上运行SCSI协议的一种网络存储技术。iSCSI技术最初由C
2017-01-20 13:17:42 617
原创 Linux 系统如何查看硬盘UUID与修改
一、查看1. sudo blkid2. ls -l /dev/disk/by-uuid 3. tune2fs -l /dev/sdb二、修改与恢复uuidgen 会返回一个合法的 uuid,结合 tune2fs 可以新生成一个 uuid 并写入 ext2,3,4 分区中: 比如新建或改变 sda5 的 uuid (需要 root 权限)uuidgen | xargs tune2fs /dev/
2017-01-19 17:14:15 5958
原创 VMware安装系统时没有弹出分区设置
在安装虚拟机系统的时候,有时候会遇到在安装一些镜像时没有弹出分区设置的画面,比如,我在使用 VMware 安装 CentOS 的时候,在选择完镜像,设置好启动安装的时候系统自动为我划分了 3 个分区:/boot、/、swap分区,这在我们进行后期使用中是很不方便的。因为默认划分会分配完我们的硬盘空间,这对于我们后期的系统管理十分不方便。尽管通过 fdisk 和 Gparted 这些工具可以进行定制调
2017-01-19 11:36:36 1829
转载 SPI总线时序
SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,现在越来越多的芯片集成了这种通信协议。SPI是一个环形总线结构,由ss(cs)、sck、sdi、sdo构成,其时序其实很简单,主要是在sck的控制下,两个双向移位寄存器进行数据交换。 SPI总线是Motorola公司推出的三线同步接口,
2017-01-12 10:14:03 924
原创 VIM使用系统剪切板
在 Linux 终端模式下使用 vim 编辑器时发现经常需要在vim打开的文本文档进行复制粘贴,那么下面就跟着我的思路一步步往下走吧。一、首先确认当前 vim 配置是不是支持系统剪切板,可以在终端模式下输入命令:vim --version | grep clipboard看下输出结果中在两个 clipboard 前面的符号是加号还是减号,如果是加号那么可以略去这一步,如果是减号就需要重新下载 vim
2017-01-06 14:27:46 1970
原创 循环队列及C语言实现<三>
在之前的博客中给出了设计循环队列的思路以及源码,这些可都是经过我长期大数据测试的验证哦。当然,现在的很多开源项目和一些封装好的类或接口也都有类似的队列实现方法,之所以我还在使用自己写的这一套方法,主要是因为灵活性较大,我可以定制出适合自己的接口。而且在其上的操作逻辑和结果我也心知肚明。 好了,之所以隔了这么久写这个第三篇文章,主要是考虑到以下因素: <1> 队列并发操作的同步问题;(安全性)
2016-12-28 20:12:56 1644
原创 Error: Could not find or load main class
在 java 编程中如果遇到此错误,那么检查下 classpath。必须确保把 .class 文件的路径添加到 classpath 中, 如果是在当前路径,那么就添加字符 . 到 classpath 中。注意不同系统环境下使用的路径分隔符是不同的,在 windows 下是分号 (’;’),在 linux 和 Macos 下使用的是冒号 (’:’) 。EXP: (1) 首先编译成功 java 源文
2016-12-28 09:25:59 3914
原创 TCPDUMP/LIBPCAP 3-PCAP's MAN手册(1)
概要#include <pcap/pcap.h>说明PCAP提供为抓包系统提供高级接口。网络上的所有数据包,即使是发往其他主机的数据包,都可以通过这种机制访问。它还支持将捕获的数据包保存到“savefile”,和从“savefile”中读取数据包。打开捕获句柄用于读取 调用 pcap_create() 给定应执行捕获的网络或者其他接口名称,以打开一个用于实时捕获的句柄,在其上设置适合的选项,然后使用
2016-12-25 12:15:43 810
原创 TCPDUMP/LIBPCAP 2-搭建环境
1. 实验平台 Linux 发行版本众多,考虑到大部分开发者的习惯,因此决定采用桌面版系统,具体为 CentOS-6.5-x86_64。系统内核版本为:2.6.32。尽管内核版本较低,但考虑到兼容性和稳定性,选择了此版本系统作为宿主机。下面是搭建具体需要的资源:VMware + CentOS-6.5-x86_64-bin-DVD1.iso。搭建步骤就不赘述了,简单粗暴,唯一注意的是别太吝啬分配
2016-12-08 00:34:55 874
原创 TCPDUMP/LIBPCAP 1-由零开始
简介 TCPDUMP是强大的网络包分析器,可以在线或离线抓包,设置过滤条件等操作。 LIBPCAP是十分简洁易用的C/C++网络流量抓包库;实际上TCPDUMP就是基于LIBPCAP实现的一个应用程序。为什么要学会工具和库的使用 工欲善其事必先利其器,无论是小程序还是大项目,无论是教学实验还是经典如《TCP/IP详解》一类书籍,使用tcpdump进行实验教学,使用libpcap编写抓包程序处
2016-12-07 21:20:59 1122
安卓电视与BLE遥控器交互蓝牙报文.zip
2019-07-23
Android/Linux触摸屏解决方案
2018-07-06
解决 Windows Update 更新错误/无法创建还原点 代码 0x80246008
2018-03-05
Office2007转PDF插件
2018-02-09
安卓JNA例程
2017-09-25
JavaStruct库与应用文档
2017-07-20
安卓串口应用资料
2017-07-20
CCIE路由与交换认证考试指南(英文版)
2016-10-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人