摘要: Linux 驱动设计主要是根据分层分离思想,i2c子系统分为i2cocre、adapter、及device_driver层,其实adapter也是个device,只不过是我们主控芯片的I2C控制接口而已,我们的主控芯片有几个I2C接口就有几个adapter; i2ccore这一层linux已经帮我们 阅读全文
posted @ 2017-09-01 18:04 迷途小菜鸟 阅读(1175) 评论(0) 推荐(0)
摘要: 上个实例:http://www.cnblogs.com/weishengzhong/p/7429840.html 之前那个实例在运行过程中有个bug,将驱动模块装入内核后,不做任何操作,等待一段时间,就会出现内核错误,具体打印信息如下: 大致的看看信息,可以知道错误发生在 PC is at butt 阅读全文
posted @ 2017-08-27 17:46 迷途小菜鸟 阅读(750) 评论(0) 推荐(0)
摘要: 之前介绍过linux驱动的分层/分离思想,这里写个简单的例子。 按键处理在linux内核中有做好的驱动,可以利用输入子系统模块,所以驱动只需写硬件相关的就行,比如中断向量号、IO口、管脚数量等等即可; 本代码使用input子系统,另外采用platform总线,将硬件相关的驱动分成两部分,一部分是pl 阅读全文
posted @ 2017-08-25 22:03 迷途小菜鸟 阅读(736) 评论(0) 推荐(0)
摘要: 本人对linux一直都比较感兴趣,苦于工作一直没有机会好好的深入了解,作为工作将近8年的工程师来说实在也是件憾事,不过还好,手头还算宽裕,买了不少开发板,不过大部分都是上灰阶段……真是暴殄天物啊…… 业余时间也只是断断续续的学习下,还未系统性的去钻研,很多知识点还未形成一个完整的知识体系,所以最近开 阅读全文
posted @ 2017-08-24 11:09 迷途小菜鸟 阅读(823) 评论(0) 推荐(0)
摘要: 最近想自己做个摄像头采集图像,然后调用opencv库处理图像的小项目,由于担心uImage太大,超过之前uboot定义的内核烧录大小,所以想着修改下uboot,之后就索性从0开始把uboot从新移植一遍,然后自己写个ov7670的驱动,再写个应用代码,先从uboot移植开始; uboot的运行环境是 阅读全文
posted @ 2017-08-17 14:18 迷途小菜鸟 阅读(216) 评论(0) 推荐(0)
摘要: 之前一直习惯手动对齐struct数据存放地址,比如一个struct中有3个变量,分别是char型,short型,int型,本人比较习惯的这样定义结构体: 前面3个是要定义的实际变量,第四个是为了补齐4字节对齐手动添加的一个无关变量; 最近阅读代码偶然遇到个陌生的对齐形式格式如下: 之前只知道#pra 阅读全文
posted @ 2017-08-09 14:45 迷途小菜鸟 阅读(1235) 评论(0) 推荐(0)
摘要: Mat自带了迭代器模板类,类名是MatIterator_,原型如下 Mat自带了迭代器模板类,类名是MatIterator_,原型如下 template<typename _Tp> class MatIterator_ : public MatConstIterator_<_Tp> { public 阅读全文
posted @ 2017-08-04 16:07 迷途小菜鸟 阅读(721) 评论(0) 推荐(0)
摘要: 很有启发的一段话(不知摘抄于何处,群里聊天一位朋友发出来的,如有冒犯请及时通知。): 对于很多做技术的朋友,包括我自己在内,一直以为:只要技术牛,就可以活的非常滋润;只要技术牛,就可以拿优厚的待遇;只要技术牛,就可以拉着几个小伙伴搞自己的“事业”;只要技术牛,就可以驰骋IT江湖。很多的事情,或许是我 阅读全文
posted @ 2017-06-28 14:21 迷途小菜鸟 阅读(120) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2017-06-06 11:20 迷途小菜鸟 阅读(3) 评论(0) 推荐(0)
摘要: 最近研究了下sourceinsight的宏编制,挺有意思的,结合网上摘抄的部分代码,然后自己修改了些细节,整体效果还不错,这里贴出来供其他人参考参考; 第一个宏:插入文件描述信息 这个宏在sourceinsight内的效果如图所示: 在MDK内显示效果如图所示: 看得出来在两个不同的编辑环境内没有产 阅读全文
posted @ 2017-05-05 17:12 迷途小菜鸟 阅读(3016) 评论(0) 推荐(0)