本书即将在9月份由北京航空航天大学出版社出版,敬请留意RealView网站发布的相关消息! 前 言 Cortex-M3是ARM公司最新推出的第一款基于ARMv7体系结构的处理器内核。它主要是针对MCU领域,在存储系统、中断系统、调试接口等方面作了较大的改进,有别于过去的ARM7处理器;其具有高性能、低功耗、极低成本、稳定等诸多优点,非常适合应用于汽车电子、工业控制系统、医疗器械、玩具、无线网络等领域。32位Cortex-M3处理器所具备的RISC结构、1.25 DMIPS/MHz的处理性能、4G的存储空间、高效灵活的Thumb2指令集和杰出的低功耗特性,可以帮助工程师实现更复杂更高性能的MCU应用。 ST公司于2007年率先推出了基于Cortex-M3内核STM32系列处理器,集先进Cortex-M3内核结构、出众创新的外设、良好的功耗控制和低成本于一体。而且,STM32系列处理器具有全系列脚对脚、外设及软件的高度兼容性,可以在不必修改原始框架及软件的条件下,将应用升级到需要更多存储空间,或精简到使用更少存储空间,或改用不同的封装规格。 为了帮助嵌入式工程师迅速使用Cortex-M3处理器进行应用开发,ARM公司推出了针对MCU的开发工具RealView Microcontroller Development Kit(MDK)。MDK采用单片机工程师非常熟悉的IDE环境μVision,内含ARM最新的专业编译器RVCT,还集成了强大的调试分析工具、精巧的RTX实时库、启动代码自动生成工具、实时跟踪工具等实用开发工具;是进行MCU快速开发的利器。2007年,ARM针对中国工程师,推出了低价的中国版MDK,在提供本土化支持的同时,还进一步降低了中国企业进行ARM MCU开发的成本。目前,MDK已成为中国工程师进行Cortex-M3处理器应用开发的最佳工具。 本书是一本介绍基于MDK进行STM32处理器应用开发的书籍,也可作为STM32处理器应用开发手册。全书的内容分9章,可以分为如下四个部分。 第一部分包括第1章到第4章,对Cortex-M3处理器内核作介绍。在对Cortex-M3处理器结构作基本介绍的基础上,详细介绍了Cortex-M3处理器的编程模型、总线架构、存储结构、异常处理机制、Thumb-2指令集,以帮助读者熟悉和掌握Cortex-M3处理器应用开发的基本知识。 第二部分包括第5章和第6章,分别简要介绍MDK使用方法和STM32V100开发板,是读者学习使用MDK进行STM32处理器应用开发的准备知识。关于MDK的详细介绍,读者可以参考《ARM开发工具RealView MDK使用入门》一书。 第三部分包括第7章和第8章,分别介绍STM32处理器的所有接口及其应用,对于每个接口模块都会详细介绍其结构、特点、功能,并给出所有相应特殊功能寄存器的功能,在此基础上为读者提供一个小的应用实例,所有的实例都给出硬件原理图、源代码及运行结构。这一部分可以作为STM32处理器的开发数据手册,在进行应用开发时查阅。 第四部分是第9章,介绍了两个基于STM32处理器的综合应用实例RTX_Blinky和MP3 Player,综合应用了ADC、GPIO、USB、SPI、TIMER等接口模块。通过这两个实例读者可以了解如何使用实时库RTX开发多任务的应用程序,如何使用SW端口进行实时跟踪,这对于使用MDK进行STM32处理器的应用开发而言,非常有价值。 在本书的写作过程中得到许多支持和帮助。首先,本书写作得到深圳市英蓓特信息技术有限公司的支持,作为ARM工具关键合作伙伴,他们在第一时间为作者提供了最新的MDK中国版和STM32V100开发板,并在技术上给作者提供了大量的无私帮助,在此要对英蓓特公司的刘炽、廖武、景朝斌、舒军、周麒、张斌等资深工程师表示感谢。其次,要感谢武汉理工大学计算机科学与技术学院的硕士研究生:熊刚、刘晶、武永谊、蔡俊宇、张孟东、范云龙、张国琛,他们完成了大量而繁杂的资料收集、翻译和整理工作,并帮助完成例程的编写及测试工作,本书是他们汗水的结晶。最后要感谢北京航天航空大学出版社的冯颖老师,她在本书的内容安排、命名以及出版等方面给了作者大量有益的建议和帮助。另外,本书大量使用和借鉴了ARM公司网站的内容、MDK软件的帮助、ST公司数据手册,这些已经得到了ARM公司和ST公司的授权。 为了让广大的嵌入式开发者能尽快地得到一本使用MDK进行STM32处理器应用开发的书籍,本书的写作在时间上非常仓促,加上作者水平所限,书中难免会有一些错误,敬请各位读者批评指正。作者非常乐意为广大读者提供力所能及的帮助,作者的电子邮箱是ningli_2008@163.com。另外,本书的所有例程都可以在www.realview.com.cn网站上下载。 武汉理工大学 李宁 2008-6-1 目 录 第一章 CORTEX-M3处理器简介 1.1 Cortex-M3处理器特点 1.2 Cortex-M3处理器基本结构 1.3 STM32系列处理器
第二章 CORTEX-M3 处理器编程模型 2.1 处理器工作模式及状态 2.2 寄存器 2.3数据类型与存储器格式 2.4指令集 2.5 系统控制寄存器
第三章 STM32处理器总线结构和存储器 3.1 系统总线构架 3.2 存储器的组织与映射 3.3 位段 3.4 启动配置
第四章 CORTEX-M3的异常处理 4.1异常的类型 4.2 异常的优先级 4.3异常处理 4.4 复位过程 4.5 多堆栈的设置 4.6 Abort 模式
第五章 快速启用MDK 5.1 MDK的安装与配置 5.2 μVision IDE 5.3 开发过程
第六章 STM32V100评估板 6.1 STM103V100评估板的基本结构 6.2 STM103V100评估板的I/O接口
第七章 STM32处理器基本接口应用 7.1 通用I/O端口 7.2 嵌套向量中断控制器NVIC 7.3 外部中断/事件控制器(EXIT) 7.4 电源控制 7.5 串行通信接口 7.6实时钟RTC 7.7 备份寄存器 7.8 看门狗 7.9 通用计时器TIMx 7.10 高级控制定时器TIM1 7.11 DMA控制器 7.12 ADC转换器
第八章 STM32处理器通讯接口应用 8.1 控制局域网通讯接口bxCAN 8.2 IIC接口 8.3 SPI接口 8.4全速USB接口
第九章 STM32处理器综合应用 9.1 RTX_Blinky 9.2 MP3 Player 相关链接:http://www.realview.com.cn/wen-class-iq.asp?lx=big&anid=51 |