登入帳戶  | 訂單查詢  | 購物車/收銀台( 0 ) | 在線留言板  | 付款方式  | 運費計算  | 聯絡我們  | 幫助中心 |  加入書簽
會員登入 新用戶登記
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類瀏覽雜誌 臺灣用戶
品種:超過100萬種各類書籍/音像和精品,正品正價,放心網購,悭钱省心 服務:香港台灣澳門海外 送貨:速遞郵局服務站

新書上架簡體書 繁體書
暢銷書架簡體書 繁體書
好書推介簡體書 繁體書

三月出版:大陸書 台灣書
二月出版:大陸書 台灣書
一月出版:大陸書 台灣書
12月出版:大陸書 台灣書
11月出版:大陸書 台灣書
十月出版:大陸書 台灣書
九月出版:大陸書 台灣書
八月出版:大陸書 台灣書
七月出版:大陸書 台灣書
六月出版:大陸書 台灣書
五月出版:大陸書 台灣書
四月出版:大陸書 台灣書
三月出版:大陸書 台灣書
二月出版:大陸書 台灣書
一月出版:大陸書 台灣書

『簡體書』ARM Cortex-M3体系结构与编程(第2版)

書城自編碼: 3025902
分類:簡體書→大陸圖書→計算機/網絡程序設計
作者: 冯新宇
國際書號(ISBN): 9787302473329
出版社: 清华大学出版社
出版日期: 2017-08-01
版次: 2 印次: 1

書度/開本: 32开 釘裝: 平装

售價:HK$ 100.1

我要買

 

** 我創建的書架 **
未登入.


新書推薦:
非洲三万里(2024版)
《 非洲三万里(2024版) 》

售價:HK$ 81.6
不思而美:一个人的心灵简史
《 不思而美:一个人的心灵简史 》

售價:HK$ 69.6
减压七处方
《 减压七处方 》

售價:HK$ 67.2
成为作家
《 成为作家 》

售價:HK$ 57.6
工作文化史 古代卷
《 工作文化史 古代卷 》

售價:HK$ 81.6
像亚马逊一样思考
《 像亚马逊一样思考 》

售價:HK$ 94.8
中国震撼
《 中国震撼 》

售價:HK$ 86.4
以讹传讹:错误信息如何传播
《 以讹传讹:错误信息如何传播 》

售價:HK$ 93.6

 

建議一齊購買:

+

HK$ 183.2
《 数字设计和计算机体系结构(英文版·第2版·ARM版) 》
+

HK$ 133.5
《 深入剖析ARM Cortex-A8 》
+

HK$ 88.5
《 ARM处理器开发详解:基于ARM Cortex-A9处理器的开发设计 》
編輯推薦:
本书系统论述了嵌入式微处理器ARM Cortex-M3STM32的原理、架构、编程与项目开发。全书从*基本的IO端口配置讲起,依次介绍了中断、串口通信、AD转换、定时器、CAN总线等基本功能,然后详尽介绍了几类典型的实际嵌入式系统项目的开发。全书给出了作者近年设计的5个实际项目:? 倒立摆设计;? 能车设计;? 平衡车设计;? 电子秤设计;? 井下通信分站设计。这些项目都提供了全部源代码,可直接拿来二次开发,用于课程设计或科研项目。本书配套提供了全部设计源代码、设计图纸及演示视频,方便读者学习使用。本书配有基础的项目开发板;并提供学习交流QQ群,欢迎读者参与进来,和广大的STM32爱好者共同学习,及时解决设计中遇到的问题。
內容簡介:
本书从CortexM3处理器入手,详细阐述了STM32微控制器的用法。本书从编程软件的使用、STM32的IO口配置讲起,深入浅出地介绍了该处理器的重要内容,主要包括基本IO接口、中断、ADC、定时器等。*后几章给出了多个案例,有的来源于学生的电子设计大赛作品,有的来源于科研课题,如平衡车设计、井下通信分站设计、四旋翼飞行器设计等,都较好地诠释了STM32的典型应用,可以帮助读者快速地入门并且上手操作。*后一章给出几个设计案例思路,读者在综合前面的学习后,可以自行设计作品,达到活学活用的目的。
本书配套全部设计电路图、源代码和PPT素材以及在线答疑等,方便读者学习。本书可作为电子、通信及控制等相关专业的参考书,也可以作为相关技术人员的技术参考书。
關於作者:
作者简介冯新宇 1978,黑龙江科技大学副教授,长期从事嵌入式系统项目开发和相关教学工作。曾主持或参与嵌入式相关课题与项目开发20余项;近10年来一直作为指导教师参与全国电子设计大赛、飞思卡尔电子设计大赛、黑龙江省电子设计大赛等工作,所指导的学生多次获得各种赛事重大奖励。个人代表性著作有《ADS2009射频电路设计与仿真》《ARM 9嵌入式开发基础与实例进阶》与《四旋翼无人飞行器设计》)。
目錄
目录

