自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

朝气蓬勃

不积跬步 无以至千里, 不积小流 无以成江海

  • 博客(13)
  • 收藏
  • 关注

转载 Linux平台总线驱动设备模型

platform总线是一种虚拟的总线,相应的设备则为platform_device,而驱动则为platform_driver。Linux 2.6的设备驱动模型中,把I2C、RTC、LCD等都归纳为platform_device。总线将设备和驱动绑定,在系统每注册一个设备的时候,会寻找与之匹配的驱动;相反的,在系统每注册一个驱动的时候,会寻找与之匹配的设备,而匹配由总线完成。Linux2.6系统中定

2017-12-12 15:59:29 625

转载 linux字符驱动之异步通知按键驱动

在上一节里,我们在中断的基础上添加poll机制来实现有数据的时候就去读,没数据的时候,自己规定一个时间,如果还没有数据,就表示超时时间。在此以前,我们都是让应用程序主动去读,那有没有一种情况,当驱动程序有数据时,主动去告诉应用程序,告诉它,有数据了,你赶紧来读吧。答案当然是有的,这种情况在linux里的专业术语就叫异步通知。上一节文章链接:http://blog.csdn.net/xiaoxiao

2017-12-12 13:56:52 562

转载 linux字符驱动之poll机制按键驱动

在上一节中,我们讲解了如何自动创建设备节点,实现一个中断方式的按键驱动。虽然中断式的驱动,效率是蛮高的,但是大家有没有发现,应用程序的死循环里的读函数是一直在读的;在实际的应用场所里,有没有那么一种情况,偶尔有数据、偶尔没有数据,答案当然是有的。我们理想当然的就会想到,当有数据的时候,我们才去读它,没数据的时候我们读它干啥?岂不浪费劳动力? 上一节文章链接:http://blog.csdn.net

2017-12-12 13:42:53 586

转载 linux字符驱动之中断按键

在上一节中,我们讲解了如何自动创建设备节点,实现一个查询方式的按键驱动。测试的时候,大家都看到了,使用查询式的方法,占用CPU的利用率高达99%,那么有没有好的办法来取代这惨不忍睹的方法呢?答案当然是有的。上一节文章链接:http://blog.csdn.net/xiaoxiaopengbo/article/details/78779974这一节里,我们使用中断的方法来实现按键驱动。问:内核的中断

2017-12-12 11:18:42 637

转载 linux字符驱动之查询按键

在上一节中,我们讲解了如何自动创建设备节点,并用“最笨”的方法实现点亮LED。上一节文章链接:http://blog.csdn.net/xiaoxiaopengbo/article/details/78779897这一节里,我们基于上一节的基础上,稍微改动一下,来实现一个查询方式的按键驱动。问:既然是基于上一节的基础,只是稍微改动,改动了哪些?答:框架是不变的,还是字符设备框架,硬件操作有稍微变动

2017-12-12 10:58:05 624

转载 linux字符驱动之点亮LED

上一节中,我们讲解了如何自动创建设备节点,这一节我们在上一节的基础上,实现点亮LED。上一节文章链接:http://blog.csdn.net/lwj103862095/article/details/17470573驱动里面能够用很多种方法实现LED驱动,其中有本节的字符驱动(最笨的方法)、混杂设备驱动、使用内核GPIO函数接口、使用通用的平台设备驱动的方法等。但是,不要因为本节是最笨的方法,就

2017-12-12 10:52:42 700

转载 linux字符驱动之自动创建设备节点

上一节中,我们是手工创建设备节点,大家肯定也会觉得这样做太麻烦了。上一节文章链接:http://blog.csdn.net/xiaoxiaopengbo/article/details/78779613问:能不能让系统自动创建设备节点?答:可以,linux有udev、mdev的机制,而我们的ARM开发板上移植的busybox有mdev机制,那么就使用mdev机制来自动创建设备节点。问:文件系统里,

2017-12-12 10:47:44 745

原创 linux字符驱动之初见

学习驱动也有长达一年多的时间了,受益最深的就是看韦东山老师的视频,如今已经几乎将二期三期的视频全部看完,甚至已经将二期视频看过好几遍,为了再次加深印象,我将韦老师的源码自己全部编写一遍。将所有遇到的问题,记录在此。觉得看了韦老师的视频,再看其他视频都是弱爆了。由于是文章记录,不可能写的非常详细,只摘录关键点,想具体详细的深入,还请去看韦老大的视频吧。这篇文章是主要是讲解字符驱动的框架,并没有涉及高

2017-12-12 10:32:23 669 1

原创 linux第一个驱动之helloworld

第一个驱动——helloworld运行环境:JZ2440开发板,内核版本Linux (none) 2.6.22.6 #2 Sat Dec 2 18:58:18 CST 2017 armv4tl unknown开发环境:ubuntu 1204 虚拟机,在虚拟机gedit编辑实验环境前提条件:拥有一个制作好的NFS文件系统/**********************************hello

