自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (12)
  • 收藏
  • 关注

原创 Linux字符设备驱动程序开发(3)-LED驱动程序设计

1、设备控制理论控制理论-作用大部分驱动程序除了需要提供读写设备的能力外,还需要具备控制设备的能力。比如: 改变波特率。设备控制-应用函数在用户空间,使用ioctl系统调用来控制设备,原型如下:int ioctl(int fd,unsigned long cmd,...)fd: 要控制的设备文件描述符cmd: 发送给设备的控制命令…: 第3个参数是可选的参数,存在与否

2017-06-30 22:32:00 622

原创 Linux字符设备驱动程序开发(2)-字符设备驱动模型分析

1、设备描述结构cdev在Linux系统中,设备的类型非常繁多,如:字符设备,块设备,网络接口设备,USB设备,PCI设备,平台设备,混杂设备……,而设备类型不同,也意味着其对应的驱动程序模型不同,这样就导致了我们需要去掌握众多的驱动程序模型。那么能不能从这些众多的驱动模型中提炼出一些具有共性的规则,则是我们能不能学好Linux驱动的关键。这些规则可以参考第二节的设备驱动模型,在任何一种驱动模

2017-06-30 15:47:29 466

原创 Linux字符设备驱动程序开发(1)-使用字符设备驱动

1、使用字符设备驱动程序1.1编译/安装驱动在Linux系统中,驱动程序通常采用内核模块的程序结构来进行编码。因此,编译/安装一个驱动程序,其实质就是编译/安装一个内核模块。把下面的范例代码拷贝到Linux系统中:#include <linux/module.h>#include <linux/fs.h>#include <linux/init.h&...

2017-06-29 22:42:47 7057

原创 Linux驱动开发准备

1、Linux驱动开发概述Linux驱动分类,分类有很多分类方法,比如常规分类法、总线分类法,按照常规分类法可分为字符设备、块设备、网络设备。1.1 字符设备字符设备是一种按字节(最小访问单位)来访问的设备,字符驱动则负责驱动字符设备,这样的驱动通常用文件的方式访问,比如open, close, read和write 系统调用。例:串口,LED,按键。1

2017-06-29 18:17:09 446

原创 Linux内核链表

1、Linux内核链表介绍对应链表大家应该都不陌生,我们来复习一下1.链表简介链表是一种常用的数据结构,它通过指针将一系列数据节点连接成一条数据链。相对于数组,链表具有更好的动态性,建立链表时无需预先知道数据总量,可以随机分配空间,可以高效地在链表中的任意位置实时插入或删除数据。链表的开销主要是访问的顺序性和组织链的空间损失。2.传统链表和内核链表对比

2017-06-29 16:21:53 381

原创 Linux子系统学习

1、Linux子系统介绍如图所示,Linux有7个子系统,分别为SCI:系统调用PM:进程管理VFS:虚拟文件系统MM:内存管理Network Stack:网络协议栈Arch:体系结构相关DD:设备驱动和Linux驱动开发关系较为紧密的有进程管理系统、内存管理系统、虚拟文件系统,下面将学习进程管理系统和内存管理系统。2、Linux内存

2017-06-28 15:18:22 473

原创 Linux内核模块开发

1、内核模块基础1.1什么是内核模块Linux内核的整体结构非常庞大,其包含的组件也非常多,如何使用这些组件呢, 方法1:把所有的组件都编译进内核文件,即:zImage或bzImage,但这样会导致一个问题:占用内存过多.因为如果有些组件不需要经常使用,但是它一直存在于内存中,这显然是对内存资源的浪费。有没有一种机制能让内核文件本身并不包含某组件,而是在该组件需要被使用的时

2017-06-28 12:11:03 306

原创 网络安全传输系统(6)-其它改进

1、改进需要改进的地方如下:1、输入密码时最好不回显,用*代替2、目前数据库中保存的是明文密码,这显然是不行的,容易被窃取,可以保存密码对应的MD5摘要3、在服务器中为每个用户创建一个文件夹,用来保存其上传的文件4、用户选择下载文件时,最好能够列出其能够下载的所有文件改进后的代码在:https://github.com/dayL-W/File-Transfer-with-S...

