本书旨在帮助读者深入理解嵌入式系统的体系结构、软硬件工作原理,嵌入式系统设计和软件开发所需的基础知识和思维方法,以及嵌入式系统互联(即物联网)的基础知识和编程应用。在内容组织方面,本书分为四大部分,分别为导论(第 1 章)、嵌入式系统的基本原理(第 2~3 章)、嵌入式系统设计(第 4~6 章)、嵌入式系统互联(第 7~8 章)。本书将课内理论讲解结合课内验证和课外实践,不仅理论知识覆盖较全,而且重视实践验证和应用,提供大量动手实践和验证的环节,理论知识的应用场景始终以自制开源板的应用为线索。 本书适合高等院校自动化、机电一体化、测控技术、电子信息工程等相关专业本科高年级学生或硕士生使用,也可供这些领域的工程技术人员参考。
王忠飞,工学博士,浙江工业大学副研究员,一直从事机器人学和智能控制理论的教学、科研工作,在产学研和工程领域具有丰富经验和成果。曾与宁波海天空压机分厂有着长达8年(2000~2007)的产品技术合作,与温岭环力、江苏环力电器连续四次工程项目合作。承担2010年世博会上海馆外墙项目(像素墙),仅用4个月完成262万的科研项目,该项目包含5007个机电单元协同工作,甲方(上海市政府)曾计划申请吉尼斯纪录。近年,已经获得授权发明专利十余项,出版本科教材一部,公开发表十余篇SCI、EI论文。
第1章 导论1
1.1 桌面计算机与嵌入式系统1
1.2 嵌入式系统硬件8
1.3 嵌入式系统软件12
1.4 本章总结20
参考文献21
思考题21
第2章 嵌入式系统体系结构23
2.1 ARM体系23
2.2 RISC-V体系35
2.3 其他体系40
2.4 存储器系统45
2.5 系统的工作模式51
2.6 系统的电源55
2.7 系统时钟与复位57
2.8 本章总结61
参考文献62
思考题63
第3章 嵌入式系统软件65
3.1 有RTOS的嵌入式系统软件65
3.2 无RTOS的嵌入式系统软件71
3.3 Python解释器和Python脚本75
3.4 Adruino IDE82
3.5 创建一种兼容Arduino的开发板89
3.6 本章总结106
参考文献107
思考题107
第4章 嵌入式系统的基本输入和输出109
4.1 可编程数字输入和输出109
4.2 可编程模拟输入和输出123
4.3 计数器和PWM信号输出130
4.4 定时器和频率调制信号输出137
4.5 脉冲调制输入148
4.6 本章总结155
参考文献156
思考题157
第5章 I2C通信接口及其应用158
5.1 I2C通信接口159
5.2 I2C主机模式166
5.3 I2C从机模式182
5.4 I2C接口应用设计189
5.5 本章总结193
思考题194
第6章 SPI通信接口及其应用195
6.1 SPI通信接口195
6.2 SPI主机模式204
6.3 SPI从机模式218
6.4 SPI接口应用设计225
6.5 本章总结231
思考题232
第7章 UART接口及其应用233
7.1 异步串行通信和UART234
7.2 使用UART实现系统间通信246
7.3 串口通信协议256
7.4 工业现场的串口通信261
7.5 本章总结271
思考题272
第8章 CAN总线及其接口273
8.1 CAN总线简介274
8.2 CAN总线接口—协议281
8.3 CAN总线接口—硬件290
8.4 CAN总线接口—软件编程及应用296
8.5 本章总结316
参考文献317
思考题317