第2版前言Ⅰ

第1版前言Ⅲ

学习说明Ⅴ
第1章ARM CortexM3核介绍

1.1CortexM3主要特性

1.2典型M3核处理器特性

1.2.1命名规则

1.2.2产品功能和外设配置

习题

第2章开发环境搭建

2.1MDK安装

2.2新建工程

2.3采用STLink调试仿真代码

习题

第3章基本IO端口控制

3.1MDK新建工程

3.2MDK工程配置

3.3寄存器法操作代码分析

3.4时钟配置

3.4.1时钟树

3.4.2时钟源

3.4.3APB2外设时钟使能寄存器RCC_APB2ENR

3.5IO端口配置

3.5.1IO基本情况

3.5.2GPIO配置寄存器描述

3.5.3端口输出数据寄存器

3.6用库函数操作流水灯

3.6.1GPIO_Init函数

3.6.2RCC_APB2PeriphClockCmd

3.6.3控制IO输出电平

3.6.4LED.h文件

3.6.5软件调试易现问题

3.7使用库函数法控制数码管

3.7.1数码管基础知识

3.7.2硬件电路设计

3.7.3软件说明

3.8简单按键输入

习题

第4章中断

4.1STM32中断和异常

4.2STM32中断相关的基本概念

4.2.1优先级

4.2.2中断控制器NVIC

4.2.3NVIC的优先级组

4.3外部中断

4.3.1外部中断基本情况

4.3.2使用外部中断的基本步骤

习题

第5章串口通信

5.1串口通信基础

5.1.1基本概念

5.1.2常用的串行通信接口

5.1.3应用串行通信的数据采集结构

5.2STM32串口操作

5.2.1寄存器方式操作串口

5.2.2库函数方式操作串口

习题

第6章直接寄存器访问

6.1DMA基础知识

6.2STM32的DMA操作

6.2.1寄存器方式操作DMA

6.2.2库函数方式操作DMA

6.2.3DMA操作实例

习题

第7章模拟数字转换器

7.1ADC基础知识

7.1.1ADC主要特性

7.1.2ADC框图及引脚分布

7.1.3通道选择

7.1.4ADC的转换模式

7.1.5ADC寄存器和固件库函数列表

7.2STM32ADC操作

7.2.1寄存器方式操作ADC

7.2.2库函数方式操作ADC

7.2.3ADC操作实例

习题

第8章定时器

8.1定时器基础知识

8.1.1高级定时器

8.1.2基本定时器

8.1.3通用定时器

8.2STM32定时器操作

8.2.1寄存器方式操作定时器

8.2.2库函数方式操作定时器

8.2.3定时器操作实例

习题

第9章CAN总线设计

9.1CAN总线基本工作原理

9.2CAN协议的特点

9.3CAN协议通信过程

9.4CAN的报文格式

