当前位置: 代码迷 >> 综合 >> Linux驱动开发-01 linux驱动开发与裸机开发的区别
  详细解决方案

Linux驱动开发-01 linux驱动开发与裸机开发的区别

热度:10   发布时间:2024-02-28 16:57:30.0

1.裸机开发回顾

- 底层:跟寄存器打交道,有些MCU提供了库

2.  Linux驱动开发思维

- Linux下驱动开发,还是直接操作寄存器不现实

- 根据Linux下的各种驱动框架进行开发,一定要满足框架,也就是linux下各种驱动框架的掌握

- 驱动最终表现就是/dev/xxx 文件。打开/关闭/读写。。。

- 现在新的内核支持设备树,这是一个.dts文件,此文件描述了板子的设备信息

3. Linux驱动开发分类

- 字符设备,最多。 GPIO/I2C/SPI/USB

- 块设备,存储相关。 固定大小长度/扇区存取,不按照指定顺序访问。      磁盘/SSD/SD卡。。。

- 网络设备, 网卡

一个设备并不是说一定只属于某一个类型,比如USB-Wifi,SDIO-wifi,能上网属于网络设备驱动,但又是USB/SDIO接口,因此也属于字符设备驱动。