顶部
收藏

嵌入式软件设计


作者:
赖晓晨 张立勇 迟宗正
定价:
49.00元
ISBN:
978-7-04-055226-3
版面字数:
600.000千字
开本:
特殊
全书页数:
暂无
装帧形式:
平装
重点项目:
暂无
出版时间:
2020-12-21
读者对象:
高等教育
一级分类:
计算机/教育技术类
二级分类:
计算机科学与技术专业课程

本书基于市场占有率最高的ARM处理器、应用最广泛的嵌入式Linux操作系统和最受嵌入式程序员青睐的C语言,系统地介绍嵌入式软件工作原理、设计方法、开发工具和编程手段,同时也讲授基于Cortex核ARM处理器的裸机直接编程方法,最后通过一个“人体动作识别系统”案例,向读者展示软件工程中需求分析、系统设计、系统实现、系统测试的完整流程。

本书为新形态教材,配有完整的授课视频、PPT课件、代码源文件和工程项目文件,适合作为高校计算机和软件工程相关专业三、四年级本科生或研究生教材使用,也适合嵌入式行业相关人员自学选用。本书力争提供尽可能丰富的教学资源,使读者通过有针对性的学习,缩短理论与实践的差距,达到高效率学习的目的。

  • 前辅文
  • 第1章 绪论
    • 1.1 嵌入式系统概述
      • 1.1.1 计算机的发展和分类
      • 1.1.2 嵌入式系统概述
      • 1.1.3 嵌入式系统的组成
      • 1.1.4 嵌入式系统的发展
    • 1.2 嵌入式系统开发流程
    • 1.3 嵌入式软件设计
      • 1.3.1 嵌入式系统开发语言
      • 1.3.2 嵌入式系统开发工具
    • 1.4 本书内容简介
  • 第2章 嵌入式Linux开发环境
    • 2.1 交叉开发环境
    • 2.2 Linux开发工具链
      • 2.2.1 Linux开发工具链简介
      • 2.2.2 GNU交叉开发环境的建立
    • 2.3 编辑器
    • 2.4 编译器
      • 2.4.1 gcc简介
      • 2.4.2 gcc的基本用法
    • 2.5 链接器
    • 2.6 调试器
    • 2.7 自动化编译配置文件
      • 2.7.1 自动化编译配置文件简介
      • 2.7.2 Makefile规则
      • 2.7.3 Makefile的变量
      • 2.7.4 Makefile的执行
      • 2.7.5 make命令的内嵌函数
      • 2.7.6 make命令的常见错误信息
  • 第3章 嵌入式系统软件平台构建
    • 3.1 嵌入式系统软件平台概述
    • 3.2 BootLoader
      • 3.2.1 BootLoader概述
      • 3.2.2 BootLoader框架
      • 3.2.3 BootLoader代码分析
      • 3.2.4 vivi
    • 3.3 内核编译
      • 3.3.1 2.4版本嵌入式Linux操作系统内核编译
      • 3.3.2 2.6版本嵌入式Linux操作系统内核编译
    • 3.4 BusyBox
    • 3.5 文件系统
      • 3.5.1 Linux系统中常见的文件系统
      • 3.5.2 构建YAFFS2文件系统
    • 3.6 应用程序设计流程
      • 3.6.1 交叉编译
      • 3.6.2 执行程序
  • 第4章 嵌入式C语言基础
    • 4.1 嵌入式C语言概述
      • 4.1.1 C语言的历史和特点
      • 4.1.2 预处理指令
      • 4.1.3 位运算
      • 4.1.4 函数指针
      • 4.1.5 C程序的移植
    • 4.2 GNU C扩展
    • 4.3 嵌入式C程序架构
      • 4.3.1 嵌入式C程序
      • 4.3.2 人机界面
      • 4.3.3 指针的使用方法
    • 4.4 ARM C程序设计优化
      • 4.4.1 编译器的特性
      • 4.4.2 数据类型对程序效率的影响
      • 4.4.3 循环方式对程序效率的影响
      • 4.4.4 指针对程序效率的影响
      • 4.4.5 边界对齐对程序效率的影响
    • 4.5 C语言编程规范
  • 第5章 嵌入式Linux 程序设计基础
    • 5.1 错误处理机制
      • 5.1.1 C语言的错误处理机制
      • 5.1.2 系统日志文件
    • 5.2 文件目录和内存操作
      • 5.2.1 文件操作
      • 5.2.2 目录操作
      • 5.2.3 内存操作
    • 5.3 进程控制
      • 5.3.1 创建进程
      • 5.3.2 exec系统调用
      • 5.3.3 等待进程结束
      • 5.3.4 杀死进程
    • 5.4 线程控制
      • 5.4.1 线程概述
      • 5.4.2 多线程程序设计方法
      • 5.4.3 线程同步
      • 5.4.4 线程属性
      • 5.4.5 线程取消
    • 5.5 Linux库
      • 5.5.1 Linux库概述
      • 5.5.2 库操作工具
      • 5.5.3 静态库
      • 5.5.4 共享库
      • 5.5.5 动态链接库
  • 第6章 嵌入式Linux 程序设计进阶
    • 6.1 信号
      • 6.1.1 信号概述
      • 6.1.2 信号相关函数
      • 6.1.3 信号集相关函数
      • 6.1.4 其他信号相关函数
    • 6.2 管道
      • 6.2.1 无名管道
      • 6.2.2 有名管道
    • 6.3 信号量
      • 6.3.1 信号量概述
      • 6.3.2 信号量相关函数
      • 6.3.3 信号量处理函数程序示例
    • 6.4 共享内存
      • 6.4.1 共享内存简介
      • 6.4.2 共享内存操作函数
      • 6.4.3 共享内存程序示例
    • 6.5 消息队列
      • 6.5.1 消息队列简介
      • 6.5.2 消息队列操作函数
      • 6.5.3 消息队列程序示例
  • 第7章 嵌入式Linux内核驱动程序设计
    • 7.1 Linux内核模块
      • 7.1.1 Linux内核模块概述
      • 7.1.2 Linux内核模块实例
      • 7.1.3 Linux内核模块实现机制
    • 7.2 Linux驱动程序工作原理
      • 7.2.1 设备驱动程序概述
      • 7.2.2 设备驱动程序接口
    • 7.3 Linux内核虚拟驱动程序设计实例
      • 7.3.1 Linux 2.4内核虚拟驱动程序
      • 7.3.2 Linux 2.6内核虚拟驱动程序
    • 7.4 ARM9/Linux 2.4内核驱动程序设计实例
      • 7.4.1 蜂鸣器驱动程序设计实例
      • 7.4.2 ADC驱动程序设计实例
      • 7.4.3 中断驱动程序设计实例
    • 7.5 ARM9/Linux 2.6内核驱动程序设计实例
      • 7.5.1 按键驱动程序设计实例
      • 7.5.2 PWM驱动程序设计实例
  • 第8章 STM32F103软件设计
    • 8.1 外部按键中断
      • 8.1.1 工作原理
      • 8.1.2 电路介绍
      • 8.1.3 软件设计
    • 8.2 定时器中断
      • 8.2.1 工作原理
      • 8.2.2 电路介绍
      • 8.2.3 软件设计
    • 8.3 PWM流水灯
      • 8.3.1 工作原理
      • 8.3.2 软件设计
    • 8.4 LED点阵
      • 8.4.1 工作原理
      • 8.4.2 电路介绍
      • 8.4.3 软件设计
    • 8.5 步进电机
      • 8.5.1 工作原理
      • 8.5.2 电路介绍
      • 8.5.3 软件设计
  • *第9章 STM32F401软件设计
    • 9.1 独立看门狗
      • 9.1.1 工作原理
      • 9.1.2 模块结构
      • 9.1.3 软件设计
    • 9.2 通用异步接收发送设备
      • 9.2.1 工作原理
      • 9.2.2 电路介绍
      • 9.2.3 软件设计
    • 9.3 实时时钟
      • 9.3.1 工作原理
      • 9.3.2 软件设计
    • 9.4 字符型LCD
      • 9.4.1 工作原理
      • 9.4.2 电路介绍
      • 9.4.3 软件设计
    • 9.5 温度传感器
      • 9.5.1 工作原理
      • 9.5.2 电路介绍
      • 9.5.3 软件设计
  • 第10章 嵌入式系统综合案例设计
    • 10.1 功能描述
    • 10.2 理论基础
      • 10.2.1 动作识别理论基础
      • 10.2.2 MPU9250简介
      • 10.2.3 四元数与欧拉角
    • 10.3 系统概述
      • 10.3.1 系统架构
      • 10.3.2 目标机
      • 10.3.3 上位机
    • 10.4 人体动作识别系统设计与实现
      • 10.4.1 传感器节点
      • 10.4.2 基站
      • 10.4.3 无线通信协议
      • 10.4.4 上位机
    • 10.5 系统测试
      • 10.5.1 测试环境
      • 10.5.2 测试结果
  • 附录
  • 参考文献

相关图书