9.4.1数据帧

9.4.2遥控帧

9.4.3错误帧

9.4.4过载帧

9.4.5帧间隔

9.4.6优先级的决定

9.5CAN总线错误处理机制

9.5.1错误状态

9.5.2错误检测

9.6同步

9.6.1同步类型

9.6.2同步原则

9.7CAN总线拓扑结构

9.7.1STM32的CAN通信模块

9.7.2CAN控制器MCP2515介绍

9.8CAN通信的软件设计

9.8.1系统程序流程

9.8.2系统接收发送中断处理

9.8.3CAN总线初始化配置

9.8.4报文的发送

9.8.5报文的接收

9.9CAN通信示例

习题

第10章倒立摆设计

10.1设计内容与实现指标

10.1.1倒立摆的选择

10.1.2系统设计指标

10.2系统方案确定

10.2.1系统结构组成

10.2.2系统模型分析

10.2.3系统控制方案确定

10.3系统硬件设计

10.4电机的选择及驱动电路的设计

10.4.1电机的选择

10.4.2电机驱动电路的设计

10.5测量电路设计

10.5.1摆杆角度测量电路的设计

10.5.2旋臂位置测量电路的设计

10.6通信电路的设计

10.6.1上位机通信电路的设计

10.6.2无线传输电路的设计

10.7辅助电路设计

10.7.1语音提示电路的设计

10.7.2电源电路的设计

10.8系统软件设计

10.8.1系统控制程序设计

10.8.2起摆程序设计

10.8.3PID控制程序设计

10.8.4电机驱动程序设计

10.8.5上位机通信程序设计

10.8.6无线通信程序设计

10.9作品的制作与调试

10.9.1倒立摆机械结构的制作问题

10.9.2PCB设计应注意的问题

10.9.3电路板的制作问题

10.10PID参数的整定

10.10.1比例参数整定

10.10.2积分参数整定

10.10.3微分参数整定

习题

第11章智能小车设计

11.1硬件电路设计

11.1.1硬件系统方案设计

11.1.2最小系统电路设计

11.1.3电源电路设计

11.1.4电机驱动电路设计

11.1.5环境检测传感器电路设计

11.2人机交互电路设计

11.2.1OLED显示电路设计

11.2.2红外遥控电路设计

11.2.3蜂鸣器提示电路设计

11.3总体软件设计

11.3.1道路基准采集模式软件

11.3.2PID寻迹模式软件

11.3.3迷宫模式软件

11.3.4OLED显示软件设计

11.4PID控制软件设计

11.4.1PID介绍

11.4.2比例P控制器

11.4.3比例积分PI控制器

11.4.4比例微分PD控制器

11.4.5比例积分微分PID控制器

11.4.6PID寻迹

11.5迷宫算法设计

11.5.1左手法

11.5.2迷宫搜索

11.5.3迷宫最短路径算法

11.6设计测量方法与数据处理

11.6.1传感器分布

11.6.2五路模拟传感器数据测量

11.7传感器软件滤波

11.7.1软件滤波处理介绍

11.7.2软件滤波的方法

11.8调试方法

11.8.1PID参数调试

11.8.2迷宫模式调试

习题

第12章平衡车设计

12.1硬件电路设计

12.1.1硬件系统方案设计

12.1.2环境检测传感器电路设计

12.2人机交互电路设计

12.3MPU6050使用方法

12.3.1引脚说明

12.3.2SMPRT_DIV寄存器

12.3.3CONFIG寄存器

12.3.4GYRO_CONFIG寄存器

12.3.5ACCEL_CONFIG寄存器

12.3.6加速度计测量寄存器

12.3.7TEMP_OUT_H和TEMP_OUT_L寄存器

12.3.8陀螺仪测量寄存器

12.3.9PWR_MGMT_1寄存器

12.3.10WHO_AM_I寄存器

12.4总体软件设计

