基于ARM的微机原理与接口技术pdf下载pdf下载

基于ARM的微机原理与接口技术百度网盘pdf下载

作者:陈桂友 主编 邢建平、王海滨、杨修文、田岚、王平、丁然、蒋阅峰、田新诚 参编
简介:本篇主要提供基于ARM的微机原理与接口技术pdf下载
出版社:清华大学出版社
出版时间:2020-05
pdf下载价格:9.00¥


预览


内容介绍

编辑推荐



本书根据高等工程教育对动手能力培养的要求,紧密结合学习平台,注重实验实践内容的编写,实验数量丰富。教材中与学习平台相关的实例代码经过严格的仿真调试,读者可将它们加入到自己的工程项目中。



本书深入浅出,层次分明,实例丰富,突出实用,可操作性强,特别适合作为普通高校计算机类、电子类、电气自动化及机械专业的教学用书,还可作为高职高专以及培训班的教材使用,同时,也可作为从事单片机应用领域的工程技术人员的参考书。与教材配套的电子教案和书中的所有实例以及最后一章的应用系统设计相关内容都可以从http://course.sdu.edu.cn/arm.html网站上下载。




内容简介


本书首先介绍微型计算机的相关概念及嵌入式系统的应用,接着介绍Cortex M3微处理器架构及开发方法,介绍汇编语言及其程序设计。在开发应用方面,以STM32F103VET6为背景,介绍常见接口的原理及应用。根据高等工程教育对动手能力培养的要求,紧密结合学习平台,注重实验实践内容的编写,实验数量丰富。教材中与学习平台相关的实例代码均经过作者严格的仿真调试,读者可将它们加入到自己的工程项目中。

作者简介


陈桂友,男,1969年6月生,博士,山东大学控制科学与工程学院教授,硕士研究生导师。1995年7月毕业于山东工业大学获得工学硕士学位并留校任教。2005年12月获得山东大学控制理论与控制工学博士学位。2007年8月~2008年8月在加拿大阿尔伯塔大学做访问学者。2009年晋升为山东大学教授。主要研究方向:a) 嵌入式系统与人工智能;b) 系统状态识别。山东大学“嵌入式系统与智能控制”创新平台负责人,全国万名优秀创新创业导师,山东省高等学校创新创业教育导师。中国智慧城市工作委员会委员,中国自动化学会会员,山东省自动化学会理事。全国大学生智能车竞赛山东赛区组委会秘书长。山东省大学生智能技术应用设计大赛发起人。


发表论文20余篇,出版著作8部,申请发明专利6项,授权2项;申请实用新型专利2项,授权1项。主持省级课题1项,主持山东省重点研发计划项目1项,作为主要研究人员参与国家自然科学基金课题2项。作为课题负责人,完成企事业委托项目30余项,具有丰富的智能技术领域的工程实践经验。



目录


第1章基础知识




1.1微型计算机发展概述




1.2微型计算机中的数制及其编码




1.2.1微型计算机中的数制




1.2.2不同数制之间的转换




1.2.3数值数据的编码及其运算




1.2.4非数值数据的编码




1.3微型计算机领域的几个相关概念




1.3.1常用单位及术语




1.3.2微型计算机的基本构成




1.3.3微控制器与嵌入式系统




1.3.4常见技术




1.4ARM概述




1.5微型计算机的应用




1.6习题




第2章CortexM3处理器




2.1CortexM3处理器简介及其组件




2.1.1CortexM3处理器简介




2.1.2CortexM3处理器的组件




2.1.3总线结构




2.2流水线




2.3寄存器




2.3.1通用寄存器




2.3.2特殊功能寄存器




2.4工作模式和工作等级




2.5堆栈




2.5.1堆栈的基本操作




2.5.2CortexM3的双堆栈机制




2.6存储器管理




2.6.1存储器空间分配




2.6.2位带操作




2.6.3端模式




2.7异常与中断




2.7.1中断号与优先级




2.7.2向量表




2.7.3中断输入及挂起




2.7.4Fault类异常




2.7.5中断的具体行为




2.7.6中断嵌套控制




2.7.7高级中断技术




2.7.8异常返回值




2.8复位序列




2.9习题




第3章STM32F1系列微控制器




3.1STM32F1系列微控制器简介




3.2STM32F1系列产品系统构架和STM32F103ZET6内部结构




3.2.1STM32F1系列产品系统架构




