自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 资源 (2)
  • 收藏
  • 关注

转载 如何找到树莓派通过dhcp获得的ip地址

通过arp-scan获得树莓派IParp协议是一个数据链路层协议,负责IP地址和Mac地址的转换。下面我们介绍一个arp-scan工具扫出局域网所有的IP地址安装arp-scanMac OSbrew install arp-scanUbuntusudo apt-get arp-scan扫描以太网IP地址arp-scan --interface eth0 --loca

2015-02-28 13:45:20 2612

转载 sysfs api总结

sysfs是用于表现设备驱动模型的文件系统,它基于ramfs。要学习linux的设备驱动模型,就要先做好底层工作,总结sysfs提供给外界的API就是其中之一。sysfs文件系统中提供了四类文件的创建与管理,分别是目录、普通文件、软链接文件、二进制文件。目录层次往往代表着设备驱动模型的结构,软链接文件则代表着不同部分间的关系。比如某个设备的目录只出现在/sys/devices下,其它地方涉及到它时

2015-02-12 14:17:03 317

原创 总结i2c相关驱动注册层次说明

一:i2c总线驱动注册(适配器驱动注册)I2c-s3c2410.c(drivers\i2c\busses)i2c_adap_s3c_init---》platform_driver_register(&s3c24xx_i2c_driver);二:i2c总线注册I2c-core.c (drivers\i2c)i2c_init---》bus_register(

2015-02-12 13:50:03 246

原创 应用层对i2c通用驱动接口与eeprom的i2c驱动接口从应用层到内核层调用区别和联系

一:i2c通用接口调用过程:i2c_dev_init--》register_chrdev(I2C_MAJOR, "i2c", &i2cdev_fops)//I2c-dev.c (drivers\i2c)static const struct file_operations i2cdev_fops = {.owner = THIS_MODULE,.llseek=

2015-02-12 13:17:30 561

转载 Linux I2C驱动分析(三)----i2c_dev通用接口驱动和应用层分析

一、i2c-dev驱动分析1.1、设备驱动注册        分析这个驱动,还是从module_init()和module_exit()开始,程序如下:点击(此处)折叠或打开static int __init i2c_dev_init(void){    int res;    printk(KERN_INFO "i2

2015-02-12 11:45:43 546

转载 Linux I2C驱动分析(二)----I2C板级设备扫描和数据传输

一、板级设备扫描        针对上一篇博客最后的i2c_scan_static_board_info(adap)函数处,首先先看下在系统启动的时候板级设备的注册。        针对我现在使用的开发板,对于I2C设备注册程序如下:点击(此处)折叠或打开static struct i2c_board_info i2c_dev

2015-02-12 11:44:16 281

转载 Linux I2C驱动分析(一)----I2C架构和总线驱动

一、I2C总线原理        I2C是一种常用的串行总线,由串行数据线SDA 和串线时钟线SCL组成。I2C是一种多主机控制总线,它和USB总线不同,USB是基于master-slave机制,任何设备的通信必须由主机发起才可以,而 I2C 是基于multi master机制,一条总线上可允许多个master。       系统的I2C模块分为I2C总线控制器和I2C设备。I

2015-02-12 11:20:21 297

转载 linux驱动clock模型及与在驱动中应用的api

Linux clk 模型 Linux clk模型采用面向对象的思想来设计实现的。在porting层创建一个一个的clk节点对象,然后将所有的clk节点对象连成一个list。当驱动层需要设置时钟的时候,通过porting层与驱动层直接的api函数进行操作。首先通过clk_get函数,根据clk节点的名字,获取clk节点。然后,使用clk_set_rate()函数设置c

2015-02-11 17:17:36 517

原创 iic总线驱动(适配器驱动)详解

linux系统下,不管什么设备(总线驱动、总线设备驱动..),挂接在总线上都分两种资源:1.驱动设备资源(驱动设备资源注册)2.驱动(针对设备的驱动注册)所以在实现和学习驱动的时候,就分这两块来进行。一:我会查找i2c驱动设备资源添加(i2c适配器平台资源)//Mach-mini2440.c (arch\arm\mach-s3c24xx)(1)//平台数据str

2015-02-11 11:12:59 920

原创 访问eeprom设备的方法三(理解iic总线接口应用以及创建sysfs文件系统的bin文件访问接口(新的访问设备的文件接口))

驱动并没有注册任何字符设备或者杂项设备,只是向sys文件系统注册了一个二进制属性文件。因此要访问设备,必须通过该文件的读写函数来。读写函数在probe函数中指定为at24_bin_write和at24_bin_read1:写函数static ssize_t at24_bin_write(struct file *filp, struct kobject *kobj,st

2015-02-11 09:21:01 585

原创 eeprom设备驱动(client driver)详解(二)

static int at24_probe(struct i2c_client *client, const struct i2c_device_id *id){struct at24_platform_data chip;bool writable;int use_smbus = 0;struct at24_data *at24;int err;unsigned i,

2015-02-10 17:12:23 983

原创 eeprom驱动设备资源注册详解一(主要是理解如何运用iic总线,挂接设备驱动)

设备驱动需要完成两部分:(1)将iic设备对应的struct i2c_board_info结构添加到全局链表__i2c_board_list(定义在I2c-boardinfo.c (drivers\i2c))中,这部分工作需要在板级初始化文件Mach-mini2440.c (arch\arm\mach-s3c24xx)中调用i2c_register_board_info完成。具体如

2015-02-09 10:24:55 670

转载 Socket中listen/accept函数的区别

listen函数摘要:listen函数使用主动连接套接口变为被连接套接口,使得一个进程可以接受其它进程的请求,从而成为一个服务器进程(listen的很重要作用)。在TCP服务器编程中listen函数把进程变为一个服务器,并指定相应的套接字变为被动连接。listen函数在一般在调用bind之后-调用accept之前调用,它的函数原型是:intlisten(int sockfd,

2015-02-06 18:55:21 364

原创 ubuntu下qtcreator不支持中文

qtcreator不支持fcitx输入法框架,所以进入system settings-》language support-》language1:先设置keyboard input method system为ibus框架2:安装IBus框架sudo apt-get install ibus ibus-clutter ibus-gtk ibus-gtk3 ibus-qt43:安装拼音

2015-02-05 15:01:16 1211

mfc硬件编解码入门学习好代码

arm平台下mfc编解码入门学习的好代码。

2016-04-27

ubuntu12.04及以上配置vim成c/c++,qtIDE开发环境

本文件是在ubuntu下配置vim,变成C/C++集成开发环境,实现代码自动补全,函数参数提示,代码跳转,文件列表和函数项显示等功能,在ubuntu12.04 和ubuntu14.04中测试通过,只需执行vim.sh脚本即可,注意脚本中的vim73代表的是ubuntu 12.04vim的目录,如果是在ubuntu14.04中使用,将vim73换成vim74即可

2015-01-04

空空如也

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

TA关注的人

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