自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 收藏
  • 关注

转载 android6.0 SerialPort 服务

上一篇博客描述了一个简单的串口应用程序和驱动程序,了解了应用程序访问串口的基本操作,如打开串口,设置串口,写串口,读串口,关闭串口等。和Linux串口驱动的基本框架。这里将了解Android下的串口系统框架,仍然使用上一篇博客中的tiny_serial.c作为本例的驱动,本例实现的功能不变,无论应用程序写任何数据到串口,都能从该串口中读回。 关于Android系...

2017-10-17 19:42:00 517

转载 Android 串口驱动和应用测试

这篇博客主要是通过一个简单的例子来了解Android的串口驱动和应用,为方便后续对Android串口服务和USB虚拟串口服务的了解。这个例子中,参考了《Linux Device Drivers》书中的例子,并在该例子中增加了串口接收的处理。由于手上的机器是手机,硬件上只保留了一个串口用于debug。而且这里只做一个回环测试,因此使用一个FIFO模拟硬件的读写:voi...

2017-09-29 20:10:00 655

转载 Android 6.0一个完整的native service

上一篇博客《Android 6.0 如何添加完整的系统服务(app-framework-kernel)》http://www.cnblogs.com/hackfun/p/7418902.html介绍了如何添加一个系统服务,客户端和服务端都是基于JAVA实现的OpersysService。经过进一步的学习,我将演示如何使用C++实现一个相同功能的系统服务hfnativese...

2017-09-06 20:41:00 496

转载 Android 6.0 如何添加完整的系统服务(app-framework-kernel)

