返回首页
苏宁会员
购物车 0
易付宝
手机苏宁

服务体验

店铺评分与同行业相比

用户评价:----

物流时效:----

售后服务:----

  • 服务承诺: 正品保障
  • 公司名称:
  • 所 在 地:
本店所有商品

  • [正版]ARM Cortex-M3嵌入式原理及应用:基于STM32F103微控制器 清华大学出版社 黄克亚 清华开发者书
  • 新商品上架
    • 作者: 黄克亚著
    • 出版社: 清华大学出版社
    送至
  • 由""直接销售和发货,并提供售后服务
  • 加入购物车 购买电子书
    服务

    看了又看

    商品预定流程:

    查看大图
    /
    ×

    苏宁商家

    商家:
    句字图书专营店
    联系:
    • 商品

    • 服务

    • 物流

    搜索店内商品

    商品分类

    商品参数
    • 作者: 黄克亚著
    • 出版社:清华大学出版社
    • 开本:16开
    • ISBN:9780586370837
    • 版权提供:清华大学出版社

     书名:  ARM Cortex-M3嵌入式原理及应用——基于STM32F103微控制器(清华开发者书库)
     出版社:  清华大学出版社
     出版日期  2019
     ISBN号:  9787302538615

    黄克亚  软件设计师,苏州大学副教授、硕士生导师,主要从事智能控制、嵌入式系统开发等教学和科研工作。讲授过“电工电子技术”“单片机原理与控制技术”“微机原理及应用”“嵌入式系统开发”“可编程控制器”“传感器应用技术”等课程。近年来主持省级课题2项,授权发明专利1项,登记软件著作权4项,发表EI检索或中文核心期刊论文6篇,指导学生获中国智能机器人大赛一等奖1项、江苏省本专科优秀毕业设计(论文)三等奖1项、全国电子设计大赛江苏赛区二等奖2项。

    作者根据多年的嵌入式系统教学和开发经验,循序渐进,理论实践并重,共性个性兼顾,将嵌入式系统的理论知识和基于ARM Cortex-M3内核的STM32F103微控制器的实际开发相结合,编写了《ARM Cortex-M3嵌入式原理及应用——基于STM32F103微控制器》一书,并自主设计STM32嵌入式实验板,帮助广大32位MCU初学者快速入门嵌入式系统开发。
    本书涉及主题
    全书共15章,分为三部分:第1部分(第1~3章)为系统平台模块,讲述嵌入式系统定义、开发板硬件平台和工程模板创建;第2部分(第4~9章)为基本外设模块,分别对STM32嵌入式系统最常用外设模块进行介绍,包括GPIO、中断、定时器、PWM和嵌入式系统接口技术;第3部分(第10~15章)为扩展外设模块,分别对STM32嵌入式系统高级外设模块进行介绍,包括USART、SPI、OLED、ADC、IIC、EEPROM和RTC等。
    本书突出特点
    ? 传承51经典,发扬ARM长处,助推MCU升级。
    ? 以读者认知过程为导向编排教材,组织章节内容。
    ? 项目引领,任务驱动,教、学、做一体,注重读者工程实践能力的培养。
    ? 构建全方位、立体化的教学资源网络,助力嵌入式系统教学与项目开发。

    第1章ARM CortexM3嵌入式系统

    1.1嵌入式系统概述

    1.1.1什么是嵌入式系统

    1.1.2嵌入式系统和通用计算机系统比较

    1.1.3嵌入式系统的特点

    1.1.4嵌入式系统的应用领域

    1.1.5嵌入式系统范例

    1.2ARM CortexM3处理器

    1.2.1ARM公司

    1.2.2ARM处理器

    1.3STM32微控制器

    1.3.1从CortexM3内核到基于CortexM3的MCU

    1.3.2STM32微控制器产品线

    1.3.3STM32微控制器命名规则

    1.4嵌入式系统的软件

    1.4.1无操作系统的嵌入式软件

    1.4.2带操作系统的嵌入式软件

    1.4.3典型嵌入式操作系统

    1.4.4软件架构选择建议

    本章小结

    思考与扩展

    第2章STM32开发板硬件系统

    2.1开发板总体概况

    2.1.1开发板设计背景

    2.1.2开发板总体介绍

    2.2电源模块

    2.2.1电源模块原理图

    2.2.2电源模块工作原理

    2.3核心板电路

    2.3.1CPU模块

    2.3.2串口通信模块

    2.3.3外接晶振模块

    2.3.4备用电源模块

    2.3.5ADC模块电源

    2.3.6CPU滤波电路

    2.3.7复位电路

    2.3.8启动设置电路

    2.4I/O模块电路

    2.4.1LED指示灯模块

    2.4.2按键模块



    2.4.3数码管模块

    2.4.4蜂鸣器模块

    2.4.5OLED显示屏电路

    2.5扩展模块电路

    2.5.1温度传感器

    2.5.2红外传感器

    2.5.3AD采样模块

    2.5.4EEPROM存储器

    2.5.5I/O引脚外接模块

    本章小结

    思考与扩展

    第3章MDK软件与工程模板创建

    3.1STM32固件库认知

    3.1.1STM32固件库概述

    3.1.2STM32固件库下载

    3.1.3STM32固件库目录结构

    3.2工程模板创建

    3.2.1Keil MDKARM软件简介

    3.2.2工程模板的创建

    3.3软件模拟仿真

    本章小结

    思考与扩展

    第4章通用目的输入输出口

    4.1GPIO概述及引脚命名

    4.2GPIO内部结构

    4.2.1输入驱动器

    4.2.2输出驱动器

    4.3GPIO工作模式

    4.3.1输入浮空

    4.3.2输入上拉

    4.3.3输入下拉

    4.3.4模拟输入

    4.3.5开漏输出

    4.3.6开漏复用输出

    4.3.7推挽式输出

    4.3.8推挽式复用输出

    4.3.9工作模式选择

    4.4GPIO输出速度

    4.5复用功能重映射

    4.6GPIO控制寄存器

    4.7GPIO寄存器配置实例

    4.8寄存器版LED灯闪烁工程

    4.8.1创建寄存器版工程模板

    4.8.2LED灯闪烁程序设计

    4.8.3基于寄存器开发方式特点

    本章小结

    思考与扩展

    第5章LED流水灯与SysTick定时器

    5.1库函数开发方法

    5.2GPIO输出库函数

    5.2.1函数RCC_APB2PeriphClockCmd

    5.2.2函数GPIO_Init

    5.2.3函数GPIO_Write

    5.2.4函数GPIO_SetBits

    5.2.5函数GPIO_ResetBits

    5.2.6函数GPIO_WriteBit

    5.3LED流水灯控制

    5.4SysTick定时器

    5.4.1SysTick定时器概述

    5.4.2SysTick定时器寄存器

    5.4.3SysTick定时器应用

    本章小结

    思考与扩展

    第6章按键输入与蜂鸣器

    6.1GPIO输入库函数

    6.1.1函数GPIO_ReadInputDataBit

    6.1.2函数GPIO_ReadInputData

    6.1.3函数GPIO_ReadOutputDataBit

    6.1.4函数GPIO_ReadOutputData

    6.2项目分析

    6.3项目实施

    本章小结

    思考与扩展

    第7章数码管动态显示

    7.1数码管显示接口

    7.1.1数码管工作原理

    7.1.2数码管编码方式

    7.1.3数码管显示方式

    7.2项目分析

    7.3项目实施

    7.4项目拓展

    本章小结

    思考与扩展

    第8章中断系统与基本应用

    8.1中断的基本概念

    8.1.1中断的定义

    8.1.2中断的应用

    8.1.3中断源与中断屏蔽

    8.1.4中断处理过程

    8.1.5中断优先级与中断嵌套

    8.2STM32F103中断系统

    8.2.1嵌套向量中断控制器NVIC

    8.2.2STM32F103中断优先级

    8.2.3STM32F103中断向量表

    8.2.4STM32F103中断服务函数

    8.3STM32F103外部中断/事件控制器EXTI

    8.3.1EXTI内部结构

    8.3.2EXTI工作原理

    8.3.3EXTI主要特性

    8.4STM32中断相关库函数

    8.4.1STM32F10x的NVIC相关库函数

    8.4.2STM32F10x的EXTI相关库函数

    8.4.3EXTI中断线GPIO引脚映射库函数

    8.5EXTI项目实例

    8.5.1项目分析

    8.5.2项目实施

    本章小结

    思考与扩展

    第9章定时器与脉冲宽度调制

    9.1STM32F103定时器概述

    9.2基本定时器

    9.2.1基本定时器简介

    9.2.2基本定时器的主要特性

    9.2.3基本定时器的功能

    9.2.4基本定时器寄存器

    9.3通用定时器

    9.3.1通用定时器简介

    9.3.2通用定时器主要功能

    9.3.3通用定时器功能描述

    9.3.4通用定时器工作模式

    9.3.5通用定时器寄存器

    9.4高级定时器

    9.4.1高级定时器简介

    9.4.2高级定时器特性

    9.4.3高级定时器结构

    9.5定时器相关库函数

    9.5.1函数TIM_DeInit

    9.5.2函数TIM_TimeBaseInit

    9.5.3函数TIM_OC1Init

    9.5.4函数TIM_OC2Init

    9.5.5函数TIM_OC3Init

    9.5.6函数TIM_OC4Init

    9.5.7函数TIM_Cmd

    9.5.8函数TIM _ITConfig

    9.5.9函数TIM_OC1PreloadConfig

    9.5.10函数TIM_OC2PreloadConfig

    9.5.11函数TIM_OC3PreloadConfig

    9.5.12函数TIM_OC4PreloadConfig

    9.5.13函数TIM_GetFlagStatus

    9.5.14函数TIM_ClearFlag

    9.5.15函数TIM_GetITStatus

    9.5.16函数TIM_ClearITPendingBit

    9.5.17函数TIM_SetCompare1

    9.5.18函数TIM_SetCompare2

    9.5.19函数TIM_SetCompare3

    9.5.20函数TIM_SetCompare4

    9.6项目实例

    9.6.1定时器项目

    9.6.2PWM项目

    本章小结

    思考与扩展

    第10章串行通信接口USART

    10.1数据通信基本概念

    10.1.1并行通信与串行通信

    10.1.2异步通信与同步通信

    10.1.3串行通信的制式

    10.1.4串行通信的校验

    10.1.5串行通信的波特率

    10.2SM32F103的USART工作原理

    10.2.1USART介绍

    10.2.2USART主要特性

    10.2.3USART功能概述

    10.2.4USART通信时序

    10.2.5USART中断

    10.2.6USART相关寄存器

    10.3USART相关库函数

    10.3.1函数USART_DeInit

    10.3.2函数USART_Init

    10.3.3函数USART_Cmd

    10.3.4函数USART_SendData

    10.3.5函数USART_ReceiveData

    10.3.6函数USART_GetFlagStatus

    10.3.7函数USART_ClearFlag

    10.3.8函数USART_ITConfig

    10.3.9函数USART_GetITStatus

    10.3.10函数USART_ClearITPendingBit

    10.3.11函数USART_DMACmd

    10.4项目实例

    10.4.1项目分析

    10.4.2项目实施

    本章小结

    思考与扩展

    第11章SPI与OLED显示屏

    11.1SPI通信原理

    11.1.1SPI介绍

    11.1.2SPI互连

    11.2STM32F103的SPI工作原理

    11.2.1SPI主要特征

    11.2.2SPI内部结构

    11.2.3时钟信号的相位和极性

    11.2.4数据帧格式

    11.2.5配置SPI为主模式

    11.2.6配置SPI为从模式

    11.3OLED显示屏

    11.3.1OLED简介

    11.3.2开发板OLED显示屏

    11.3.3OLED显示屏接口

    11.4SPI库函数

    11.4.1函数SPI_I2S_DeInit

    11.4.2函数SPI_Init

    11.4.3函数SPI_Cmd

    11.4.4函数SPI_I2S_SendData

    11.4.5函数SPI_I2S_ReceiveData

    11.4.6函数SPI_I2S_ITConfig

    11.4.7函数SPI_I2S_GetITStatus

    11.4.8函数SPI_I2S_ClearFlag

    11.5项目实例

    11.5.1项目分析

    11.5.2项目实施

    本章小结

    思考与扩展

    第12章模拟数字转换器

    12.1ADC概述

    12.1.1ADC基本原理

    12.1.2ADC性能参数

    12.1.3ADC主要类型

    12.2STM32F103的ADC工作原理

    12.2.1主要特征

    12.2.2内部结构

    12.2.3通道及分组

    12.2.4时序图

    12.2.5数据对齐

    12.2.6校准

    12.2.7转换时间

    12.2.8转换模式

    12.2.9外部触发转换

    12.2.10中断和DMA请求

    12.3ADC相关库函数

    12.3.1函数ADC_DeInit

    12.3.2函数ADC_Init

    12.3.3函数ADC_RegularChannelConfig

    12.3.4函数ADC_InjectedChannleConfig

    12.3.5函数ADC_Cmd

    12.3.6函数ADC_ResetCalibration

    12.3.7函数ADC_GetResetCalibrationStatus

    12.3.8函数ADC_StartCalibration

    12.3.9函数ADC_GetCalibrationStatus

    12.3.10函数ADC_SoftwareStartConvCmd

    12.3.11函数ADC_GetConversionValue

    12.3.12函数ADC_GetFlagStatus

    12.3.13函数ADC_DMACmd

    12.4项目实例

    12.4.1项目分析

    12.4.2项目实施

    本章小结

    思考与扩展

    第13章直接存储器访问

    13.1DMA的基本概念

    13.1.1DMA由来

    13.1.2DMA定义

    13.1.3DMA传输过程

    13.1.4DMA优点

    13.2STM32F103的DMA工作原理

    13.2.1STM32F103的DMA主要特性

    13.2.2STM32F103的DMA内部结构

    13.2.3STM32F103的DMA通道

    13.2.4STM32F103的DMA优先级

    13.2.5STM32F103的DMA传输模式

    13.2.6STM32F103的DMA中断

    13.3DMA相关库函数

    13.3.1函数DMA_DeInit

    13.3.2函数DMA_Init

    13.3.3函数DMA_GetCurrDataCounte

    13.3.4函数DMA_Cmd

    13.3.5函数DMA_GetFlagStatus

    13.3.6函数DMA_ClearFlag

    13.3.7函数DMA_ITConfig

    13.3.8函数DMA_GetITStatus

    13.4项目实例

    13.4.1项目分析

    13.4.2项目实施

    本章小结

    思考与扩展

    第14章I2C接口与EEPROM存储器

    14.1I2C通信原理

    14.1.1I2C串行总线概述

    14.1.2I2C总线的数据传送

    14.2STM32F103的I2C接口

    14.2.1STM32F103的I2C主要特性

    14.2.2STM32F103的I2C内部结构

    14.2.3STM32F103的模式选择

    14.3STM32F103的I2C相关库函数

    14.3.1函数I2C_DeInit

    14.3.2函数I2C_ Init

    14.3.3函数I2C_ Cmd

    14.3.4函数I2C_ GenerateSTART

    14.3.5函数I2C_ GenerateSTOP

    14.3.6函数I2C_ Send7bitAddress

    14.3.7函数I2C_ SendData

    14.3.8函数I2C_ ReceiveData

    14.4项目实例

    14.4.1模拟I2C时序要求

    14.4.2模拟I2C函数

    14.4.3EEPROM芯片24C02

    14.4.4模拟I2C访问24C02项目分析

    14.4.5模拟I2C访问24C02项目实施

    本章小结

    思考与扩展


    第15章RTC时钟与BKP寄存器

    15.1RTC时钟

    15.1.1RTC简介

    15.1.2RTC主要特性

    15.1.3RTC内部结构

    15.1.4RTC复位过程

    15.2备份寄存器(BKP)

    15.2.1BKP简介

    15.2.2BKP特性

    15.2.3BKP侵入检测

    15.3RTC时钟的操作

    15.3.1RTC的初始化

    15.3.2RTC时间写入初始化

    15.4RTC与BKP相关库函数

    15.4.1函数PWR_BackupAccessCmd

    15.4.2函数BKP_DeInit()

    15.4.3函数RCC_LSEConfig

    15.4.4函数RCC_GetFlagStatus

    15.4.5函数RCC_RTCCLKConfig

    15.4.6函数RCC_RTCCLKCmd

    15.4.7函数RTC_WaitForSynchro

    15.4.8函数RTC_WaitForLastTask

    15.4.9函数RTC_ITConfig

    15.4.10函数RTC_SetPrescaler

    15.4.11函数RTC_SetCounter

    15.4.12函数RTC_GetCounter()

    15.4.13函数BKP_ReadBackupRegister

    15.4.14函数BKP_WriteBackupRegister

    15.4.15函数RCC_ClearFlag

    15.5项目实例

    15.5.1项目分析

    15.5.2项目实施

    15.5.3项目调试

    本章小结

    思考与扩展

    附录AASCII码表

    附录BSTM32F103微控器小容量产品系列引脚定义表

    附录CSTM32F103微控器中等容量产品系列引脚定义表

    附录DSTM32F103微控器大容量产品系列引脚定义表

    参考文献

    “青山遮不住,毕竟东流去”,虽然我们对经典的8位单片机(如MCS51)、16位单片机(如MSP430)积累了大量的技术资料,用起

    来得心应手。但是单片机复杂的指令、较低的主频、有限的存储空间、极少的片上外设,使其在面对复杂应用时,捉襟见肘,难以胜

    任。虽然8位、16位单片机的应用不会就此结束,但可以肯定的是32位处理器时代已经到来,32位处理器性能得到了显著提升,片上

    资源更加丰富,功能也越来越复杂和完善。
    选题背景
    在这个大环境下,ARM CortexM3处理器诞生了!由于采用了最新的设计技术,它的内核逻辑门数更低,性能却更强。许多曾经只能

    求助于高级32位处理器或DSP的软件设计,都能在CortexM3上运行得更快。
    基于ARM的嵌入式系统因为功能复杂、芯片系列多、开发模式各异,使其不仅难教而且难学。但是由于各行各业对控制器能力的要求

    “得寸进尺”,而32位嵌入式系统性价比不断提高,促使笔者下定决心转型,经过几年的努力,笔者成功转型ARM嵌入式开发。
    回想学习和教学过程,有几点经验要和大家分享: 一是要选择一个合适的内核,ARM嵌入式处理器无疑是主流产品,市场占有率相当

    高; 二是要选择合适的基于ARM内核微控制器,目前意法半导体公司(ST Microelectronics)推出的32位CortexM内核的MCU产品市

    场占有率很高,技术资料全面,官方固件库易学易用(基于上述两点,本书主要讲述的是目前被广泛使用的基于CortexM3内核的

    STM32F103微控制器); 三是要选择一本合适的教材,笔者认为一本好的嵌入式教材应该具有由浅入深,循序渐进,理论够用,注重

    实践,共性和个性兼顾等特点,既能较为系统地介绍嵌入式系统的基本概念和原理,又能指导初学者在实际软硬件环境中进行开发实

    践。
    主要内容
    针对上述情况,笔者根据多年的嵌入式系统教学和开发经验,试图做到内容循序渐进,理论与实践并重,共性与个性兼顾,将嵌入式

    系统的理论知识和基于ARM CortexM3内核的STM32F103微控制器的实际开发相结合,编写了本书。
    全书共有15章,划分为3部分。
    第1部分(第1~3章)为系统平台模块。第1章介绍了嵌入式系统定义、ARM内核,以及基于ARM CortexM3内核的STM32微控制器。第2

    章对STM32嵌入式开发板硬件平台各模块进行详细介绍。第3章介绍Keil MDK软件并进行工程模板创建。
    第2部分(第4~9章)为基本外设模块,分别对STM32嵌入式系统最常用外设模块进行介绍。第4章讲解通用目的输入输出口。第5章讲

    解LED流水灯与SysTick定时器。第6章讲解按键输入与蜂鸣器。第7章讲解数码管动态显示。第8章讲解中断系统与基本应用。第9章讲

    解定时器与脉冲宽度调制。
    第3部分(第10~15章)为扩展外设模块,分别对STM32嵌入式系统高级外设模块进行介绍。第10章讲解串行通信接口USART。第11章讲

    解SPI与OLED显示屏。第12章讲解模拟数字转换器。第13章讲解直接存储器访问。第14章讲解I2C接口与EEPROM存储器。第15章讲解

    RTC时钟与BKP寄存器。
    无论是基本外设模块,还是扩展外设模块,从第4章开始到第15章结束,每一章都先对模块所涉及的理论知识进行讲解,然后引入项

    目实例,给出项目实施的具体步骤,项目可以在课堂上完成。整个教学理论与实践一体,学中做,做中学。
    本书的特色和价值
    (1) 以学生认知过程为导向设计教材逻辑结构、组织教材章节内容。全书先硬件后软件,由浅入深; 遵循理论够用、重在实践、容

    易上手的原则,培养学习兴趣,激发学习动力。
    (2) 采取项目引领,任务驱动的方式,强调教、学、做一体,注重学生工程实践能力的培养。对每一个典型外设模块,在简明扼要阐

    述原理的基础上,围绕其应用,均以完整案例的形式讨论其设计精髓,并给出完整的工程案例。
    (3) 传承51经典,发扬ARM长处,助推MCU升级。ARM嵌入式系统实际上是8位单片机的升级扩展,但是其高性能必然带来系统复杂度的

    大幅提高,如果能借助8位单片机理念、方法和案例的共性,有助于提升读者学习兴趣,使其轻松入门嵌入式开发。
    本书配套学习资源,为便于提高学习效率,笔者精心制作了程序代码、学习素材、教材课件和教学大纲,扫码即可获取。


    程序代码



    学习素材



    教材课件



    教学大纲




    致谢
    在本书的撰写过程中参阅了许多资料,在此对所参考资料的作者表示诚挚的感谢。在编写过程中还引用了互联网上最新资讯及报道,

    在此向原作者和刊发机构表示真挚的谢意,并对不能一一注明来源的作者深表歉意。对于收集到的共享资料没有标明出处或找不到出

    处的,以及对有些资料进行加工、修改后纳入本书的,在此郑重声明,本书内容仅用于教学,其著作权属于原作者,并向他们表示致

    敬和感谢。
    在本书的编写过程中得到了家人的理解和帮助,并且一直得到清华大学出版社梁颖、盛东亮、钟志芳等各位老师的关心和大力支持,

    清华大学出版社的工作人员也付出了辛勤的劳动,在此谨向支持和关心本书编写的家人、同仁和朋友一并致谢。
    由于嵌入式技术的发展日新月异,加之笔者水平有限及时间仓促,书中难免有疏漏和不足之处,恳请广大读者批评指正。
    作者

    2019年10月



    清华大学出版社官方旗舰店

    1
    • 商品详情
    • 内容简介

    售后保障

    最近浏览

    猜你喜欢

    该商品在当前城市正在进行 促销

    注:参加抢购将不再享受其他优惠活动

    x
    您已成功将商品加入收藏夹

    查看我的收藏夹

    确定

    非常抱歉,您前期未参加预订活动,
    无法支付尾款哦!

    关闭

    抱歉,您暂无任性付资格

    此时为正式期SUPER会员专享抢购期,普通会员暂不可抢购