12.4.1车身状态采集模式软件

12.4.2PID车身保持模式软件

12.4.3人机交互模式软件设计

12.4.4卡尔曼滤波算法

习题

第13章电子秤设计

13.1设计指标

13.2设计方案

13.3硬件电路设计说明

13.3.1主控制器相关电路

13.3.2TFT液晶屏相关电路设计

13.3.3AD芯片HX711相关电路设计

13.3.4WT588D语音模块相关电路设计

13.3.5称重传感器相关电路设计

13.4软件设计思路及代码分析

13.4.1TFT触控液晶模块部分

13.4.2WT588D语音模块部分

13.4.3HX711芯片部分

13.4.4DS18B20芯片部分

13.4.5数据计算部分

习题

第14章井下通信分站设计

14.1硬件电路设计

14.1.1监控分站主要设计目标及参数

14.1.2硬件电路设计方案

14.2软件方案设计

14.2.1软件总体程序的思路

14.2.2RS485接口的使用及程序流程

14.2.3CAN数据传输

14.2.4OLED显示

14.2.5键盘输入

习题

第15章无线电能功率传输系统的设计

15.1设计内容与实现指标

15.1.1设计内容

15.1.2系统设计指标

15.2无线电能传输的基本原理分析

15.2.1无线电能传输的耦合方式

15.2.2磁谐振耦合式无线电能传输的基本原理

15.2.3磁场谐振式无线电能传输系统的组成

15.2.4实现传输的关键装置

15.3无线电能传输的特性

15.3.1频率特性对无线电能传输系统的影响

15.3.2能量发射线圈设计对无线电能传输系统的影响

15.3.3电容补偿对无线能量传输系统性能的影响

15.4系统方案确定及电路设计

15.4.1系统结构组成

15.4.2主要拓扑电路的选择与设计

15.4.3MOS管驱动设计

15.4.4线圈和电容的设计

15.4.5接收端高频整流的设计

15.4.6控制电路的设计

15.4.7程序的设计

15.5调试与验证

15.5.1系统的调试

15.5.2测量结果与结论分析

习题


第16章四旋翼飞行器设计

16.1四旋翼飞行器的结构

16.2四旋翼飞行器的运动控制方法

16.3四旋翼飞行器各部分的工作原理

16.3.1飞行姿态与升力关系

16.3.2飞行姿态的测量

16.3.3加速度传感器工作原理及角度测量

16.3.4陀螺仪传感器工作原理及角度测量

16.3.5磁力计传感器工作原理及测量方法

16.4硬件设计

16.4.1总体设计

16.4.2飞行器主控电路最小系统设计

16.4.3姿态传感器模块

16.4.4无线通信模块

16.4.5定高模块

16.4.6电机及驱动模块

16.4.7遥控器模块

16.4.8电源模块选择

16.4.9四轴飞行器的组装

16.5软件设计

16.5.1软件预备知识

16.5.2主控程序初始化设置及说明

16.5.3姿态传感器软件设计

16.5.4气压计软件设计

16.5.5遥控器软件设计

16.6调试、问题解析及改进方向随想

习题

第17章案例设计

17.1STM32的无线传输系统

17.1.1设计任务

17.1.2系统结构组成

17.1.3主要设计思路

17.2风力摆控制系统设计

17.2.1设计任务

17.2.2系统结构组成

17.2.3主要设计思路

习题