2017-06-27 19:49:33 649

原创 网络安全传输系统(5)-账号管理系统

1、SQlite介绍账号管理系统显然需要用到数据库,开源的数据库有MySQL,SQlite等,由于SQlite是一个轻量级、跨平台的数据库,非常适用于嵌入式系统中,因此我们选用SQlite数据库。SQlite有如下优点:◇轻量级先说它的第一个特色:轻量级。想必SQLite的作者很看重这个特性,连它的Logo都是用的“羽毛”,来显摆它的轻飘飘。SQLite和C/S模式的数据库软件不同...

2017-06-27 13:26:13 1027

原创 网络安全传输系统(4)-线程池优化

1、线程池原理在客户机/服务器模型中,对每个客户机的连接都创建一个线程来为期服务,这种方式好像没什么不妥之处。但是当我们的任务需要大量进行大量线程的创建和销毁操作时,这个消耗就会变成的相当大。比如说每秒中需要创建及销毁10000个线程,这对服务器来说压力会非常大,同时如果处理时间很短,以至于创建和销毁的时间远大于处理的时候,这就非常不划算了。因此这里引入线程池的概念:线程池就是有一堆已经创...

2017-06-27 13:03:24 817 1

原创 网络安全传输系统(3)-加密传输

1、介绍网络传输中有很多加密技术,有DES、AES、RSA、SSL等。我们这里采用OpenSSL的开源加密算法。SSL协议位于TCP/IP协议与各种应用层协议之间,利用数据加密技术,可确保数据在网络上之传输过程中不会被截取及窃听。SSL协议可分为两层: SSL记录协议(SSL Record Protocol):它建立在可靠的传输协议(TCP)之上,为高层协议提供数据封装、压缩、加密...

2017-06-27 09:19:02 3689

原创 网络安全传输系统(2)-框架搭建

框架搭建需要实现文件上传和下载等的基本功能网络协议采用TCP协议,通过TCP协议传输文件打算采取如下的顺序(针对客户机而言):1、先发送命令,1代表上传,2代表下载,3代表退出2、发送文件名3、发送文件长度4、发送文件数据因此对于上传文件客户机和服务器分别遵循如下顺序客户机:1、获取需要上传的文件名2、打开文件3、发送命令14、发送文件名5、发...

2017-06-26 21:45:33 1020

原创 网络安全传输系统(1)-功能介绍

网络安全传输系统需要实现以下功能:1、基于客户机/服务器模型,能够实现文件的上传和下载2、对TCP包的明文数据通过OpenSSL加密3、采用线程池技术来实现多个客户机访问的功能4、采用SQlite来保存客户机的账号和密码更多Linux资料及视频教程点击这里...

2017-06-26 21:24:18 1185

转载 motion源代码分析

转自:http://blog.csdn.net/sakaue/article/details/22816475楔子前几天研究了如何将ffmpeg编入motion,并实现录像功能。现在研究下motion的工作流程。几个主要模块motion.c 主程序,视频采集编码主循环 ffmpeg.c 一个代理模块,封装了ffmpeg的方法,根据v4l获取的数据编...

2017-06-26 20:51:00 1383

原创 Linux移动物体监控程序Motion的移植

所谓移动图像监测,简单来说就是利用摄像头定点监测某个区域,当有移动物体经过时,摄像头便自动抓拍(要监测多大物体、按拍照速率都是可调的),并把拍到的图像存储在指定目录,实现无人监控功能。在Linux中有一套免费开源的移动物体监控的程序-Motion,它可以抓拍移动物体的图片和视频,并存放在指定目录或者数据库中,下面介绍Motion的移植和安装。1、源代码下载http://down

2017-06-26 20:22:59 1032

原创 USB摄像头驱动配置及V4L2编程

1、摄像头驱动开发1.1 摄像头软件系统架构摄像头系统架构分为四层:摄像头、支持V4L2的摄像头驱动、V4L2核心、应用程序。V4L2核心是Linux系统自带的组件,它可以屏蔽摄像头驱动层的差异,不管底层的摄像头有什么差异,上层应用统一调用V4L2来实现对摄像头的操作。因此驱动程序和应用程序都需要遵循V4L2规范1.2 摄像头驱动使能#make menucon...

