自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

xiaopangzi313的专栏

平凡的世界

  • 博客(9)
  • 资源 (30)
  • 收藏
  • 关注

原创 Linux Input子系统浅析(二)-- 模拟tp上报键值

通过前一节的分析得到,linux Input子系统上传数据本质上是将input_dev的数据,上报给input_handler,当用户读入event时,驱动层只需要利用copy_to_user将数据传递至用户空间。当然,以上只是内核中Linux input的机制,作为驱动工程师我们该如何使用input子系统呢?考虑到部分读者没有嵌入式设备,作者从一个虚拟嵌入式设备的编写,描述Input

2016-08-31 12:36:04 3976 2

原创 Linux Input子系统浅析(一)-- MTK6735M(Android6.0)平台内核实现

Linux输入设备总类繁杂,常见的包括有按键、键盘、触摸屏、鼠标、摇杆等等,他们本身就是字符设备,而linux内核将这些设备的共同性抽象出来,简化驱动开发建立了一个input子系统。  驱动层和硬件相关,直接捕捉和获取硬件设备的数据信息等(包括触摸屏被按下、按下位置、鼠标移动、键盘按下等等),然后将数据信息报告到核心层。核心层负责连接驱动层和事件处理层,设备驱动(device driv

2016-08-29 15:35:50 1881 1

原创 MTK6735(Android6.0)-按键灯的实现

一、按键灯的简介    最近调试一下按键灯,今天抽空顺便把的流程分析了一下。按键灯也是一种led,它的使用规则如命名一样,当按键按下亮灯,如果一定时间不操作的话,一会会灭灯。其实这里的按键灯亮灭策略通常不是驱动来完成的,而是有用户空间来控制。正如一句老话“驱动注重的不是策略,而是机制”;所以我们在编写驱动只需要完成led的点亮和熄灭功能即可。当然在实际使用中我们会发现不是所有驱动都如此

2016-08-27 17:10:57 4246 4

原创 MTK6580(Android6.0)-使用DTS注册平台设备、匹配平台驱动

平台总线是Linux中非常重要的总线,在各种驱动中我们经常能够看到platform设备和驱动,而内核自从引入dts机制后, platform_device_register已经不推荐使用,本章着重从dts作为切入点重新分析平台设备注册和匹配过程。 DTS是Device Tree Source的缩写,用来描述设备的件硬细节。在去过的ARM Linux中,arch/arm/plat-xxx和a

2016-08-26 22:16:43 3757

转载 DBI接口与DPI接口与DSI接口

(1)DBI接口       A,也就是通常所讲的MCU借口,俗称80 system接口。The lcd interface between host processor and LCM device list as below,The LCM driver will repeated update panel display。MCU借口通过并行接口传输控制命令和数据,并通过往LCM模组自

2016-08-20 21:36:39 566

转载 platform_device与platform_driver

做Linux方面也有三个多月了,对代码中的有些结构一直不是很明白,比如platform_device与platform_driver一直分不清关系。在网上搜了下,做个总结。两者的工作顺序是先定义platform_device -> 注册 platform_device->,再定义 platform_driver-> 注册 platform_driver。 (1)platform_devic

2016-08-20 21:27:27 332

原创 MTK6580(Android6.0)-camera 驱动分析

一、MTK6580 平台 Camera 驱动整体框架mtk平台三大件调试中,camera的调试难度最大,问题也就最多,为此特地分析了一下整个camera驱动部分实现过程,以下为camera驱动框架序列图:      从图中可以看出,整个框架分为三个部分hal部分逻辑调用,kernel层的通用驱动sensorlist.c 和具体IC的驱动xxxx_mipi_raw.c,kerne

2016-08-14 19:17:40 10305 1

原创 展讯7731C_M Android6.0 充电指示灯实现(二)------开机充电实现

上一节已经了解了展讯7731C_M Android6.0 充电指示灯实的关机部分,这一节主要介绍开机部分,也就是kernel部分。kernel 部分主要功能是提供对硬件led控制接口,如设置亮度,获取亮度,设置颜色等。一、整个guide-led 驱动调用逻辑序列图下二、驱动框架的具体实现1.定义平台驱动结构,注册platform 驱动文件:kernel/driv

2016-08-13 15:34:02 2302 2

原创 展讯7731C_M Android6.0 充电指示灯实现(一)------关机充电实现

前言:            在手机充电中常常使用充电指示灯来观察手机充电状态,比如说将手机插上USB线充电时指示灯会亮,如果拔出USB,指示灯会灭,在充电时候通常我们设置电池电量0~90%时,指示灯为红色,电量为90%~100%时候,显示为绿色。当然充电又分为开机充电和关机充电,本文着重从关机充电模式讲解guide-led的实现机制一、关机充电下,指示灯实现整体流程框架

2016-08-12 20:14:37 4823

qemux64 + ovmf.fd + busybox-img + fwts

1. qemux64 2. ovmf.fd 3. busybox-img, 4. fwts-live-22.03.00-x86_64.img, 5. qemu 启动脚本(双击即可运行)

2022-05-03

2020-UEFI docs packages-all.7z

都是一些opensource的资源, 为什么大家都要漫天要积分,实在忍不了,吐血上传,UEFI/BIOS 书籍列表如下: 1. Beyond_BIOS_Second_Edition_Digital_Edition_(15-12-10)破解_index.pdf 2. UEFI原理与编程.pdf 3. UEFI Spec 2.8B May 2020.pdf 4. PI_Spec_1_7_A_final_May1.pdf 5. UEFI_Shell_2_2.pdf 6. edk-ii-dec-specification.pdf 7. edk-ii-dsc-specification.pdf 8. Driver Writer’s Guide.pdf 9. SMBIOS_DSP0134_3.4.0a.pdf 10. ACPI_6_3_May16.pdf 11. PCI_Express_Base_r3.0_10Nov10.pdf

2020-07-03

SMBIOS_DSP0134_3.4.0a.pdf

SMBIOS 最新2020 Spec, BIOS 开发Engineer 必备,结合code看效果更佳。

2020-07-02

UEFI Spec 2.8B May 2020.pdf

UEFI Spec 2.8B , 2020年5月最新版本, BIOS,FW 工程师必备。仔细研读,绝对有所收获

2020-07-02

IA32 EDS 三卷 (SDM).7z

Intel IA32/X64 EDS 手册,BIOS/UEFI开发必备。一共三卷,sdm-vol-1,sdm-vol-2abcd,sdm-vol-3abcd,仔细研读绝对有收获。

2020-06-30

手动生成haa_xxx. xml文件并测试

基于python + opencv的haar_xxx.xml生成和测试程序,下载直接运行即可,由于图片采集部分使用url爬虫,若链接失效,须手动更换或者手动下载图片集

2017-12-28

python 12306 查询余票代码

基于Python的12306余票查询,使用request模块,用cmd终端显示,并保存结果至txt文件

2017-12-21

基于CNN的静态手势识别系统

基于CNN的静态手势识别系统,完整代码实现,可以基于二值化模型和高斯肤色模型对手掌分割,不包含训练好的CNN权值文件,需要的可以看博客另外下载。

2017-12-20

使用C、C++、Java实现面向对象demo

使用C、C++、Java实现面向对象demo,对面向对象的学习有较深刻的理解

2017-01-23

linux_googlechrome&chomedriver

ubuntu 14.4LTS googlechrome何chomedriver,其中googlechrome和chomedriver版本分别为55.0.2883.87和2.25.426924,已经经过测试可以使用。

2017-01-19

windows posix 线程库

windwos 下的posix pthread库,可以直接移植Linux下的多线程代码,到window运行

2016-10-11

虚拟touch实现

使用模拟touchpanel注册和使用input设备

2016-08-31

adb 中 sqlite3 程序和依赖库支持(Android 4.0 以上和以下版本)

小米手机4 移植 sqlite3 , 解决 sqlite3

2016-01-25

adb putty 工具非常好的android 调试工具

adb putty 非常好的工具,包含 路径自动不全功能,省去了 dos 界面的麻烦

2015-03-13

MTK 平台 camera 驱动总结

此文档 为资深MTK 驱动工程师,总结而成,从应用到底层,详细分析,让初学者能够 很快的掌握 camera 在MTK 平台是如何进行调度的 注:此文档仅供学习之用,请勿用于商业用途

2015-02-07

Apache http 协议包大集合

含有 老罗Android 视频中所有http 协议 jar 包 ,全部apache 接口,有做Android 网路高级编程的可以下载使用

2014-07-14

俄罗斯方块-shell源码

俄罗斯方块-shell源码,全套shell源码,带注释,绝对的金典。

2013-11-15

视频服务器移植-v4l2.zip

视频服务器移植-v4l2.zip ,全套的工具源码,带注释,喜欢编程的同仁一定不要错过。

2013-11-15

最新wireshark中文使用教程.rar

最新wireshark中文使用教程,内带wareshark工具和使用手册,网络开发人员必备

2013-11-15

数据结构-C源码实现

数据结构、C实现、算法编程必备,5天数据结构从入门到精通

2013-11-15

Jeffy vim配置神器

Jeffy--vim配置神器,全套的shell脚本带中文注释,喜欢linux的编程的程序员绝对不容错过

2013-11-15

sqlite3-源码加deb包

sqlite3-源码 deb包,全部C 实现,喜欢源码的可以研究源码不喜欢的可以直接安装deb包

2013-11-15

vim配置神器

vim 配置 神器,具备代码自动补全,代码查找功能,非常强大

2013-11-15

pcap 抓包源码

pcap 抓包源码,原创资源有利于大家共同学习

2013-11-15

linux 编辑神器sublime text2

linux 编辑神器sublime text2

2013-11-15

LPC11C14(M0)全套裸板驱动下载

非常好强大的裸板驱动,就算没有原理图和硬件图,看代码收获也不小啊

2013-06-18

12864的综合运用

12864 综合 运用,全套的工程文件,可完全移植

2011-07-27

51 函数发生器外加程序

51 函数发生器原理图,外加程序 void delayUser(uint16 User) { while(User--); } char Key_Press(char key) { if(!KEY1){key += 1;while(!KEY1);} else{ if(!KEY2){key -= 1;while(!KEY2);} // else{ // if(!KEY3){key = 3;while(!KEY3);} // else{ // if(!KEY4){key = 4;while(!KEY4);} // else key = 0; // } // } } if(key == 0) key = 4; if(key == 5) key = 1; return key; } void main() { uint16 data x; uint8 data key = 1; P3 |= 0x3c; while(1) { P2 &= 0xf0; key = Key_Press(key); if(key == 1){ //正弦 LED1 = 1; // for(x=0;x<256;x+=2) for(x=0;x<256;x++) { DAC0832_PORT=ZXB_code[x]; // _nop_(); } } if(key == 2){ //三角 LED2 = 1; // for(x=0;x<252;x+=4){ for(x=0;x<256;x++){ DAC0832_PORT = x; // _nop_(); } // for(x=252;x>0;x-=4){ for(x=255;x>0;x--){ DAC0832_PORT = x; // _nop_(); } } if(key == 3){ //方波 LED3 = 1; for(x=0;x<100;x++){ DAC0832_PORT = 0xff; delayUser(1); } for(x=100;x>0;x--){ DAC0832_PORT = 0x00; delayUser(1); } } if(key == 4){ //锯齿 LED4 = 1; for(x=0;x<256;x++){ DAC0832_PORT = x; // _nop_(); } } } */ }

2011-06-07

lCD240320全部资料

240320液晶显示,有图形显示,汉字,字符显示

2011-06-03

240320液晶的讲解,及程序分析

关于240320液晶控制的描述: 写数据函数 void WriteData(uchar dat) { RWcheck(); CD1=0; //数据 LCD_BUS=dat; WR1=0; WR1=1;// } 写命令函数 void WriteCmd1(unsigned char cmd) { RWcheck(); CD1=1; LCD_BUS=cmd; WR1=0; WR1=1; }

2011-05-30

空空如也

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

TA关注的人

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