本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正
商品基本信息,请以下列介绍为准 | |
商品名称: | 基于STM32的嵌入式系统设计 |
作者: | 刘一主编 |
定价: | 43.0 |
出版社: | 中国铁道出版社 |
出版日期: | 2015-09-01 |
ISBN: | 9787113205447 |
印次: | |
版次: | |
装帧: | |
开本: |
内容简介 | |
本书介绍了以ARM Cortex—M3为内核的STM32F103增强型微控制器,深入讲解其硬件和软件设计方法。全书内括:ARM Cortex—M3内核结构,开发环境与*小系统,STM32固件库,时钟控制系统,向量中断控制器,系统定时器(SysTick),通用、复用及重映射I/O,外部中断输入,USART,SPI,通用定时器,ADC,看门狗等,并通过综合实例,详细讲解了嵌入式以太网串口服务器的设计。 |
目录 | |
第1章 ARMCortexM3内核结构 1.1 ARMCortex-M3内核简介 1.2 处理器的组件 1.3 存储器系统 第2章 开发环境与系统 2.1 开发环境 2.1.1 新建工程和添加源代码 2.1.2 设置工程 2.1.3 编译 2.1.4 调试 2.2 系统与启动选择 第3章 STM32固件库 3.1 STM32固件库的定义规则 3.1.1 固件库命名规则 3.1.2 代码标准 3.2 STM32库的层次结构 3.2.1 固 3.2.2 固件库文件 3.3 STM32库的使用 3.4 位带操作 第4章 时钟控制系统 4.1 时钟源 4.2 时钟控制系统RCC寄存器 4.3 系统时钟配置寄存器例程 4.4 主要RCC库函数介绍 第5章 向量中断控制器 5.1 处理器模式 5.2 异常 5.2.1 异常类型 5.2.2 优先级 5.2.3 中断向量表 5.3 NVIc寄存器 5.4 NVIc库函数 第6章 系统定时器 6.1 SysTick寄存器 6.2 SysTick寄存器开发实例 6.3 SysTick库函数 6.4 SysTick库函数开发实例 第7章 通用、复用及重映射I/O 7.1 通用、复用和重映射:I/O的关系 7.2 通用I/O寄存器 7.2.1 各种输入/输出模式 7.2.2 相关寄存器 7.3 通用I/O寄存器开发实例 7.3.1 实例l——流水灯实验 7.3.2 实例2——按键实验 7.3.3 实例3——LCDl602的使用 7.4 GPIO库函数 7.5 GPIOx端口编程步骤 7.5.1 配置GPIOx端口 7.5.2 操作GPIOx端口 7.6 GPIO应用示例 第8章 外部中断输入 8.1 外部中断寄存器描述 8.2 外部中断寄存器开发实例 8.3 EXTI相关库函数 8.4 外部中断引脚设置 8.5 外部中断库函数应用示例 第9章 USART 9.1 USART概述 9.1.1 发送器 9.1.2 接收器 9.1.3 分数波特率发生器 9.1.4 usART中断请求 9.1.5 usART模式配置 9.2 USART寄存器 9.3 uSART寄存器开发实例 9.4 usART库函数 9.5 usARTx串口编程步骤 9.6 usART应用示例 第10章 SPI 10.1 STM32SPI 10.1.1 NSS引脚管理 10.1.2 主从模式选择 10.1.3 数据发送和接收 10.1.4 单工通信 10.1.5 关闭sPI 10.1.6 SPI中断 10.2 SPI寄存器 10.3 SPI寄存器开发实例 10.3.PI能 10.3.2 nRF24L01无线通信模块使用 10.4 SPI库函数解读 10.5 SPI库函数开发实例 第11章 通用定时器 11.1 通用定时器概述 11.2 通用定时器能 11.2.1 时基单元 11.2.2 时钟选择 11.2.3 计数器模式 11.2.4 PWM模式 11.3 通用定时器寄存器 11.4 TIM库函数解读 11.5 通用定时器应用示例 第12章 ADC 12.1 ADC概述 12.2 转换模式 12.3 双ADC模式 12.4 ADC寄存器 12.5 ADC寄存器开发实例 12.6 ADC库函数 12.7 ADC应用示例 第13章 看门狗 13.1 独立看门狗 13.1.1 独立看门狗特性 13.1.2 寄存器访问时序 13.1.3 预分频和重装值 13.2 1w.DG寄存器 13.3 窗口看门狗 13.3.1 窗口看门狗特性 13.3.2 配置窗口看门狗 13.4 wwDG寄存器 13.5 wwDG库函数 13.5.1 wwDG寄存器结构 13.5.2 wwDG库函数 13.6 看门狗应用示例 第14章 综合实例——基于STM32的智能家居系统 14.1 以太网数据帧结构 14.2 驱动程序介绍 14.3 嵌入式以太网智能家居硬件设计 14.4 嵌入式以太网串口服务器的软件设计 参考文献 |
前言 | |
STM32系列微控制器年来迅建兴起的基于ARM Cortex-M3内核的高端32位微控制器的代表,其中,STM32F103微控制器,工作频率为72MHx,内置高速存储器、丰富的增强型I/O端口和连接到两条APBSTM32F103微控制器介据嵌入式系统开发的。 对于初学者而言,是只有少数8位单片机开发经验的人来说,跨入STM32这扇大门,开发方式发生了较大的改变。这里的“改变括:开发环境的改变,开发工具的改变、工程结构的改变和调试手段的改变。学习STM32时,建议按如下几行:步,收集阅读资料,资括STM32书籍,官方的芯片文档和库函数文档,但是,不管看书籍还是文档,不要者求一下都能理解、记住,只需理解基本内容,对复杂的内容有一个初步的印象,以后碰到问题的时候,知道需要哪方面的知识,然后查阅资料或上网找答案。第二步,选购一个例程比较丰富的开发板,不用买的,只要有比较丰富的配套例程即可。按照例程,把开发板上的相关测试、操作步骤,都动手做一遍,以便熟悉开发软件的使用。先看例程的效果,再去读例程代码,理解为何这样写,不理解的地方查书,查资料,然后,参照资料开始改动例程,编译下载,查看效果是否达到自己的设想,STM32的外设模块多,学习要有先后顺序与侧。GPIO.USART.TIMER.NVIC和ADC是常能模块,要能悉。其他的如USB、DMA等较难理解的模块可以在以后用到的时候再深入学习。 关于是学习基于寄存器编程还是基于库函数编程这个问题,笔者的着法是先学习基于库函数的编程更容易。可能有很多同学停留在对8位单片机的认识上,认为代码里看不到对寄存器的直接设置,很不安心。这个观念要转变,其实大家当初在学习C语言的时候,哪里看到寄存器了?我们要理解掌握C语言的精髓括结构体、枚举和函数调用等,这些是官方库函数的基础,其中定义了大量的结构体数据类型和枚举数据类型,提供了大量具有能的函数,我们要知道这个函能,如何调用,参数是什么,返回值是什么。 基于以上认识,我们编写本书主要是给大家提供一本入门的参考资料。本书提供了大能模块的寄存器说明、主要的库函数说明和使能模块的配置步职;每个模块都提供了一个基于库函数的简单实例和一个基于寄存器的实例,这些实例都是两个复杂应用——基于STM32的智能充电器和基于STM32的智能家居的能。后一章提供了几个复杂的应用实例,我们的设想是:通过对配置步骤和实例的学习,使读者快速掌握使用库函数编写代码的方法;通过查阅本书能够找到大部分寄存器和库函数的使用说明,本书的读者需要具有一定的C语言。单片机基础。 本书由刘一(广求技术师范学院)任主编,范君阁,白娜(哈尔滨石油学院)任副主编,具体编写分工如下:刘一编写第5章-第8章。第10章-第14章;范君闯编写第pan>章-第3章:白娜编写第4章和第9章。本书适合作为普通高等院校嵌入式系统设计课程的教材,也可作为高校师生课程设计,毕业设计以及电子设计竟赛的培训和指导教材,还可作为嵌入式开发人员的参考书。 由于时间仓促,编者有限、书中兢漏与不妥之处在所难免,恳请专家和读者批评指正。 编者 2015年4月 |