3.2.2STM32F103ZET6的内部架构




3.3STM32F103ZET6的存储器映像




3.4STM32F103ZET6的时钟结构




3.5STM32F103VET6的引脚




3.6STM32F103VET6最小系统设计




3.7习题




第4章汇编语言及其程序设计




4.1编程语言简介




4.2指令分类、条件域和指令格式




4.3寻址方式




4.4CortexM3指令集




4.4.1数据传送类指令




4.4.2数据处理类指令




4.4.3跳转指令




4.4.4其他指令




4.4.5Thumb指令及应用




4.5汇编语言程序设计举例




4.5.1分支程序设计




4.5.2循环程序设计




4.5.3子程序的调用与返回




4.6习题




第5章ARM微控制器开发




5.1开发流程




5.2处理器的启动过程




5.3输入和输出接口




5.4程序映像




5.5C语言开发ARM应用






5.6固件库




5.6.1基于固件库开发和直接操作寄存器的区别




5.6.2STM32固件库




5.7习题




第6章通用输入/输出接口




6.1通用输入/输出接口概述




6.2GPIO的功能




6.3GPIO的寄存器




6.4RCC时钟模块的寄存器




6.5GPIO的使用




6.5.1利用汇编语言访问GPIO




6.5.2利用C语言直接操作寄存器方法访问GPIO




6.5.3利用固件库函数方法访问GPIO




6.6习题




第7章中断和事件




7.1STM32的中断源




7.2STM32的中断管理




7.2.1中断向量寄存器




7.2.2中断系统设置过程




7.3外部中断/事件控制器




7.3.1外部中断/事件控制器




7.3.2外部中断/事件控制器相关寄存器




7.4外部中断的使用




7.4.1外部中断相关的固件库函数




7.4.2利用固件库函数开发外部中断应用




7.5习题




第8章定时器




8.1STM32通用定时器概述




8.1.1高级控制定时器(TIM1和TIM8)




8.1.2普通定时器(TIMx)




8.1.3基本定时器(TIM6和TIM7)




8.1.4定时器的时钟




8.2普通定时器的结构




8.2.1时基单元




8.2.2计数器模式




8.2.3时钟选择




8.2.4捕获/比较通道




8.3普通定时器的工作模式




8.4普通定时器的寄存器




8.5普通定时器的使用




8.5.1普通定时器的固件库函数




8.5.2普通定时器的使用举例




8.6习题




第9章串行通信




9.1通信的有关概念




9.1.1串行通信的相关概念




9.1.2并行通信中的相关概念




9.2STM32的异步串行通信接口




9.2.1STM32异步串行通信接口简介




9.2.2STM32的USART引脚重映射




9.2.3STM32的USART接口结构




9.2.4STM32的USART特性




9.2.5STM32的USART中断请求




9.2.6STM32的USART寄存器




9.2.7STM32的USART固件库函数




9.2.8STM32的USART使用举例




9.3STM32的SPI接口




9.3.1STM32的SPI接口简介




9.3.2STM32的SPI接口结构




9.3.3STM32的SPI接口配置




9.3.4STM32的SPI接口数据发送与接收过程




9.3.5CRC计算




9.3.6状态标志




9.3.7关闭SPI




9.3.8STM32的SPI接口中断




9.3.9STM32的SPI接口的寄存器




9.3.10STM32的SPI接口固件库函数




9.3.11STM32的SPI接口应用实例




9.4习题




第10章模拟量模块




10.1模数转换器的工作原理及性能指标




10.1.1模数转换器的工作原理




10.1.2模数转换器的性能指标




10.2STM32F103VET6集成的ADC模块




10.2.1STM32的ADC概述




10.2.2STM32的ADC模块结构




10.2.3STM32的ADC配置




10.2.4STM32的ADC应用特征




10.2.5STM32的ADC中断请求




10.2.6STM32的ADC寄存器




10.2.7STM32的ADC固件库函数




10.2.8STM32的ADC使用举例




10.3数模转换器的工作原理及性能指标




10.3.1数模转换器的工作原理




10.3.2数模转换器的性能指标




10.4STM32F103VET6集成的DAC模块




10.4.1STM32的DAC主要特征




10.4.2STM32的DAC接口结构




10.4.3STM32的DAC配置




10.4.4STM32的DAC寄存器




10.4.5STM32的DAC固件库函数




10.4.6STM32的DAC使用举例




10.5习题