2017-06-26 10:25:06 5388 2

转载 程序员:如何写出杀手级简历

1. 简历里要有你工作的技术细节:  编程语言,你的个人成就和水平。 我有时会看到一些简历,里面的工作描述就只有一行话,像这样:* 在一个3人组成的团队里开发一个 e-mail 插件。  筛选者在阅读你的简历时心里都有选择标准, 1. 工作的挑战性如何, 2. 你的工作跟我们公司有多少相关性,所以你需要把工作描述清楚。 更合适的写法应该是这样的:* 用C++语言实现

2017-06-14 14:25:58 269

转载 再谈“我是怎么招聘程序员的”

我以前写过一篇“我是怎么招聘程序员的”的文章(在CSDN那里有很多人进行了回复)。今天,我想再谈谈关于招聘和面试这方面的东西,主要是以下这些原因:近半年来我在进行了大量的招聘工作,对面试有一些新的体会。酷壳最近发布了几篇趣味面试题(面试题一,面试题二,面试题三),从回复中让我有一些思考。我有一个同事最近面试了一家公司,他和我分享了一个博士专家对他的面试,也让我思考了一些。在豆瓣上看到“知乎

2017-06-14 14:24:07 263

转载 程序员找工作那点事儿

从7月中旬回武汉之后开始系统的复习,到9月下旬正式开始找工作,最后到10月中旬结束,前后历时三个月,从前期的职业定位,到中期的复习准备,最后到后期真枪实弹的笔试面试,个人感觉找工作就是个系统的工程,是个很复杂的事情,至少对于我是这样的。经历了感触颇深,在这里,我想将我这几个月,尤其是最后半个多月笔试面试的经历与感受记录下来,一来祭奠我那些由于高强度笔试面试牺牲的脑细胞,二来希望能给学弟学妹们半点借

2017-06-14 14:21:14 409

转载 OpenSSL

在很多加密环境中,我们都需要使用OpenSSL。很多时候我们都不知道OpenSSL到底是什么东西。准确的来说,OpenSSL只是一套工具包软件,用于生成X.509协议中所使用的密钥,公钥等文件。举例来说,我们都知道HTTP和HTTPS所代表不同的意思,HTTPS表示使用加密方式对数据进行传输,但是数据是怎么样进行加密的呢?这里有几个加密协议的版本SSL V2, SSL V3和TLS。这个加密...

2017-06-14 09:42:04 672

IJCAI-2018 数据集

IJCAI-2018 数据集,包括初赛及复赛的数据。

2019-11-14

ESP8266工具及资料.7z

文件包含ESP8266烧录固件的工具(windows 64位),PX4 wifi的固件,以及串口调试助手,文档资料等等

2019-05-18

天池OGeek初赛数据

这是天池OGeek比赛的数据,包含训练集,验证集和测试集A榜的数据,有需要的朋友可以看

2018-12-09

Flightplot.jar

查看PX4的日志信息。可以读取PX4的.log或者.px4log的日志文件,在界面上显示数据曲线,并进行一些初始计算

2018-12-05

天池精准医疗大赛数据

天池精准医疗大赛——人工智能辅助糖尿病遗传风险预测的数据

2018-06-13

OpenSSL源代码

openssl-1.0.0s.tar.gz

2017-06-27

ffmpeg-0.5.1源代码

ffmpeg-0.5.1源代码

2017-06-26

Motion源代码

这是Linux下的移动物体监控系统开源代码,具有抓拍移动物体图片,视频,并保存到数据库的功能

2017-06-26

C Coding Standard.pdf

C Coding Standard.pdf

2017-04-03

基于STM32的DMP方式读取欧拉角

这是通过STM32F103芯片来读取6050的程序,此程序通过DMP库函数来读取欧拉角。

2015-01-23

基于STM32的TFT显示图片

用STM32在TFT显示一幅320*240的图片,图片是BMP格式的,可以用一个图片转换文件转换软件转换

2014-10-17

STM32f103的DS18B20温度读取

基于STM32f107,用DS18B20温度读取

2014-07-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除