张 建,凌兴宏,,王宜怀
1(苏州大学 文正学院,苏州 215104)
2(苏州大学 计算机科学与技术学院,苏州 215006)
ARM(Advanced RISC Machine)是高级精简指令机器的简称.ARM架构是一个32位精简指令集处理器架构,基于ARM架构的处理器在性能、功耗和开放性等方面的优势决定了其在全球芯片市场上举足轻重的地位,其中Cortex M系列(Cortex-M0/M0+/M1/M3/M4/M7/M23/M33/M35P/M55)内核的微控制器(Microcontroller Unit,MCU)因具有低功耗、高性能、低成本的特性,十分适用于嵌入式系统领域[1].汇编语言是一种将机器语言的操作用助记符进行表示和替换的低级语言.它与计算机硬件紧密联系,是电子类、计算机类、自动化类等专业的一门主干课程,学好汇编语言能够加深对微机原理以及操作系统的理解[2].汇编语言与机器指令一一对应的特性使得其实现简单功能时需要进行繁多的操作,完成系统的开发需要较长的周期;汇编语言在不同内核的设备中对应着不同的机器语言指令集,难以在不同内核的设备中移植.当前在ARM MCU上的汇编工程已经有了一些研究,如蔡伯峰[3]等基于Cortex-M0+ KL系列MCU研究设计了纯汇编底层驱动构件;蒋婷[4]基于Cortex-M0+ KL系列MCU研究了构件化的汇编框架,但是他们的研究只是针对特定内核的MCU,复用性和移植性不高,设计的汇编工程框架不具有普适性.因此,本文以ARM Cortex-M系列内核为平台,提出一种可移植、可复用的汇编工程通用框架设计方案.该方案针对Cortex-M4内核的STM32L431RCTx[5](简称STM32L431)汇编工程的研究,设计出一种普适的汇编工程通用框架.并在Cortex-M0+内核的MKL36Z64XXX[6](简称KL36Z64)和Cortex-M4F内核的MSP432P401R[7](简称MSP432P401)两款……