Cortex-M3汇编实践文档.pdfVIP

  • 52
  • 0
  • 约1.4万字
  • 约 20页
  • 2021-09-25 发布于广东
  • 举报
CORTEX-M3汇编语言实践 编程 基于 STM32F103系列 MCU 2015-1-9 三两二锅头 duck8815@126.com Cortex-M3 汇编语言实践编程 写在前面: 接触 Cortex-M3 已经有一段时间了,大大小小也做了几个项目,可以说对这个系列 的片子有了一定的了解。相对于 8 位单片机来说 CM3 给我的感觉实在是强了太多,其中 比较明显的感觉是存储上的扩充,这让我在编程的时候不必为了节省几十个字节的内存而 大费周章。还记得当初用 ATmega16 写一个项目的时候,申请了一个比较大的缓冲区之后 要好多个模块共用,搞得程序结构非常乱而且还容易出错,当然这还只是一个小惊喜。更 大的优势在于 CM3 先进高效的中断机制以及它丰富的外围接口和强大的片内功能,这些 让我在开发的过程中深切的体会到 CM3 相对于 8 位单片机的优越性。而相对于高端的 ARM 芯片( ARM7、ARM9 等)来讲 CM3 又以它精巧灵活的特性让我深深的喜欢上了这个 系列的芯片,尤其是新的指令集给人感觉耳目一新,让原来繁杂的芯片初始化工作最终浓 缩到数十行汇编代码中, CM3 以它的精简和易用再一次吸引了我。 经过一段时间的学习和使用,个人觉得如果想把一款芯片用的得心应手一些必要的 理论知识还是值得花时间去学习和研究的,所以在工作之余就有了这个文档。本文主要从 汇编语言的角度去阐述和学习 Cortex-M3 的体系结构以及基本工作原理,实现对一些片内 功能的配置与应用同时还包括一些简单的外设应用。本文重点不在于深究汇编指令码,而 是通过使用汇编语言让读者从计算机的角度出发去思考问题,了解计算机的工作原理和步 骤,所以汇编指令码的细节内容在这里则不会深入讨论。 声明: 本文内容完全属于个人学习总结以及个人的理解和看法,在学习过程中借鉴过很多 资料包括来源于网络的资料,如果文中内容让您感觉不适请联系作者删除。 由于作者水平有限文中难免出现错误,如遇到错误烦请您不吝指正,并欢迎您与作 者进行交流沟通 duck8815@126.com 。 作者默认您对 CM3 有一定的了解,并且具备基于 CM3 芯片的 C 语言开发经验。文 中使用的芯片是 STM32F103ZE,软件开发环境用的是 *** (因为涉及到版权问题本来考虑 在 Linux 平台下进行编写代码但是考虑到大家可能很少有人用 Linux 开发程序,所以选了 和大家一样的开发环境)。 下面作者将从一个空的汇编工程展开本文。 - 1 - Cortex-M3 汇编语言实践编程 1 第一个汇编工程 我们创建工程的时候 IDE会提示我们是否导入启动文件,而这个启动文件就是用汇编语言 编写的,在这里简单说一下汇编工程的创建步骤: 新建一个工程 创建工程的步骤和平时创建工程一样,之余工作目录之类的东西相信各位自己也都有自己 的习惯这里就不再赘述。 Figure 1-1 新建工程 工程名字自己随便写一个就行 Figure 1-2 工程名字 选择对应芯片,在出现是否创建启动文件时选择不创建。 Figure 1-3

文档评论(0)

1亿VIP精品文档

相关文档