目录

0. 前言

1. 驱动

2. Linux驱动开发

3. 总结


0. 前言

最近工作了,哪有什么尽如人意?我们需要做的就是自我救赎。一切都是自己选的。多问就行了,心里想到什么就去问什么,就去说什么,就去做什么,这就是积累经验。不能犹豫,我发现犹豫是最害人的。当然,你要是没有这个概念,那这一条对你是没有效果的。

分享一首歌,短视屏上面听到一首,虽然我也不刷什么dy之类的。DISCO——金润吉。挺有节奏感的。


1. 驱动

以下来自百度百科:

驱动,计算机软件术语,是指驱动计算机里软件的程序。驱动程序全称设备驱动程序,是添加到操作系统中的特殊程序,其中包含有关硬件设备的信息。此信息能够使计算机与相应的设备进行通信。驱动程序是硬件厂商根据操作系统编写的配置文件,可以说没有驱动程序,计算机中的硬件就无法工作。


其实在嵌入式里,所谓的驱动无非也就是驱使硬件动起来的软件程序。

        我们平时说的驱动(嵌入式里),应该是指的是裸机驱动程序。

裸机驱动开发是非常底层的,跟寄存器打交道,有些MCU为了方便我们开发,提供了一些库,让我们通过调用API函数来间接的实现利用寄存器来控制我们的裸机外设;

这样一听好像是我们平时用所谓的STM32F103C8T6,然后加上Keil,这样是不是驱动开发呢?是但又不完全是。我现在的理解是我们在学校做的这些只是什么?顶多算是控制程序?!!!差不多吧。那真正的驱动程序是什么?针对某一硬件特地编写的相关程序。这样说好像还是和裸机开发一样,但是你要清楚,工作(对,可能是我站在工作的角度去思考,我们做出来的是一个产品,我们所使用的的硬件都是自己设计,我们要根据这个硬件去编写对应他的程序,这才是驱动开发)。其实也是在裸机开发的基础上。


2. Linux驱动开发

