本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正
图书基本信息 | |
图书名称 | 基于STM32嵌入式接口与传感器应用开发 |
作者 | 廖建尚,郑建红,杜恒 |
定价 | 99元 |
出版社 | 电子工业出版社 |
ISBN | 9787121346576 |
出版日期 | 2018-08-01 |
字数 | 739000 |
页码 | 443 |
版次 | |
装帧 | 平装 |
开本 | 16开 |
商品重量 |
内容提要 | |
本书主要介绍在嵌入式系统和物联网系统开发中常用的STM32微处理器的接口技术、常见传感器的应用,由浅入深地对STM32接口技术和传感器的应用进行讲解。全书采用任务式开发的学习方法,精选了28个贴近社会和生活的案例,每个案例均有完整的开发过程,分别是生动的开发场景、明确的开发目标、深入浅出的原理学习、详细的系统设计过程、详细的软/硬件设计和功能实现过程,很后进行开发验证和总结拓展,将理论学习和开发实践结合起来。每个案例均附有完整的开发代码和配套PPT课件,读者可在源代码的基础上快速地进行二次开发。 |
目录 | |
部分嵌入式系统基本原理和开发知识 任务1认识嵌入式系统(2) 1.1学习场景:嵌入式系统有哪些应用(2) 1.2学习目标(2) 1.3原理学习:嵌入式系统的发展与应用(2) 1.3.1嵌入式系统概述(2) 1.3.2嵌入式操作系统(5) 1.3.3嵌入式系统的发展与应用(7) 1.4任务小结(9) 1.5思考与拓展(9) 任务2ARM嵌入式开发平台(10) 2.1学习场景:ARM嵌入式开发平台有哪些应用(10) 2.2开发目标(11) 2.3原理学习:ARM微处理器(11) 2.3.1ARM微处理器简介及其产品系列(11) 2.3.2ARM微处理器的组成及结构(13) 2.3.3STM32系列微处理器(14) 2.3.4STM32开发平台(17) 2.4任务小结(21) 2.5思考与拓展(21) 任务3工程创建与调试(22) 3.1开发场景:如何进行项目开发(22) 3.2开发目标(22) 3.3原理学习:软件开发环境(22) 3.3.1IARforARM开发环境(22) 3.3.2STM32标准函数库(24) 3.3.3IARARM开发环境的使用(36) 3.3.4IARARM程序的开发及在线调试(39) 3.4任务实践(44) 3.4.1开发设计(44) 3.4.2功能实现(45) 3.5任务小结(45) 3.6思考与拓展(45) 第2部分STM32嵌入式接口开发技术 任务4设备指示灯的设计与实现(48) 4.1开发场景:如何控制设备指示灯(48) 4.2开发目标(48) 4.3原理学习:STM32的GPIO功能与应用(48) 4.3.1STM32的GPIO(48) 4.3.2STM32的GPIO寄存器(53) 4.3.3常见GPIO的位操作(59) 4.4任务实践:设备指示灯控制的软/硬件设计(60) 4.4.1开发设计(60) 4.4.2功能实现(62) 4.5任务验证(65) 4.6任务小结(65) 4.7思考与拓展(65) 任务5竞赛抢答器的设计与实现(66) 5.1开发场景:如何实现抢答器(66) 5.2开发目标(66) 5.3原理学习:STM32微处理器的中断(67) 5.3.1中断基本概念与定义(67) 5.3.2STM32中断应用概述(70) 5.3.3STM32的外部中断机制(74) 5.4任务实践:抢答器的软/硬件设计(79) 5.4.1开发设计(79) 5.4.2功能实现(80) 5.5任务验证(82) 5.6任务小结(83) 5.7思考与拓展(83) 任务6电子时钟的设计与实现(84) 6.1开发场景:如何实现电子时钟(84) 6.2开发目标(84) 6.3原理学习:STM32定时/计数器(84) 6.3.1定时/计数器的基本原理(84) 6.3.2STM32定时器(85) 6.4任务实践:电子时钟的软/硬件设计(93) 6.4.1开发设计(93) 6.4.2功能实现(94) 6.5任务验证(96) 6.6任务小结(96) 6.7思考与拓展(96) 任务7汽车电压指示器的设计与实现(97) 7.1开发场景:如何实现汽车电压指示器(97) 7.2开发目标(97) 7.3原理学习:STM32ADC(98) 7.3.1A/D转换(98) 7.3.2STM32的A/D转换器(99) 7.4任务实践:汽车电压指示器的软/硬件设计(108) 7.4.1开发设计(108) 7.4.2功能实现(109) 7.5任务验证(111) 7.6任务小结(112) 7.7思考与拓展(112) 任务8环境监测点自复位的设计与实现(113) 8.1开发场景:如何实现自复位设计(113) 8.2开发目标(113) 8.3原理学习:STM32看门狗(114) 8.3.1看门狗基本原理(114) 8.3.2STM32看门狗(115) 8.3.3STM32看门狗库函数的使用(119) 8.4任务实践:环境监测点自复位的软/硬件设计(121) 8.4.1开发设计(121) 8.4.2功能实现(123) 8.5任务验证(125) 8.6任务小结(125) 8.7思考与拓展(125) 任务9视频监控中三维控制键盘的设计与实现(126) 9.1开发场景:如何实现视频监控中三维控制键盘(126) 9.2开发目标(126) 9.3原理学习:STM32串口(126) 9.3.1串口(126) 9.3.2STM32的USART(129) 9.3.3STM32串口库函数(137) 9.4任务实践:视频监控中三维控制键盘的软/硬件设计(138) 9.4.1开发设计(138) 9.4.2功能实现(139) 9.5任务验证(142) 9.6任务小结(143) 9.7思考与拓展(143) 任务10农业大棚环境信息采集系统的设计与实现(144) 10.1开发场景:如何采集温湿度信息(144) 10.2开发目标(144) 10.3原理学习:STM32的I2C模块和温湿度传感器(145) 10.3.1I2C总线(145) 10.3.2STM32的I2C模块(148) 10.3.3STM32的I2C库函数的使用(152) 10.3.4温湿度传感器(153) 10.4任务实践:农业大棚环境信息采集系统的软/硬件设计(157) 10.4.1开发设计(157) 10.4.2功能实现(159) 10.5任务验证(166) 10.6任务小结(167) 10.7思考与拓展(167) 任务11高速动态数据存取的设计与实现(168) 11.1开发场景:如何实现高速动态数据的存取(168) 11.2开发目标(168) 11.3原理学习:SPI总线协议和Flash存储器(168) 11.3.1SPI总线协议(168) 11.3.2Flash存储器(178) 11.4任务实践:高速动态数据存取的软/硬件设计(184) 11.4.1开发设计(184) 11.4.2功能实现(185) 11.5任务验证(194) 11.6任务小结(195) 11.7思考与拓展(195) 任务12车载显示器的设计与实现(196) 12.1开发场景:如何实现车载显示器(196) 12.2开发目标(196) 12.3原理学习:STM32的FSMC模块和LCD模块(196) 12.3.1显示器(196) 12.3.2STM32的FSMC模块(198) 12.3.3STM32的FSMC模块库函数(205) 12.3.4ILI93xx系列TFTLCD(207) 12.4任务实践:车载显示器的软/硬件设计(211) 12.4.1开发设计(211) 12.4.2功能实现(213) 12.5任务验证(225) 12.6任务小结(226) 12.7思考与拓展(226) 第3部分基于STM32和常用传感器开发 任务13传感器应用技术(228) 13.1学习场景:日常生活传感器的应用有哪些(228) 13.2开发目标(229) 13.3原理学习:传感器应用和发展趋势(229) 13.3.1传感器简述(229) 13.3.2传感器与物联网应用(231) 13.4任务小结(236) 13.5思考与拓展(236) 任务14温室大棚光照度测量系统的设计与实现(237) 14.1开发场景:如何实现光照度的测量(237) 14.2开发目标(237) 14.3原理学习:光敏传感器和I2C(238) 14.3.1光敏传感器(238) 14.3.2BH1750FVI-TR型光敏传感器(240) 14.3.3I2C总线和光照传感器(242) 14.4任务实践:光照度测量系统的软/硬件设计(242) 14.4.1开发设计(242) 14.4.2功能实现(243) 14.5任务验证(250) 14.6任务小结(250) 14.7思考与拓展(251) 任务15探空气球测海拔的设计与实现(252) 15.1开发场景:如何实现气压海拔的测量(252) 15.2开发目标(252) 15.3原理学习:气压海拔传感器的工作原理与测量方法(253) 15.3.1气压海拔传感器(253) 15.3.2气压海拔传感器的工作原理(253) 15.3.3气压海拔传感器的海拔计算方法(253) 15.3.4FBM320型气压海拔传感器(254) 15.4任务实践:探空气球测海拔的软/硬件设计(256) 15.4.1开发设计(256) 15.4.2功能实现(257) 15.5任务验证(263) 15.6任务小结(264) 15.7思考与拓展(264) 任务16建筑工地扬尘监测系统的设计与实现(265) 16.1开发场景:如何测量空气质量(265) 16.2开发目标(266) 16.3原理学习:半导体气体传感器和空气质量传感器(266) 16.3.1半导体气体传感器(266) 16.3.2MP503型空气质量传感器(267) 16.4任务实践:城市扬尘监测系统的软/硬件设计(268) 16.4.1开发设计(268) 16.4.2功能实现(270) 16.5任务验证(271) 16.6任务小结(272) 16.7思考与拓展(272) 任务17VR设备动作捕捉系统的设计与实现(273) 17.1开发场景:如何实现动作捕捉(273) 17.2开发目标(273) 17.3原理学习:三轴加速度传感器与测量(274) 17.3.1人体运动模型(274) 17.3.2三轴加速度传感器(274) 17.3.3三轴加速度传感器的应用(275) 17.3.4LIS3DH型三轴加速度传感器(276) 17.3.5计步算法(279) 17.3.6获取传感器数据(280) 17.4任务实践:VR设备动作捕捉系统的软/硬件设计(283) 17.4.1开发设计(283) 17.4.2功能实现(284) 17.5任务验证(287) 17.6任务小结(288) 17.7思考与拓展(288) 任务18扫地机器人避障系统的设计与实现(289) 18.1开发场景:如何应用红外距离传感器测量距离(289) 18.2开发目标(289) 18.3原理学习:距离传感器与测量(290) 18.3.1距离传感器(290) 18.3.2Sharp红外距离传感器(291) 18.4任务实践:扫地机器人避障系统的软/硬件设计(293) 18.4.1开发设计(293) 18.4.2功能实现(294) 18.5任务验证(296) 18.6任务小结(297) 18.7思考与拓展(297) 任务19红外自动感应门的设计与实现(298) 19.1开发场景:如何实现红外自动感应门(298) 19.2开发目标(298) 19.3原理学习:人体红外传感器与测量(299) 19.3.1人体红外传感器(299) 19.3.2热释电人体红外传感器(300) 19.3.3AS312型热释电人体红外传感器(302) 19.4任务实践:红外自动感应门的软/硬件设计(302) 19.4.1开发设计(302) 19.4.2功能实现(304) 19.5任务验证(305) 19.6任务小结(306) 19.7思考与拓展(306) 任务20燃气监测仪的设计与实现(307) 20.1开发场景:如何实现燃气监测仪(307) 20.2开发目标(307) 20.3原理学习:气体传感器与测量(307) 20.3.1气体传感器(307) 20.3.2MP-4型燃气传感器(310) 20.4任务实践:燃气监测仪的软/硬件设计(310) 20.4.1开发设计(310) 20.4.2功能实现(311) 20.5任务验证(313) 20.6任务小结(313) 20.7思考与拓展(314) 任务21振动检测仪的设计与实现(315) 21.1开发场景:如何实现振动检测仪(315) 21.2开发目标(315) 21.3原理学习:振动信号和振动传感器(315) 21.3.1振动信号(315) 21.3.2振动传感器(316) 21.4任务实践:振动检测仪的软/硬件设计(318) 21.4.1开发设计(318) 21.4.2功能实现(319) 21.5任务验证(321) 21.6任务小结(321) 21.7思考与拓展(321) 任务22电机转速检测系统的设计与实现(323) 22.1开发场景:如何实现电机转速检测系统(323) 22.2开发目标(323) 22.3原理学习:霍尔传感器与测量(324) 22.3.1霍尔传感器(324) 22.3.2工作原理与分类(324) 22.3.3AH3144型霍尔传感器(325) 22.4任务实践:电机转速检测系统的软/硬件设计(326) 22.4.1开发设计(326) 22.4.2功能实现(327) 22.5任务验证(328) 22.6任务小结(329) 22.7思考与拓展(329) 任务23智能家居光栅防盗系统的设计与实现(330) 23.1开发场景:如何实现智能家居光栅防盗系统(330) 23.2开发目标(330) 23.3原理学习:光电传感器与应用(330) 23.3.1光电传感器(330) 23.3.2光电开关的原理(331) 23.3.3光电传感器的应用(332) 23.4任务实践:智能家居光栅防盗系统的软/硬件设计(333) 23.4.1开发设计(333) 23.4.2功能实现(335) 23.5任务验证(336) 23.6任务小结(337) 23.7思考与拓展(337) 任务24智能建筑消防预警系统的设计与实现(338) 24.1开发场景:如何实现火焰探测(338) 24.2开发目标(338) 24.3原理学习:光电效应和火焰传感器(338) 24.3.1火焰传感器(338) 24.3.2火焰传感器的分类(339) 24.3.3接收管和光电效应原理(340) 24.4任务实践:智能建筑消防预警系统的软/硬件设计(342) 24.4.1开发设计(342) 24.4.2功能实现(343) 24.5任务验证(345) 24.6任务小结(346) 24.7思考与拓展(346) 任务25洗衣机触控面板控制系统的设计与实现(347) 25.1开发场景:如何实现触摸开关(347) 25.2开发目标(347) 25.3原理学习:触摸开关和触摸传感器(348) 25.3.1触摸开关(348) 25.3.2触摸屏(348) 25.3.3电容式触摸开关(352) 25.4任务实践:洗衣机触控面板控制系统的软/硬件设计(352) 25.4.1开发设计(352) 25.4.2功能实现(354) 25.5任务验证(355) 25.6任务小结(356) 25.7思考与拓展(356) 任务26微电脑时控开关的设计与实现(357) 26.1开发场景:如何实现时控开关(357) 26.2开发目标(357) 26.3原理学习:继电器原理和应用(357) 26.3.1电磁继电器原理(358) 26.3.2电磁继电器的开关分类(358) 26.3.3电磁继电器的组成(359) 26.3.4继电器的作用(360) 26.3.5本任务的继电器(360) 26.4任务实践:时控开关的软/硬件设计(361) 26.4.1开发设计(361) 26.4.2功能实现(362) 26.5任务验证(364) 26.6任务小结(364) 26.7思考与拓展(364) 任务27工业通风设备的设计与实现(365) 27.1开发场景:如何实现工业设备通风(365) 27.2开发目标(365) 27.3原理学习:轴流风机和应用(366) 27.3.1轴流风机构成(366) 27.3.2轴流风机参数(367) 27.3.3轴流风机的工作原理与分类(368) 27.3.4GM0501PFB3型轴流风机(368) 27.4任务实践:工业通风设备的软/硬件设计(369) 27.4.1开发设计(369) 27.4.2功能实现(371) 27.5任务验证(372) 27.6任务小结(373) 27.7思考与拓展(373) 任务28工业机床控制系统的设计与实现(374) 28.1开发场景:如何实现工业机床控制系统(374) 28.2开发目标(374) 28.3原理学习:步进电机的原理与应用(375) 28.3.1步进电机基本概念(375) 28.3.2步进电机的相关参数(375) 28.3.3步进电机的工作原理及结构(376) 28.3.4步进电机的控制方法(377) 28.3.5步进电机驱动(378) 28.4任务实践:工业机床控制系统的软/硬件设计(379) 28.4.1开发设计(379) 28.4.2功能实现(381) 28.5任务验证(383) 28.6任务小结(384) 28.7思考与拓展(384) 任务29声光报警器的设计与实现(385) 29.1开发场景:如何实现声光报警器(385) 29.2开发目标(385) 29.3原理学习:声光报警器和RBG灯(385) 29.3.1声光报警器(385) 29.3.2RGB灯原理(386) 29.4任务实践:声光报警器的软/硬件设计(386) 29.4.1开发设计(386) 29.4.2功能实现(388) 29.5任务验证(389) 29.6任务小结(389) 29.7思考与拓展(390) 第4部分综合应用项目开发 任务30图书馆照明调节系统的设计与实现(392) 30.1开发场景:如何实现照明调节系统(392) 30.2开发目标(392) 30.3任务设计流程与需求分析(393) 30.3.1设计流程(393) 30.3.2项目解读(393) 30.3.3项目功能分解(395) 30.3.4项目技术化(395) 30.4任务实践:图书馆照明调节系统的软/硬件设计(396) 30.4.1开发设计(396) 30.4.2项目架构(397) 30.4.3功能实现(403) 30.5任务验证(406) 30.5.1项目测试(406) 30.5.2项目验证(406) 30.5.3验证效果(407) 30.6任务小结(408) 30.7思考与拓展(408) 任务31集成燃气灶控制系统的设计与实现(409) 31.1开发场景:如何实现集成燃气灶控制系统(409) 31.2开发目标(409) 31.3任务设计流程与需求分析(410) 31.3.1设计流程(410) 31.3.2项目解读(410) 31.3.3项目功能分解(410) 31.3.4项目技术化(411) 31.4任务实践:集成燃气灶控制系统的软/硬件设计(412) 31.4.1开发设计(412) 31.4.2项目架构(413) 31.4.3功能实现(417) 31.5任务验证(420) 31.5.1项目测试(420) 31.5.2项目验证(421) 31.5.3验证效果(421) 31.6任务小结(422) 31.7思考与拓展(422) 任务32智能洗衣机控制系统的设计与实现(423) 32.1开发场景:如何实现智能洗衣机控制系统(423) 32.2开发目标(423) 32.3任务设计流程与需求分析(423) 32.3.1项目解读(424) 32.3.2项目功能分析(424) 32.3.3项目技术化(424) 32.3.4项目设计与实现(425) 32.4任务实践:智能洗衣机控制系统的软/硬件设计(426) 32.4.1项目架构(426) 32.4.2功能实现(430) 32.5任务验证(438) 32.5.1项目测试(438) 32.5.2功能验证(438) 32.5.3验证效果(439) 32.6任务小结(440) 32.7思考与拓展(440) 参考文献(441) |
作者介绍 | |
廖建尚,男,副教授,毕业于广东工业大学通信与信息系统专业,硕士,先任职于广东交通职业技术学院。长期从事物联网技术的开发和教学工作。 |