2017-12-12 09:54:35 763

转载 嵌入式链接脚本(Link Script)介绍

1. 概论每一个链接过程都由链接脚本(linkerscript, 一般以lds作为文件的后缀名)控制. 链接脚本主要用于规定如何把输入文件内的section放入输出文件内, 并控制输出文件内各部分在程序地址空间内的布局. 但你也可以用连接命令做一些其他事情.连接器有个默认的内置连接脚本, 可用ld--verbose查看. 连接选项-r和-N可以影响默认的连接脚本(如何影响).-T选项用以指定自己的

2017-12-07 16:58:04 5815

转载 ARM-CP15寄存器组介绍(开启I/D catch,MMU都需要此寄存器)

访问CP15寄存器指令的编码格式及语法说明如下: 31  28 27  24 23  21 20 19  16 15  12 11  8 7  5 4 3  0 cond 1 1 1 0 opcode_1 L cr n rd 1 1 1 1 opcode_2 1 crm 说明::协处理器行为操作码,对于CP15来说,永远为0b000,否则结果未知。:不

2017-12-07 16:54:07 2777

原创 arm汇编总结---让汇编不再神秘

一.指令格式{}{S}     {Rd},    {Rn},   {shifer_operand}:    指令操作符编码,如 LDR、STR 等。{}:    指令执行的条件编码,如 EQ、NE 等。{S}:  决定指令的执行是否影响 CPRS 的值。{Rd}:  目标寄存器编码。{Rn}:    包含第一个源操作数的寄存器编码。{{shifer_operand}:  第二个操作数以三星2440

2017-12-02 11:34:51 3174 1

原创 arm架构寄存器介绍

ARM处理器工作模式一共有 7 种 :USR  模式    正常用户模式,程序正常执行模式FIQ模式(Fast Interrupt Request)     处理快速中断,支持高速数据传送或通道处理IRQ模式     处理普通中断SVC模式(Supervisor)     操作系统保护模式,处理软件中断swi  reset ABT  中止(Abort mode){数据、指令}    处理存储器故障

2017-12-02 11:25:51 4862

core5.2.rar

附件为蓝牙V5.2 core文档,目前为SIG最新的协议栈文档,供蓝牙开发板工程是下载查阅.

2020-07-21

SSD1306资料.rar

0.91寸 OLED SSD1306资料(包含英文/中文数据手册/iic逻辑时序图/代码/上位机),供学习下载

2019-12-26

stm32f1_mrvl88w8801应用笔记_20191220.pdf

本文章是STM32F103驱动Marvell8801/Marvell88w8801的应用手册,包含以下篇幅 1)整体介绍篇,主要对开发板做整体介绍 2)硬件篇,主要对板子外设驱动做说明 --》主要对SSD1306 OLED介绍,SPI FLASH介绍,FATFS介绍,USB device介绍,OV7670介绍 3)Linux Wi-Fi篇,主要通过Linux来驱动Wi-Fi模组来了解Linux kernel的无线架构 4)自己实现Marvell8801驱动,主要是根据编程手册来自己实现一个SDIO Wi-Fi的驱动 5)LWIP篇,通过移植LWIP来实现驱动的应用

2019-12-20

AMS1117稳压芯片中文文档

AMS1117稳压芯片的介绍,由于不能免费,所以弄了最低分下载,如果没分可以直接找我要

2018-04-22

ARM CP15寄存器组介绍

ARM CP15组的介绍,ARM开启I/D catch,MMU只能通过这个寄存器

2017-12-07

stm32f4xx 库函数手册

stm32f4xx库函数手册

2017-05-27

stm32f407 参考手册

stm32f407 参考手册,里面包含每个寄存器的定义

2017-05-27

stm32f407 datasheet 数据手册

stm32f407 datasheet 数据手册

2017-05-27

stm32f407 管脚定义

stm32f407 pin define

2017-05-27

apue头文件

编译UNIX高级环境编程,缺少apue.h文件的解决方法

2016-02-03

STM32 UART

STM32 UART,没有使用DMA,功能是:通过串口接受到数据,进去中断,然后再发送出去

2016-02-02

STM32实现button polling & interrupt方式点亮LED

STM32实现polling & interrupt点亮LED

2016-01-29

STM32 流水灯

STM32 GPIO点亮流水灯试验(库函数版)

2016-01-26

CSR pskey英文文档+翻译文档

CSR pskey英文文档 + 翻译文档大全 适合蓝牙开发人员使用.zip

2015-12-30

unix环境高级编程(APUE)+源码

unix环境高级编程(第3版),附带源码

2015-12-24

I2C总线原理

I2C总线原理,浅显易懂(附带软件模拟I2C)

2015-12-10

网上荡的,uart资料,讲的蛮清楚,适合入门

UART讲解,适合入门·免费散了,网上淘的一片文章

2015-12-06

空空如也

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

TA关注的人

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