《发货快》C++嵌入式开发实例精解 [美]艾格尔·威亚契克 著,刘颙
二手会有少量涂画,整体不影响再次阅读使用!套装不一定齐全,请下单前咨询在线客服!
¥
119
¥
119
八五品
仅1件
作者[美]艾格尔·威亚契克 著,刘颙 译
出版社清华大学出版社
ISBN9787302607809
出版时间2022-07
版次1
装帧平装
开本16开
纸张胶版纸
页数328页
字数99999千字
定价119元
货号9787302607809
上书时间2024-11-15
商品详情
- 品相描述:八五品
- 商品描述
-
基本信息
书名:C++嵌入式开发实例精解
定价:119.00元
作者:[美]艾格尔·威亚契克 著,刘颙 译
出版社:清华大学出版社
出版日期:2022-07-01
ISBN:9787302607809
字数:439000
页码:328
版次:
装帧:平装
开本:16开
商品重量:
编辑推荐
随着硬件开发的不断进步,越来越多的嵌入式系统由廉价而强大的系统芯片驱动,甚至能够运行通用的多任务系统,如Linux。不断增长的硬件能力需要我们编写更加复杂的软件,因此,C 越来越多地成为新的嵌入式系统的shou选语言。C 允许开发人员创建使用计算和内存资源的应用程序,就像使用C语言编写的应用程序一样,但为开发人员提供了更多的工具处理复杂性和更安全的资源管理问题,如面向对象编程和RAII习惯用法。
内容提要
《C++嵌入式开发实例精解》详细阐述了与C++嵌入式开发相关的基本解决方案,主要包括嵌入式系统的基础知识,配置开发环境,与不同的体系结构协同工作,处理中断,调试、日志和分析,内存管理,多线程和同步机制,通信和序列化,外围设备,降低功耗,时间点和时间间隔,错误处理和容错机制,实时系统、安全性系统的指导原则,微控制器编程等内容。 此外,《C++嵌入式开发实例精解》还提供了相应的示例、代码,以帮助读者进一步理解相关方案的实现过程。 《C++嵌入式开发实例精解》适合作为高等院校计算机及相关专业的教材和教学参考书,也可作为相关开发人员的自学用书和参考手册。
目录
章 嵌入式系统的基础知识 11.1 考查嵌入式系统 11.1.1 与台式机或Web应用程序的不同之处 11.1.2 嵌入式系统的类型 21.1.3 微控制器 21.1.4 片上系统 31.1.5 专用集成电路 41.1.6 现场可编程门阵列 41.2 与有限的资源协同工作 41.3 考查性能影响 41.4 与不同的架构协同工作 51.4.1 字节顺序 51.4.2 对齐问题 71.4.3 定宽整数类型 81.5 处理硬件错误 81.5.1 硬件的早期版本 81.5.2 硬件的不可靠性 91.5.3 环境条件的影响 91.6 C++嵌入式开发 91.6.1 不必为无用的事务付诸实践 101.6.2 基于面向对象编程的代码复杂度计算 121.6.3 资源获取时即初始化 121.6.4 异常机制 141.6.5 强大的标准库 161.6.6 线程和内存模型 161.7 远程部署软件 171.8 远程运行软件 181.9 日志和诊断 181.10 本章小结 19第2章 配置开发环境 212.1 在Docker容器中配置构建系统 222.1.1 实现方式 222.1.2 工作方式 232.1.3 更多内容 242.2 与模拟器协同工作 242.2.1 实现方式 252.2.2 工作方式 252.2.3 更多内容 272.3 交叉编译 272.3.1 准备工作 272.3.2 实现方式 272.3.3 工作方式 282.3.4 更多内容 312.4 连接至嵌入式系统 312.4.1 准备工作 312.4.2 实现方式 312.4.3 工作方式 322.4.4 更多内容 332.5 调试嵌入式应用程序 342.5.1 准备工作 342.5.2 实现方式 342.5.3 工作方式 352.5.4 更多内容 362.6 针对远程调试使用gdbserver 372.6.1 准备工作 372.6.2 实现方式 372.6.3 工作方式 382.6.4 更多内容 392.7 使用CMake作为构建系统 402.7.1 准备工作 402.7.2 实现方式 402.7.3 工作方式 412.7.4 更多内容 44第3章 与不同的体系结构协同工作 453.1 定宽整数类型 453.1.1 实现方式 463.1.2 工作方式 473.1.3 更多内容 483.2 处理size_t类型 483.2.1 实现方式 483.2.2 工作方式 493.2.3 更多内容 503.3 检测平台的字节顺序 503.3.1 实现方式 513.3.2 工作方式 523.3.3 更多内容 533.4 转换字节顺序 533.4.1 实现方式 543.4.2 工作方式 573.5 处理数据对齐问题 583.5.1 实现方式 593.5.2 工作方式 603.5.3 更多内容 613.6 处理打包结构 613.6.1 实现方式 623.6.2 工作方式 623.6.3 更多内容 633.7 缓存行对齐数据 633.7.1 实现方式 633.7.2 工作方式 653.7.3 更多内容 66第4章 处理中断 674.1 数据轮询 674.2 中断服务程序 684.3 对ISR的一般考虑 684.4 8051微控制器中断 694.5 实现中断服务程序 704.5.1 实现方式 704.5.2 工作方式 724.6 通过8位自动重载模式生成一个5 kHz的方波信号 734.6.1 实现方式 744.6.2 工作方式 754.7 使用Timer 1作为事件计数器计数一个1 Hz脉冲 764.7.1 实现方式 764.7.2 工作方式 784.7.3 更多内容 794.8 串行接收和传输数据 794.8.1 实现方式 804.8.2 工作方式 804.8.3 更多内容 81第5章 调试、日志和分析 835.1 技术需求 835.2 在GDB中运行源程序 845.2.1 实现方式 845.2.2 工作方式 865.2.3 更多内容 905.3 处理断点 915.3.1 实现方式 915.3.2 工作方式 925.3.3 更多内容 965.4 处理核心转储 965.4.1 实现方式 965.4.2 工作方式 975.4.3 更多内容 995.5 使用gdbserver进行调试 995.5.1 准备工作 1005.5.2 实现方式 1005.5.3 工作方式 1005.6 添加调试日志机制 1015.6.1 实现方式 1015.6.2 工作方式 1025.6.3 更多内容 1045.7 与调试和发布版本协同工作 1045.7.1 实现方式 1055.7.2 工作方式 1065.7.3 更多内容 108第6章 内存管理 1096.1 使用动态内存分配 1096.1.1 实现方式 1106.1.2 工作方式 1126.2 对象池 1126.2.1 实现方式 1136.2.2 工作方式 1156.2.3 更多内容 1186.3 环状缓冲区 1186.3.1 实现方式 1196.3.2 工作方式 1216.4 使用共享内存 1246.4.1 实现方式 1256.4.2 工作方式 1286.4.3 更多内容 1316.5 使用专用内存 1316.5.1 实现方式 1316.5.2 工作方式 1336.5.3 更多内容 135第7章 多线程和同步机制 1377.1 C++语言中的线程支持 1377.1.1 实现方式 1387.1.2 工作方式 1397.2 数据同步机制 1407.2.1 实现方式 1407.2.2 工作方式 1417.2.3 更多内容 1437.3 使用条件变量 1437.3.1 实现方式 1437.3.2 工作方式 1457.3.3 更多内容 1477.4 使用原子变量 1477.4.1 实现方式 1487.4.2 工作方式 1507.4.3 更多内容 1517.5 使用C++内存模型 1527.5.1 实现方式 1527.5.2 工作方式 1547.5.3 更多内容 1557.6 无锁同步机制 1557.6.1 实现方式 1557.6.2 工作方式 1577.6.3 更多内容 1587.7 在共享内存中使用原子变量 1597.7.1 实现方式 1597.7.2 工作方式 1627.8 异步函数和特性 1647.8.1 实现方式 1657.8.2 工作方式 1667.8.3 更多内容 168第8章 通信和序列化 1698.1 在应用程序中使用进程间的通信 1698.1.1 实现方式 1708.1.2 工作方式 1728.1.3 更多内容 1758.2 进程间的通信机制 1758.2.1 准备工作 1758.2.2 实现方式 1768.2.3 工作方式 1778.2.4 更多内容 1788.3 消息队列和发布者-订阅者模式 1788.3.1 实现方式 1798.3.2 工作方式 1828.3.3 更多内容 1848.4 针对回调使用C++ lambda函数 1858.4.1 实现方式 1858.4.2 工作方式 1868.4.3 更多内容 1878.5 数据序列化 1878.5.1 实现过程 1888.5.2 工作方式 1908.5.3 更多内容 1918.6 使用FlatBuffers库 1928.6.1 实现方式 1928.6.2 工作方式 1948.6.3 更多内容 195第9章 外围设备 1979.1 控制通过GPIO连接的设备 1979.1.1 实现方式 1979.1.2 工作方式 1999.2 脉冲宽度调制 2019.2.1 实现方式 2019.2.2 工作方式 2039.2.3 更多内容 2049.3 在Linux中使用ioctl访问实时时钟 2049.3.1 实现方式 2059.3.2 工作方式 2079.3.3 更多内容 2089.4 使用libgpiod控制GPIO引脚 2089.4.1 实现方式 2099.4.2 工作方式 2109.4.3 更多内容 2119.5 控制I2C外围设备 2119.5.1 实现方式 2129.5.2 工作方式 2169.5.3 更多内容 2190章 降低功耗 22110.1 技术需求 22110.2 考查Linux中的节能模式 22110.2.1 实现方式 22210.2.2 工作方式 22310.2.3 更多内容 22410.3 利用RTC进行唤醒 22410.3.1 实现方式 22410.3.2 工作方式 22510.3.3 更多内容 22610.4 控制USB设备的自动挂起 22610.4.1 实现方式 22610.4.2 工作方式 22710.4.3 更多内容 22910.5 配置CPU频率 23010.5.1 实现方式 23010.5.2 工作方式 23110.5.3 更多内容 23510.6 等待事件 23510.6.1 实现方式 23510.6.2 工作方式 23810.6.3 更多内容 24110.7 利用PowerTOP分析功耗 24110.7.1 实现方式 24110.7.2 工作方式 24210.7.3 更多内容 2441章 时间点和时间间隔 24511.1 C++ Chrono库 24511.1.1 实现方式 24511.1.2 工作方式 24611.1.3 更多内容 24711.2 测量时间间隔 24711.2.1 实现方式 24811.2.2 工作方式 24911.2.3 更多内容 25011.3 处理延迟问题 25011.3.1 实现方式 25011.3.2 工作方式 25211.3.3 更多内容 25311.4 使用单调递增时钟 25411.4.1 实现方式 25411.4.2 工作方式 25611.4.3 更多内容 25711.5 使用POSIX时间戳 25811.5.1 实现方式 25811.5.2 工作方式 25911.5.3 更多内容 2602章 错误处理和容错机制 26112.1 处理错误代码 26112.1.1 实现方式 26112.1.2 工作方式 26412.1.3 更多内容 26512.2 针对错误处理使用异常 26512.2.1 实现方式 26612.2.2 工作方式 26712.2.3 更多内容 26912.3 捕捉异常时使用常量引用 26912.3.1 实现方式 26912.3.2 工作方式 27112.3.3 更多内容 27212.4 处理静态对象 27312.4.1 实现方式 27312.4.2 工作方式 27512.5 与定时器协同工作 27612.5.1 实现方式 27712.5.2 工作方式 27812.6 高可用系统的心跳信号 28012.6.1 实现方式 28012.6.2 工作方式 28312.6.3 更多内容 28712.7 实现软件反抖动逻辑 28712.7.1 实现方式 28712.7.2 工作方式 289
作者介绍
序言
— 没有更多了 —
以下为对购买帮助不大的评价