微信扫一扫联系客服

微信扫描二维码

进入报告厅H5

关注报告厅公众号

329

电子书-用树莓派开发Linux驱动程序--实用实验室(英)

# 计算机 # 操作系统 # 嵌入式系统 大小:5.95M | 页数:648 | 上架时间:2022-04-03 | 语言:英文

电子书-用树莓派开发Linux驱动程序--实用实验室(英).pdf

电子书-用树莓派开发Linux驱动程序--实用实验室(英).pdf

试看10页

类型: 电子书

上传者: 二一

出版日期: 2022-04-03

摘要:

Linux Driver Development with Raspberry Pi - Practical Labs

Embedded systems have become an integral part of our daily life. They are deployed in mobile devices, networking infrastructure, home and consumer devices, digital signage, medical imaging, automotive infotainment and many other industrial applications. The use of embedded systems is growing exponentially. Many of these embedded systems are powered by an inexpensive yet powerful system-on-chip (SoC) that is running a Linux operating system. The BCM2837 from Broadcom is one of these SoCs, running quad ARM Cortex A53 cores at 1.2GHz. This is the SoC used in the popular Raspberry Pi 3 boards.

This book follows the learning by doing approach, so you will be playing with your Raspberry Pi since the first chapter. Besides the Raspberry Pi board, you will use several low-cost boards to develop the hands-on examples. In the labs, it is described what each step means in detail so that you can use your own hardware components adapting the content of the book to your needs.

You will learn how to develop Linux drivers for the Raspberry Pi boards. You will start with the simplest ones that do not interact with any external hardware, then you will develop Linux drivers that manage different kind of devices: Accelerometer, DAC, ADC, RGB LED, Buttons, Joystick controller, Multi-Display LED controller and I/O expanders controlled via I2C and SPI buses. You will also develop DMA drivers, USB device drivers, drivers that manage interrupts and drivers that write and read on the internal registers of the SoC to control its GPIOs. To ease the development of some of these drivers, you will use different types of Linux kernel subsystems: Miscellaneous, LED, UIO, USB, Input and Industrial I/O. More than 30 kernel modules have been written (besides several user applications), which can be downloaded from the book's GitHub repository.

This book uses the Long Term Support (LTS) Linux kernel 5.4, which was released on November 2019 and will be maintained until December 2025. The Linux drivers and applications developed in the labs have been ported to three different Raspberry Pi boards: Raspberry Pi 3 Model B, Raspberry Pi 3 Model B+ and Raspberry Pi 4 Model B.

This book is a learning tool to start developing drivers without any previous knowledge about this field, so the intention during its writing has been to develop drivers without a high level of complexity that both serve to reinforce the main driver development concepts and can be a starting point to help you to develop your own drivers. And, remember that the best way to develop a driver is not to write it from scratch. You can reuse free code from similar Linux kernel mainline drivers. All the drivers written throughout this book are GPL licensed, so you can modify and redistribute them under the same license.

用Raspberry Pi开发Linux驱动--实用实验室


嵌入式系统已经成为我们日常生活中不可或缺的一部分。它们被部署在移动设备、网络基础设施、家庭和消费者设备、数字标牌、医疗成像、汽车信息娱乐和许多其他工业应用中。嵌入式系统的使用正在成倍增长。这些嵌入式系统中有许多是由运行Linux操作系统的廉价而强大的片上系统(SoC)提供动力。博通公司的BCM2837是这些SoC之一,以1.2GHz的频率运行四颗ARM Cortex A53内核。这是流行的Raspberry Pi 3板中使用的SoC。


本书采用边做边学的方法,所以你从第一章开始就会玩你的Raspberry Pi。除了Raspberry Pi板,你还将使用几种低成本的板子来开发实践中的例子。在实验中,详细描述了每一步的含义,这样你就可以使用自己的硬件组件,使书中的内容适应你的需要。


你将学习如何为Raspberry Pi板开发Linux驱动程序。你将从最简单的、不与任何外部硬件交互的驱动开始,然后你将开发管理不同种类设备的Linux驱动。加速器、DAC、ADC、RGB LED、按钮、操纵杆控制器、多显示器LED控制器以及通过I2C和SPI总线控制的I/O扩展器。你还将开发DMA驱动、USB设备驱动、管理中断的驱动以及在SoC内部寄存器上读写以控制其GPIO的驱动。为了简化其中一些驱动程序的开发,你将使用不同类型的Linux内核子系统。杂项、LED、UIO、USB、输入和工业I/O。已经写了30多个内核模块(除了几个用户应用程序),这些模块可以从本书的GitHub仓库下载。


本书使用长期支持(LTS)的Linux内核5.4,该内核于2019年11月发布,将维护到2025年12月。在实验室中开发的Linux驱动程序和应用程序已被移植到三种不同的Raspberry Pi板上。Raspberry Pi 3 Model B、Raspberry Pi 3 Model B+和Raspberry Pi 4 Model B。


本书是一个学习工具,可以在没有任何关于这个领域的知识的情况下开始开发驱动,所以在写作过程中,我们的意图是开发出没有高度复杂性的驱动,既可以起到巩固主要驱动开发概念的作用,又可以成为帮助你开发自己的驱动的一个起点。而且,请记住,开发驱动程序的最好方法不是从头开始编写。你可以重新使用类似的Linux内核主线驱动程序的免费代码。本书中写的所有驱动程序都是GPL许可的,所以你可以在相同的许可下修改和重新发布它们。

展开>> 收起<<

请登录,再发表你的看法

登录/注册

二一

相关文库

更多

浏览量

(221)

下载

(5)

收藏

分享

购买

5积分

0积分

原价5积分

VIP

*

投诉主题:

  • 下载 下架函

*

描述:

*

图片:

上传图片

上传图片

最多上传2张图片

提示

取消 确定

提示

取消 确定

提示

取消 确定

积分充值

选择充值金额:

30积分

6.00元

90积分

18.00元

150+8积分

30.00元

340+20积分

68.00元

640+50积分

128.00元

990+70积分

198.00元

1640+140积分

328.00元

微信支付

余额支付

积分充值

填写信息

姓名*

邮箱*

姓名*

邮箱*

注:填写完信息后,该报告便可下载

选择下载内容

全选

取消全选

已选 1