最近学习了如何在Android 6.0上添加一个系统服务,APP如何通过新增的系统服务访问底层驱动。在这学习过程中,收获颇多,并结合学习了《Embeded Android》--Karim Yaghmour 一书中的Appendix B. Adding Support For New Hardware章节,受益匪浅,讲述了如何添加一个完整的系统服务(app->framewor...

2017-08-23 16:38:00 411

转载 Android sensor 系统框架 (二)

连载上一篇http://www.cnblogs.com/hackfun/p/7327320.html(D) 如何加载访问.so库 在前一篇博客http://www.cnblogs.com/hackfun/p/7327320.html中,知道如何生成了一个HAL的.so库,在这里将分析如何加载这个HAL,如何再次封装以适合多客户端访问的情况。 实际上,系统是通过SENS...

2017-08-10 19:52:00 338

转载 Android sensor 系统框架 (一)

这几天深入学习了Android sensor框架,以此博客记录和分享分析过程,其中难免会有错误的地方,欢迎指出!这里主要分析KERNEL->HAL->JNI这3层的流程。主要从以下几方面开始着手:(A) 驱动层向上提供了那些文件节点给系统层读写?(B) 系统层通过什么方式访问驱动层?(C) 如何统一各种sensors的接口,生成.so库?(D) 如何加载访问.so库(E...

2017-08-09 19:37:00 378

转载 enc28j60网卡驱动模块添加进linux内核,Kconfig,Makefile配置过程

这里是要把http://www.cnblogs.com/hackfun/p/6260396.html中的enc28j60网卡驱动模块,添加到2.6.22.6内核中,这个模块代码不需要任何修改。只需要在内核目录下的相关配置脚本文件,如Makefile,Kconfig,.config等,修改某些配置就行。enc28j60网卡驱动模块使用到的几个文件:enc28j60.cenc28...

2017-02-19 14:53:00 203

转载 linux enc28j60网卡驱动移植(硬件spi和模拟spi)

本来想移植DM9000网卡的驱动,无奈硬件出了点问题,通过杜邦线链接开发板和DM9000网卡模块,系统上电,还没加载网卡驱动就直接崩溃了,找不到原因。。。刚好手上有一个enc28j60的网卡模块,于是就着手移植enc28j60的驱动。其实移植enc28j60的驱动也十分简单,网上有现成的,只需要分配一些硬件资源即可。由于我的内核版本老到掉牙,没有自带enc28j60的驱动,只能在...

2017-01-07 21:21:00 172

转载 Linux网络驱动--snull

snull是《Linux Device Drivers》中的一个网络驱动的例子。这里引用这个例子学习Linux网络驱动。因为snull的源码,网上已经更新到适合最新内核,而我自己用的还是2.6.22.6比较旧的内核。而网上好像找不到旧版的snull。因此结合《Linux Device Drivers》把最新的snull例子移植到2.6.22.6内核中。移植也相对简单,这里也提供移植好...

2016-12-18 18:13:00 397

转载 spi子系统之驱动SSD1306 OLED

spi子系统之驱动SSD1306 OLED接触Linux之前,曾以为读源码可以更快的学习软件,于是前几个博客都是一边读源码一边添加注释,甚至精读到每一行代码,实际上效果并不理想,看过之后就忘记了。主要原因是没理解透程序架构,各个模块之间的关系,如何联系在一起,再加上没有实例验证。后来逐渐发现,理解框架能达到事半功倍的效果,理解框架之后,反而代码也更容易看懂,甚至可以猜部分代码的...

2016-11-20 13:23:00 1069

转载 I2C子系统之驱动SSD1306 OLED

理解I2C设备驱动框架,主要围绕四个结构体去分析就容易了。struct i2c_algorithm:提供I2C协议的实现的操作,如:master_xfer实现数据收发的最基本方法。struct i2c_adapter:每一个i2c_adapter都代表一个I2C物理接口,一个cpu可以有多个I2C接口(i2c_adapter),i2c_algorithm就是为i2c_adapte...

2016-10-23 15:05:00 1090

转载 设备模型(device-model)之平台总线(bus),驱动(driver),设备(device)

关于关于驱动设备模型相关概念请参考《Linux Device Drivers》等相关书籍,和内核源码目录...\Documentation\driver-model简单来说总线(bus),驱动(driver),设备(device)这三者之间的关系就是:驱动开发者可以通过总线(bus)来将驱动(driver)和设备(device)进行隔离,这样的好处就是开发者可以将相对稳定不变的驱动(...

2016-10-11 23:45:00 327

转载 linux输入子系统(input subsystem)之evdev.c事件处理过程

1.代码input_subsys.drv.c 在linux输入子系统(input subsystem)之按键输入和LED控制的基础上有小改动,input_subsys_test.c不变。input_subsys.drv.c 1 #include <linux/module.h> 2 #include <linux/version.h> ...

2016-10-07 12:04:00 381

转载 poll机制

使用POLL机制代替linux输入子系统(input subsystem)之按键输入和LED控制中的异步通知,实现同样的效果。1.代码只简单修改input_subsys_test.c, input_subsys_drv.c不变input_subsys_test.c 1 #include <sys/types.h> 2 #include <sys/...

2016-10-03 12:34:00 105

转载 linux输入子系统(input subsystem)之按键输入和LED控制

实验现象:在控制台打印按键值,并且通过按键控制相应的LED亮灭。1.代码input_subsys_drv.c 1 #include <linux/module.h> 2 #include <linux/version.h> 3 4 #include <linux/init.h> 5 #include <...

2016-10-03 00:08:00 330

转载 Would Your Work Habits Change if You Were Paid by the Job?

原文地址:http://success-sys.com/2016/09/26/would-your-work-habits-change-if-you-were-paid-by-the-job/A couple of days ago I noticed a guy installing a solar system on a two-story house in my nei...

2016-09-27 19:31:00 112

转载 Monthly Income Report – August 2016

原文链接:https://marcoschwartz.com/monthly-income-report-august-2016/Every month, I publish a report of the business & investment income I received during the previous month. I publish these re...

2016-09-07 14:06:00 218

转载 class.c 添加中文注释(3)

1 int class_device_register(struct class_device *class_dev) 2 { 3 /* [cgw]: 初始化一个struct class_device */ 4 class_device_initialize(class_dev); 5 /* [cgw]: 添加一个struct cl...

2016-09-02 10:11:00 94

转载 Tips for Planning Your Business Startup

原文链接:http://domaintree.me/?p=1037By Robert Thibodeau –Starting a business can be a very daunting adventure if a proper plan is not put in place. Most entrepreneurs start up their busine...

2016-08-28 19:30:00 242

转载 class.c 添加中文注释(2)

1 /* Class Device Stuff */ 2 3 int class_device_create_file(struct class_device * class_dev, 4 const struct class_device_attribute * attr) 5 { 6 int error...

2016-08-26 18:08:00 94

转载 10 Biggest Business Mistakes That Every Entrepreneur Should Avoid

原文链接:http://www.huffingtonpost.com/syed-balkhi/10-biggest-business-mista_b_7626978.htmlWhen I started my first business, I made a lot of mistakes (everyone does). While mistakes are unavoi...

2016-08-14 16:42:00 198

转载 7 COMPELLING REASONS YOU NEED TO START THE BUSINESS YOU’VE ALWAYS WANTED

原文链接:http://lesseesadvocate.com/7-compelling-reasons-need-start-business-youve-always-wanted/Don’t Wait Any Longer – Start Your Own Business and Stop Building Someone Else’s EmpireTheAuto...

2016-08-14 00:19:00 168

转载 class.c 添加中文注释(1)

注释仅代表个人理解,仅供参考。 1 /* 2 * class.c - basic device class management 3 * 4 * Copyright (c) 2002-3 Patrick Mochel 5 * Copyright (c) 2002-3 Open Source Development Labs 6 * ...

2016-08-05 15:39:00 106

转载 char_dev.c 添加中文注释

char_dev.c里的中文注释,仅代表个人理解,仅供参考。如有错误之处,请指出,谢谢! 1 /* 2 * linux/fs/char_dev.c 3 * 4 * Copyright (C) 1991, 1992 Linus Torvalds 5 */ 6 7 #include <linux/init.h&g...

2016-07-25 22:33:00 160

转载 map.c 添加注释

注释仅代表个人理解,难免有错误之处,仅供参考! 1/*2*linux/drivers/base/map.c3*4*(C)CopyrightAlViro2002,20035*ReleasedunderGPLv2.6*7*NOTE:datastructureneedstob...

2016-07-23 12:40:00 69

转载 kobject.c 添加注释

最近结合《Linux Device Drivers》对kobject的理解,对kobject.c文件添加注释,仅供参考!1/**2*populate_dir-populatedirectorywithattributes.3*@kobj:objectwe'reworkingon.4*...

2016-07-23 12:36:00 146

空空如也

空空如也

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

TA关注的人

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