新書推薦:
《
自伤自恋的精神分析
》
售價:HK$
52.8
《
大宋悬疑录:貔貅刑
》
售價:HK$
74.8
《
不被大风吹倒
》
售價:HK$
65.9
《
人生解忧:佛学入门四十讲
》
售價:HK$
107.8
《
东野圭吾:分身(东野圭吾无法再现的双女主之作 奇绝瑰丽、残忍又温情)
》
售價:HK$
64.9
《
浪潮将至
》
售價:HK$
86.9
《
在虚无时代:与马克斯·韦伯共同思考
》
售價:HK$
57.2
《
斯大林格勒:为了正义的事业(格罗斯曼“战争二部曲”的第一部,《生活与命运》前传)
》
售價:HK$
184.8
|
內容簡介: |
本书以“项目目标、知识准备、项目实施、拓展学习、评价反馈”的项目化方式组织内容,按照“搭积木”的设计思想,共设计了8个项目:GPIO基础应用—实现闪灯和开关状态检测与控制功能;利用定时中断实现频闪灯;GPIO和定时器的综合应用—实现数码管显示、键盘检测与控制、测温功能;利用UART实现上位机和下位机的通信;利用Timer实现PWM和输入捕获功能;利用ADC设计简易数字电压表;利用SPI实现多机串行通信;利用CAN实现多机通信。每个项目均采用“通用知识”→“嵌入式构件设计”→“应用层程序设计”→“学以致用与创新”的学习流程,最后可利用8个项目中的部分项目或全部项目进行综合应用系统设计和课程考核。本书注重理论与实践相结合,突出“学以致用”,注重培养创新意识和创新能力。本书可作为高等院校电子信息类、计算机类、自动化类等专业的嵌入式系统设计教材,也可作为嵌入式技术培训教材,还可供从事嵌入式技术开发的工程技术人员参考。为了方便教学,本书配套电子教案、电子课件、嵌入式技术资源、微课视频、模拟试卷及答案等教学资源。凡选用本书作为授课教材的教师,均可通过QQ(2314073523)咨询教学资源等事宜。未经许可,不得以任何方式复制或抄袭本书的任何内容(含文字、创意、版式、案例和设计等),书中配套资源不得用于在线课程建设、微课制作等。版权所有,侵权必究。
|
目錄:
|
目 录前言项目1 GPIO基础应用—实现闪灯和开关状态检测与控制功能 1项目目标 1知识准备 2任务1.1 熟悉嵌入式系统和课程学习方法 21.1.1 嵌入式系统的概念和组成 21.1.2 嵌入式系统的知识体系和学习建议 5任务1.2 熟悉MCU资源和硬件最小系统 61.2.1 STM32F1系列MCU简介 61.2.2 MCU存储映射、引脚功能与硬件最小系统 7任务1.3 掌握MCU的GPIO底层驱动构件使用方法 121.3.1 GPIO的通用知识 121.3.2 MCU的GPIO底层驱动构件使用方法 13项目实施 17任务1.4 嵌入式构件化设计及闪灯的实现 171.4.1 小灯硬件构件和软件构件的设计及使用方法 171.4.2 嵌入式软件最小系统设计—实现闪灯 21任务1.5 开关状态检测与控制功能的设计与实现 311.5.1 开关硬件构件和软件构件的设计及使用方法 311.5.2 开关状态检测与控制功能的应用层程序设计 34拓展学习 36*任务1.6 熟悉MCU的GPIO底层驱动构件源文件 36评价反馈 41项目2 利用定时中断实现频闪灯 43项目目标 43知识准备 43任务2.1 理解定时器的定时原理 43任务2.2 理解中断的通用知识 442.2.1 中断的基本概念 442.2.2 中断的基本过程 472.2.3 CM3的非内核模块中断管理机制 48项目实施 49任务2.3 利用Timer定时中断实现频闪灯 492.3.1 MCU的Timer基本定时底层驱动构件的使用方法 492.3.2 利用Timer定时中断实现频闪灯的应用层程序设计 52任务2.4 利用内核定时器(SysTick Timer)中断实现频闪灯 562.4.1 SysTick的功能特性及其底层驱动构件的使用方法 562.4.2 利用SysTick定时中断实现频闪灯的应用层程序设计 58拓展学习 60*任务2.5 熟悉MCU的定时器底层驱动构件源文件 602.5.1 MCU的Timer基本定时底层驱动构件源文件 602.5.2 MCU的SysTick定时器底层驱动构件源文件 63评价反馈 64项目3 GPIO和定时器的综合应用—实现数码管显示、键盘检测与控制、测温功能 65项目目标 65知识准备 65任务3.1 掌握数码管的通用知识 653.1.1 数码管的结构 653.1.2 基于MCU直接控制的数码管硬件构件设计 663.1.3 数码管的笔形码 673.1.4 基于MCU直接控制的数码管显示原理 69任务3.2 掌握键盘的通用知识 713.2.1 键盘的基本问题 713.2.2 键盘的两种接口方式 72任务3.3 基于TM1637的数码管和键盘构件设计 743.3.1 基于TM1637的数码管和键盘硬件构件设计 743.3.2 基于TM1637的数码管和键盘软件构件的组成及使用方法 76项目实施 79任务3.4 基于TM1637的数码管显示的应用层程序设计 793.4.1 使用软件延时实现数码管先后显示不同的数据 793.4.2 使用定时中断实现数码管先后显示不同的数据 81任务3.5 基于TM1637的键盘检测与控制的应用层程序设计 853.5.1 键盘检测与控制的查询程序流程 853.5.2 应用实例参考程序 85任务3.6 基于DS18B20的测温功能设计与实现 883.6.1 DS18B20的主要特点和基于DS18B20的测温硬件构件设计 883.6.2 基于DS18B20的测温软件构件的组成及使用方法 893.6.3 基于DS18B20的测温功能应用层程序设计 90拓展学习 92*任务3.7 基于TM1637的数码管和键盘软件构件源文件的设计 92*任务3.8 基于DS18B20的测温软件构件源文件的设计 98评价反馈 103项目4 利用UART实现上位机和下位机的通信 105项目目标 105知识准备 105任务4.1 理解UART的通用知识 105任务4.2 掌握MCU的UART底层驱动构件使用方法 1084.2.1 MCU的UART主要特性和引脚 1084.2.2 MCU的UART底层驱动构件的组成及使用方法 109项目实施 112任务4.3 UART通信应用层程序设计与功能测试 1124.3.1 UART通信的应用层程序设计 1124.3.2?UART通信的测试方法 1154.3.3?使用printf函数输出数据 116拓展学习 118*任务4.4 熟悉MCU的UART底层驱动构件源文件 118评价反馈 126项目5 利用Timer实现PWM和输入捕获功能 127项目目标 127知识准备 127任务5.1 理解PWM和输入捕获的通用知识 1275.1.1 PWM的通用知识 1275.1.2 输入捕获的通用知识 130任务5.2 掌握Timer_PWM_INCAP底层驱动构件使用方法 1315.2.1 MCU的Timer通道引脚 1315.2.2 Timer_PWM_INCAP底层驱动构件的组成及使用方法 132项目实施 138任务5.3 利用PWM控制小灯的亮度 138任务5.4 利用输入捕获测量脉冲信号的周期和脉宽 140拓展学习 144*任务5.5 熟悉Timer_PWM_INCAP底层驱动构件源文件 144评价反馈 159项目6 利用ADC设计简易数字电压表 161项目目标 161知识准备 161任务6.1 理解ADC的通用知识 161任务6.2 掌握MCU的ADC底层驱动构件使用方法 1646.2.1 MCU的ADC主要特性和引脚 1646.2.2 MCU的ADC底层驱动构件的组成及使用方法 165
|
內容試閱:
|
前?言嵌入式技术是推动物联网应用,制造业高端化、智能化、绿色化发展的重要技术基础。“单片机与嵌入式系统”是电子信息类、计算机类、自动化类等专业的核心课程,该课程面向嵌入式系统设计师工作岗位,目的是为社会培养具有嵌入式智能产品设计、分析、调试与创新能力的高素质技术技能型人才。嵌入式系统由嵌入式硬件和嵌入式软件组成,随着技术的发展,嵌入式芯片的硬件集成度越来越高,使得嵌入式硬件设计难度不断降低,因此嵌入式软件设计在整个嵌入式系统开发中所占的分量越来越大。嵌入式软件设计的主流语言是C语言,读者可通过本书第一著者在机械工业出版社出版的《C语言程序设计》加强C语言程序设计基础。目前,越来越多的企业采用以ARM微处理器为内核的微控制器开发嵌入式智能产品,众多高校也以基于ARM内核的微控制器为蓝本开展嵌入式技术教学。目前,嵌入式技术教学中主要存在以下三个问题:1)过于依赖具体的芯片资料,直接将芯片手册翻译成对应的教学章节,没有对嵌入式系统涉及的通用知识和共性要素进行提取和总结,很难体现学习重点;同时也会导致一旦换了嵌入式芯片,很难实现在不同嵌入式芯片和不同嵌入式应用系统之间的软硬件可移植和可复用。2)直接使用芯片厂家提供的微控制器底层驱动库进行应用程序开发,而其底层驱动库存在两大弊端:一是底层驱动函数的参数使用结构体指针变量,这要比使用普通变量作为函数参数的学习难度大,并且在程序执行期间,结构体变量的所有成员一直驻留在内存中,因此结构体变量中未使用的成员会白白浪费微控制器的内存空间;二是不同片内外设的底层驱动未能相互独立,在实现某一个片内外设的底层驱动功能时,需要调用另一个片内外设的底层驱动函数,这不符合嵌入式软件工程的设计要求。3)嵌入式软件工程文件组织不合理,使初学者分不清哪些工程文件是用户文件,哪些工程文件是系统生成文件,导致学习者望而生畏。上述的三个问题,导致嵌入式技术学习难度大、学习效果不理想。针对上述问题,根据著者十几年来的嵌入式系统应用项目开发经验和课程教学经验,为了实现嵌入式系统设计的可移植性和可复用性,嵌入式硬件和嵌入式软件均采用构件化的设计思想,即对嵌入式硬件和嵌入式软件进行封装,供系统设计者调用,并倡导嵌入式软件分层设计的理念,以大幅度降低嵌入式技术学习难度和开发难度,为因材施教提供有效可行的途径(书中标有“*”的内容,学习者可根据自身基础,灵活将其作为必学内容或选学内容)。由于在嵌入式构件设计过程中,注重提取共性要素,而不依赖于具体的MCU芯片,因此,学习者在将来的嵌入式智能产品开发时,即使更换了芯片,嵌入式技术学习和应用也不需要从零开始。根据党的二十大精神,本书在编写过程中,牢固树立以学习者可持续发展为中心的教学理念,使学校教学过程与企业产品开发过程相对接。以“项目目标、知识准备、项目实施、拓展学习、评价反馈”的项目化方式组织内容,按照“搭积木”的设计思想,共设计了8个项目,每个项目均采用了“通用知识”→“嵌入式构件设计”→“应用层程序设计”→“学以致用与创新”的学习流程。在教学过程中,可以根据实际情况,灵活调整项目2~8的教学顺序,最后可利用8个项目中的部分项目或全部项目进行综合应用系统设计和课程考核。本书注重嵌入式软件的规范性,提供的嵌入式软件包括程序代码和必要的文档说明,同时注重理论与实践相结合,注重培养学生的创新意识和创新能力。教师可利用书中设置的“知识巩固”“学以致用”“思路总结”“活学活用”“学以致用与创新”等练习,从“素质”“知识”“能力”3个维度提高学生的嵌入式技术基础与应用能力,同时培养学生具有良好的基本职业素质、团结协作素质、自主学习素质,使学生具有一定的辩证唯物主义运用能力、发现问题和解决问题的能力,同时具有安全意识、劳动意识、创新意识、创新能力和强烈的爱国主义精神,为中国式现代化建设和中华民族伟大复兴而不懈奋斗、贡献力量。本书所附的“学习笔记”可用于书写“课堂笔记”“知识巩固”“学以致用与创新”等内容,也可作为课程过程考核材料。读者可自行加页。本书由索明何、邢海霞、王宜怀和丁晓磊著,索明何负责全书的策划、内容安排、案例选取和统稿工作。在编写过程中,意法半导体(ST)大学计划部提供了相关技术参考资料并给予了精心指导,在此表示衷心的感谢!由于著者水平有限,疏漏之处在所难免,恳请广大专家和读者提出宝贵的意见和建议。著者联系方式:1043510795@qq.com。著者
|
|