加上Linux自然少不了带有操作系统的驱动,这个就很好理解。Linux驱动来直接操作寄存器是不现实的;Linux驱动开发需要做的是:根据Linux的驱动框架来进行开发,也就是需要掌握各种Linux驱动框架;Linux驱动最终表现为:/dev/***文件(Linux下一切皆文件)。能够打开,关闭,读写等操作;

现在的内核支持设备树,是一个.dts文件,此文件描述了板子上的所有硬件设备信息。我们可以把驱动程序加载到内核,内核通过设备树和硬件进行交流(这里面的详细信息我后面会写篇博客详细说明,我也在学习ing)。

Linux驱动开发分为3大类:

字符设备驱动:占比最多。见我的博客Linux驱动——字符驱动
块设备驱动:存储
网络设备驱动:网络

后面我也会讲别的驱动开发,敬请期待。


感谢该博主


3. 总结

一直在学习,

学习不间断,

共同进步。

驱动?Linux驱动?到底什么是驱动?相关推荐

  1. linux下磁盘控制器无法驱动,Linux eMMC子系统之主机控制器驱动(host conntroller driver)...

    1. 前言 本文是Linux MMC framework的第二篇,将从驱动工程师的角度,介绍MMC host controller driver有关的知识,学习并掌握如何在MMC framework的 ...

  2. linux如何查看硬件驱动,linux查看硬件信息及驱动设备相关整理

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 联系我登录 首页 业界新闻 技术文章 资源分享 微语 linux查看硬件信息及驱动设备相关整理[转] 蓝猫 发布于:2014-5-30 17:48 分类: ...

  3. linux检测硬件驱动,linux查看硬件信息及驱动设备相关整理

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 联系我登录 首页 业界新闻 技术文章 资源分享 微语 linux查看硬件信息及驱动设备相关整理[转] 蓝猫 发布于:2014-5-30 17:48 分类: ...

  4. linux 安装水星无线网卡驱动,Linux下安装RTL8188CE网卡驱动(Mercury MW150U)

    先说明下我的系统: kernel: 3.0.0-32-generic 今天买了个无线网卡Mercury 150Mbps MW150U系列,我发现在我的笔记本的Ubuntu 12.10下不用安装驱动就能 ...

  5. linux 查看usb驱动,linux查看硬件信息及驱动设备相关整理

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 联系我登录 首页 业界新闻 技术文章 资源分享 微语 linux查看硬件信息及驱动设备相关整理[转] 蓝猫 发布于:2014-5-30 17:48 分类: ...

  6. linux cdc设备驱动,Linux下USB CDC ACM 驱动简析

    一.硬件平台:TI AM335X 芯片 二.软件平台:Ubuntu 10.04 三.USB CDC ACM 驱动简介 USB的CDC类是USB通信设备类 (Communication Device C ...

  7. linux查看硬盘驱动,linux查看硬件信息及驱动设备相关整理

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 联系我登录 首页 业界新闻 技术文章 资源分享 微语 linux查看硬件信息及驱动设备相关整理[转] 蓝猫 发布于:2014-5-30 17:48 分类: ...

  8. linux配置无线网卡驱动,Linux无线网络配置——无线网卡驱动安装与WLAN802.11配置...

    Linux无线网络配置--无线网卡驱动安装与WLAN 802.11配置 WLAN (Wireless Local Area Network)类似于有线以太网,WLAN 的 802.11a 标准使用 5 ...

  9. blink usb无线网卡驱动 linux,最新blink随身wifi驱动下载地址电脑版-CC软件

    blink随身wifi是一款精致小巧的随身WiFi,这款软件采用采用11N无线技术,使得数据传输变得飞快,这款软件让你随时随地的可以向无线网络和局域网络带来的便利. 使用方法: 第一步,推出360安全 ...

  10. linux 服务器 安装网卡驱动,linux下安装编译网卡驱动的方法

    安装linux操作系统后发现没有网卡驱动,表现为 system → Administration → Network下Hardware列表为空. 以下为安装编译网卡驱动的过程,本人是菜鸟,以下是我从网 ...

最新文章

  1. 在symfony2项目中100%提升doctrine的性能
  2. SegmentFault Hackathon 2018 火热登场,Let's hack!
  3. AngularJS路由使用示例
  4. 调用支付宝PHP接口API实现在线即时支付功能(UTF-8编码)
  5. 腾讯人均每月薪酬成本超8万元,员工总数首次超10万
  6. 现代软件工程 10 绩效管理
  7. 对tmemorystream的一些改进_delphi教程 [转]
  8. es分页查询重复数据_ES优化 - 巨量数据如何提高查询性能
  9. 快速排序多种方法代码Python
  10. c++ 遍历所有点且距离最短_图解:最短路径之迪杰斯特拉算法
  11. 科大讯飞2019机械核心部件寿命预测,亚军方案
  12. Python open()函数文件打开、读、写基础操作
  13. qq视频转码失败怎么办_视频里提取音频的几种方法
  14. Docker 加速器
  15. Python期末复习题及代码
  16. stm32F407控制器在驱动电机等执行机构时,ADS1256采集模块出现死机现象,问题待解决
  17. MPI MPI_Bcast (广播)用法详解
  18. reco-fetch
  19. Rescue-Prime hash STARK
  20. intern string java_聊聊java String的intern

热门文章

  1. 《人机交互技术》第一章 绪论 知识点整理
  2. android流水App(记账本)--数据库实现多功能
  3. 用xlwt和xlrd在不修改Excel单元格格式的情况下修改单元格内容
  4. 大学物理第一章笔记——高等农林院校基础课程教程系列
  5. 【BAT-表姐御用05ren命令批量修改后缀】
  6. Network in Network(NIN)网络结构详解,网络搭建
  7. SVM支持向量机的损失函数解析
  8. 配置mybatis时xml出现 URI is not registed / Resource registered by this uri is not recognized 解决方法
  9. 渗透基础——命令行下安装Microsoft .NET Framework
  10. Redis面试知识点