第11章DMA控制器




11.1DMA的结构和主要特征




11.2DMA的功能描述




11.2.1DMA处理




11.2.2仲裁器




11.2.3DMA通道




11.2.4可编程的数据传输宽度、对齐方式和数据大小端




11.2.5DMA中断




11.2.6DMA请求映像




11.3DMA的寄存器




11.4DMA的固件库函数




11.4.1DMA寄存器C语言结构定义




11.4.2DMA库函数




11.5DMA使用举例




11.6习题




第12章FSMC控制器




12.1FSMC的功能和结构




12.1.1FSMC的功能描述




12.1.2FSMC的结构




12.2AHB接口




12.3FSMC外部设备地址映像




12.4NOR闪存和PSRAM控制器




12.4.1外部存储器接口信号




12.4.2支持的存储器及其操作




12.4.3NOR闪存和PSRAM控制器时序




12.4.4同步的成组读




12.5NOR闪存和PSRAM控制器寄存器




12.6FSMC固件库函数




12.7FSMC使用举例




12.8习题




附录AASCII码表




附录B逻辑符号对照表




附录C使用MDK开发调试汇编语言程序




C.1MDK简介




C.2使用MDK调试汇编语言程序




参考文献







前言/序言


“微机原理与接口技术”是电子信息类、自动化类、精密仪器、机电一体化等专业的核心课程。微型计算机(简称微机)的应用范围十分广阔,已渗透到国防、工业、农业、企事业和人们生活的方方面面,并且发挥着越来越重要的作用,因而,掌握微机原理及其接口技术就显得十分重要。


在我国高校“微机原理及接口技术”的教学历史中,20世纪80年代,首先是以Z80为CPU的单板机为主流教学机型,后来是以Intel 8086为CPU的教学实验箱。目前,基于8086的实验装置很难维护(8086芯片很难买到),许多学校的“微机原理与接口技术”课程实验只能通过软件模拟或者几乎不开设实验课,教学效果大打折扣。在实际工程应用中,很少采用基于8086的底层控制系统硬件设计和汇编语言的编程开发,取而代之的是基于ARM架构的硬件电路设计和软件设计。特别是在测控系统设计方面,基于ARM微控制器的设计方案越来越得到工程师的认可。ARM微控制器无论在体系结构、汇编语言程序设计、接口技术、开发手段等诸多方面都比8086具有更加优异的特征。因此,本书以意法半导体公司的基于32位ARM内核的STM32F103为背景机型,介绍微型计算机原理及接口技术。STM32的网上资源非常丰富,便于读者学习参考。


作者从2012年开始,便尝试使用STM32为背景机型,进行“微机原理与接口技术”的讲解。经过数年的教学实践和工程项目实践,对教学内容和工程项目进行凝练,形成了本书。本书不仅介绍微型计算机的相关概念及微型计算机的应用,精准对标原来基于8086的“微机原理与接口技术”课程的工作原理、汇编语言程序设计、常见接口等内容,更进一步介绍目前的新技术,并从应用的角度强调开发方法和工程实现,注重学生实践能力和工程素养的培养。本书包含以下内容:


第1章基础知识。介绍微型计算机系统领域的几个相关概念,概述ARM的发展,并介绍微型计算机在相关领域中的应用。


第2章CortexM3处理器。介绍CortexM3处理器的体系结构,包括内核、系统模型、存储器以及异常中断的基本概况。


第3章STM32F1系列微控制器。概述STM32F1系列微控制器产品,介绍STM32F1系列为控制的典型产品STM32F103ZET6的内部结构、时钟及最小系统等内容。


第4章汇编语言及其程序设计。介绍CortexM3的寻址方式、指令集以及汇编语言程序设计。


第5章ARM微控制器开发。介绍CortexM3微控制器应用系统的开发方法和过程。


第6~12章典型外设及应用。分别介绍通用输入输出接口、中断和事件、定时器、串行通信、模拟量模块、DMA控制器、FSMC控制器的原理结构和应用。


本书中的电路符号采用国外文献常见形式,其与国际符号的对应关系可参考附录B。在本书的编写过程中,得到了ARM公司和意法半导体公司的大力支持和帮助,得到了山东大学的相关师生的关心和支持。在此,对所有提供帮助的人深表感谢!


由于作者水平所限,书中难免有不妥或错误之处,敬请读者批评指正,以便修订时改进。




作者




2020年3月