参考文献
內容試閱
第2版前言
《ARM CortexM3体系结构与编程》一书在2016年出版以来,收到很多高校授课教师和广大读者的意见反馈,在此首先感谢这些读者给本书提出的宝贵意见,针对书中出现的问题和不足,在第2版中进行了修订和完善。主要修订内容如下:第1版书稿中有多处文字错误,有些原理表述不清,对此进行了修订; 完善每章课后习题内容,使之更适合教学和强化训练。第2版增加了3章内容,涉及两个综合案例(第15章和第16章)和一章设计内容(第17章)。两个综合案例为无线电能功率传输系统的设计和四旋翼飞行器设计,论述较为详细,是两个完整的设计案例。为了保证设计的完整性,部分设计内容和第10章以及第14章有少量重复,读者在进行案例内容学习时,可以根据自身需要,不按章节顺序学习。第17章给出了几个设计思路,读者可以根据设计要求自行设计,所有设计经过实际验证,软件代码会通过网络发布。本书涉及的最小系统、显示电路、键盘模块、巡线模块、各种驱动电源模块,都已经做成了标准的PCB。所有工程案例的源代码、书稿PPT等内容读者均可获取,这些案例在实际教学中都得到了验证,方便读者修改制作。第1版的QQ群号继续使用,方便读者交流学习: 185156135。本书第2版得到了教育部高等教育司2016年第二批产学合作协同育人项目ARM公司的支持,感谢陈炜先生!感谢我的同事范红刚老师,我们一起合作多年,感谢他的无私帮助!我的学生张凯、李民杰、张成照、梁亮、宋熠林、张学飞、秦云辉等完成了所有代码的编写验证工作,感谢他们的辛苦工作。
作者2017年5月
前言本书的名称为《ARM CortexM3体系结构与编程》,更多讲解的是编程及应用开发,结构方面涉及较少。作为CortexM3重要的一员,STM32是现在应用较多的一款芯片,从应用的角度出发,这本书实际是在讲STM32的应用,这个先和读者交代一下。从51单片机的简单应用,演变到嵌入式、物联网、元计算、框计算等,越来越多的概念呈现在我们眼前,电子技术的日新月异,推动着相关行业的发展,改变着我们的生活。现在已经习惯把单片机相关的开发,统称为嵌入式开发。高校的授课主要以51单片机为主,有个别专业开始开设M3的选修课,STM32作为其重要家族成员,正慢慢地被越来越多的学生学习。2012年,开始研发井下小型的通信基站,想选一款合适的芯片,后来选中了一款基于STM32的工业核心开发板作为主控制器,该项目已经实际运行使用,读者可以作为蓝本,在此基础上进一步开发、学习。该项目作为一个案例,出现在本书的最后一章。当真正开始着手写本书时,发现无从下手,一拖再拖,因为STM32的内容真的很多,资料短时间内整理起来又很困难,从一本书的角度很难说得透彻、清晰,所以有些概念的理解还是希望读者有一点51单片机和C语言的基础。本书所列出的章节都是学生日常参加电子设计大赛、毕业设计用的一些内容,STM32本身很多重要的应用并未列入其中。同时,互联网上有很多优秀的电子资源,比较适合作为初学者学习的素材,例如野火战舰原子等,本书很多想法和内容也来自它们。很多学生大二开始学习STM32,从流水灯开始,做普通的巡线小车、小平衡车到最后做出能载100多公斤并自由行进的大平衡车,整个学习过程不到一年,但他们收获了很多知识。STM32入门相对51单片机复杂一些,但是STM32的使用要比51单片机更容易和便捷,书中的很多例子来源于笔者指导的毕业设计和电子设计大赛,后面章节特别涉及最小系统设计、电源设计、电机驱动设计,从全书看是有一些重复的,但是作为独立的设计,这种重复还是必要的,希望读者理解。书中涉及最小系统、数码管显示电路、键盘模块、巡线模块、各种驱动电源模块,都已经做成了标准的PCB,在实际教学实验中使用,读者可以方便修改制作。这本书完成匆忙,很多东西加工得不是很细致,留个QQ群号185156135,方便读者交流学习。
本书的很多素材资料来源于其他老师和学生,在此一并感谢!参与本书编写的还有范红刚老师、宋一兵、管殿柱、王献红、李文秋、赵景波、张忠林、曹立文、张凯、李民杰、张成照、梁亮、宋熠林和张学飞等。感谢我的家人,假期陪我一起工作!
冯新宇2016年1月


