linux驱动
嵌入式乌托邦
无名之辈
展开
-
wpa_supplicant源码制作第三方库调用
wpa_supplicant是一款配置无线网络的开源工具,功能很强大,编译出来只有2个工具,一个wpa_supplicant和wpa_cli。wpa_supplicant用来做后台守护进程,wpa_cli做实际配置用。关于配置网络的常用命令这里我就不多讲了,很多地方都能找到,这里我们要讲的是另外一种情况:能不能把wpa_cli的功能部分做成库文件,通过一个接口来实现wpa_cli命令的功能,执...原创 2020-04-25 22:09:23 · 1285 阅读 · 1 评论 -
licheepi nano BS8112A触摸按键之长按短按
上一节中介绍了BS8112A芯片在荔枝派nano上的驱动实现过程。但是现在需要用到触摸按键的长按短按功能,需要稍加修改。在BS8112A_probe函数中,设置了__clear_bit(EV_REP, input->evbit); 即取消了上报按键重发的功能,所以我们将其开启。改为__set_bit(EV_REP, input->evbit);其余什么也不用改,这样,按键长按时...原创 2019-12-27 10:04:02 · 1199 阅读 · 0 评论 -
licheepi nano BS8112A触摸按键
BS8112A是一款带有12个按键的触摸芯片。I2C接口,带中断指示,可通过I2C配置寄存器改变按键的触发门槛值。内核版本:Linux-4.15.0硬件:荔枝派 licheepi-nano一、在内核中新增BS8112A的驱动代码。在内核目录drivers/input/keyboard/下新建bs8112a.c,直接上代码/* * BS8112A - Touch keypad ...原创 2019-12-26 10:29:46 · 1257 阅读 · 0 评论 -
licheepi nano添加BS818A触摸按键
原来使用了荔枝派nano的Lradc按键,挺好用的。但是在使用过程中发现当采样的数据线太长时,最后采样的电压会飘,导致按键不准,所以引出此文。一、BS818ABS818A是一款具有8个触摸按键的触摸解决方案芯片,采用串行接口用2根io线即可实现触摸控制。当检测到有按键按下时,会在data脚输出低电平,可用来唤醒主机。主机在接收到低电位后,由clock输出时钟信号,并从data脚回读按键...原创 2019-12-04 13:42:09 · 1088 阅读 · 0 评论 -
hi3531A tslib,qt4.6.2移植笔记(三)
上一篇文章中记录到Qt移植ok,移植了tslib1.4,最后在hi3531通过HDMI也可以出现Qt界面,只是tslib移植后无法校准,所以存在的问题就是电阻屏触摸不准。现在记录解决过程:1.使用的是USB接口的12.1寸电阻屏,EETI eGalax厂家的。内核用的是3.10.y版本的。最开始我从EETI官网http://www.egalax.com.tw/drivers.html下载了原创 2017-06-01 16:11:13 · 1481 阅读 · 3 评论 -
Device Tree(一):背景介绍
转载:http://www.wowotech.net/device_model/why-dt.html一、前言 作为一个多年耕耘在linux 2.6.23内核的开发者,各个不同项目中各种不同周边外设驱动的开发以及各种琐碎的、扯皮的俗务占据了大部分的时间。当有机会下载3.14的内核并准备学习的时候,突然发现linux kernel对于我似乎变得非常的陌生了,各种新的机制,各种framew转载 2015-04-17 13:41:30 · 506 阅读 · 0 评论 -
Device Tree(三):代码分析
转载:http://www.wowotech.net/device_model/dt-code-analysis.html一、前言 Device Tree总共有三篇,分别是: 1、为何要引入Device Tree,这个机制是用来解决什么问题的?(请参考引入Device Tree的原因)2、Device Tree的基础概念(请参考DT基础概念)3、ARM linux中转载 2015-04-17 13:45:37 · 581 阅读 · 0 评论 -
Device Tree(二):基本概念
转载:http://www.wowotech.net/device_model/dt_basic_concept.html一、前言 一些背景知识(例如:为何要引入Device Tree,这个机制是用来解决什么问题的)请参考引入Device Tree的原因,本文主要是介绍Device Tree的基础概念。简单的说,如果要使用Device Tree,首先用户要了解自己的硬件配置和系转载 2015-04-17 13:41:53 · 779 阅读 · 0 评论 -
【Linux】FrameBuffer操作入门
转载自:http://blog.csdn.net/tianshuai1111/article/details/8502613所有的这些操作,都是在控制台界面下,root登录。一,先变一个魔法 $ cat /dev/fb0 > sreensnap /*获取一屏的数据*/ $ clear转载 2014-03-06 17:48:43 · 1093 阅读 · 0 评论 -
gslX680驱动中出现“i2c i2c-0: sendbytes: NAK bailout.”错误
电容屏gslX680的驱动,使用中总是出现:i2c i2c-0: sendbytes: NAK bailout.的错误,导致触摸屏很不稳定。最后发现是复位芯片的时候出错了。static void reset_chip(struct i2c_client *client){u8 buf[4] = {0x00};u8 tmp = 0x88; u8 temp = 0x0原创 2013-11-07 15:48:41 · 5656 阅读 · 0 评论 -
读写AT24C512的问题
需要移植AT24C512的驱动,做了一下几种实验:1.利用内核自带的驱动,内核driver/misc下面的at.c就包含了ATMEL系列的EEPROM的驱动,只需要在BROAD_INFO改下名字。然后要选中menuconfig下的misc下的eeprom选项,最后重新烧录后,就能在板子/sys/bus/i2c/device/0-0050/下看到eeprom节点,对他进行读写就可以了。但是这不是原创 2013-07-13 17:10:11 · 7642 阅读 · 0 评论 -
读写AT24C512的问题(续)
前面说了对于像AT24C512这样的内部地址是2字节的,读写遇到问题了,今天解决了,直接上代码。 unsigned char tx[2] = {0x0,0x0}; unsigned char rx[2]; unsigned char wr[3]={0x0,0x0,0x77}; ret = i2c_master_send(data->client, wr, 3);//往0x0000地原创 2013-07-14 12:56:35 · 4953 阅读 · 0 评论 -
BOA不能执行system命令
做boa时遇到个问题,需要在boa中运行一个命令,发现怎么搞都没反应,后来知道了,原来是BOA 编译的时候,它运行的PATH没有指定完全在boa.conf文件中,有这么一行:# CGIPath: The value of the $PATH environment variable given to CGI progs.CGIPath /bin:/usr/bin:/usr/loca原创 2013-07-26 15:11:01 · 1118 阅读 · 1 评论