第3章
基本IO端口控制
学习STM32之前,建议有8位单片机的学习基础,例如51单片机、AMEG8等,这对于学习新的CortexM3处理器有很大帮助。在第2章已经安装好了MDK软件,版本为V4.72,STM32设计操作包括直接寄存器操作和库函数操作,直接寄存器操作与51单片机控制很接近,库函数操作与学过8位控制器的读者来说有很大的不同,开始阅读本章的读者可能会比较困惑,不要着急,稍后会详细介绍库的含义和使用方法。接下来通过一个简单的寄存器操作对STM32有个初步地介绍,就从流水灯开始STM32的学习之旅吧。3.1MDK新建工程1 单击桌面UVision4图标,启动软件。如果是第一次使用会打开一个自带的工程文件,可以通过工具栏ProjectClose Project选项关掉。2 新建的工程文件保存在一个文件夹里面。首先创建一个名为流水灯的文件夹,在流水灯文件夹里建几个文件夹: Doc、Libraries、 Listing、 Output 、Project、 User为了使读者先有个感性认识,可以参考书中附带的例子,从例子中添加这些代码,后续会陆续解释其含义,工程流水灯文件夹的子文件夹如图31所示。
图31流水灯工程的子文件夹
① Doc用来存放一些说明文档,一般文件格式为XXX.TXT。② Libraries用来存放ST库最核心的文件,包含FWlib和CMSIS两个文件夹。FWlib用来存放STM32库里的inc和src两个文件,这两个文件包含了芯片上的所有驱动。inc和src两个文件夹也是直接从ST的库里复制过来的。inc里是ST片上资源的驱动头文件,如果用到某个资源,则必须把相应的头文件包含进来。src里是ST片上资源的驱动文件,这些驱动涉及了大量的C语言知识,是学习库的重点。CMSIS用来存放库自带的启动文件和一些M3系列通用的文件。CMSIS存放的文件适合任何M3内核的单片机。CMSIS为Cortex Microcontroller Software Interface Standard的缩写,是ARM Cortex微控制器软件接口标准,是ARM公司为芯片厂商提供的一套通用且独立于芯片厂商的处理器软件接口。③ Listing用来保存编译后生成的链接文件。④ Output用来保存软件编译后输出的文件。⑤ Project建立工程文件的路径。⑥ User用来存放用户编写的驱动文件。3 在工具栏ProjectNew Vision Project,新建工程文件,如图32所示。
图32Project新建工程
4 在Project文件夹里创建一个工程,名字为liushuideng,如图33所示。
图33Project中新建liushuideng
5 选择芯片的型号,本书使用的芯片是ST公司的STM32F103RC。选择窗口如图34所示。
图34器件选择窗口
6 接下来询问是否需要复制STM32的启动代码到工程文件中,这个启动代码在M3系列中都是适用的,一般情况下单击是按钮,这里用的是ST库,库文件也自带了一份启动代码,为了保持库的完整性,就不需要开发环境自带的启动代码了,稍后手动添加启动代码,这里单击否按钮,如图35所示。
图35STM32启动代码是否复制到工程文件中的询问对话框
7 此时工程新建成功,打开如图36所示的界面。工程中还没有任何文件,接下来在工程中添加所需文件。
图36新建工程成功后的界面
8 把Target1的名称改为流水灯,其实不改也可以,改了只是为了见名知义,如图37所示线条圈出部分。
图37Target1改为流水灯
9 往工程里面添加5个组文件夹,并命名为STARTUP、CMSIS、FWLIB、USER、DOC。选择Add Group,如图38、图39所示。

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 香港用户  | 台灣用户 | 大陸用户 | 海外用户
megBook.com.hk
Copyright © 2013 - 2024 (香港)大書城有限公司  All Rights Reserved.