ARM Cortex处理器属于ARMv7架构,如图1-1,分为Cortex-A、Cortex-R和Cortex-M三子系列。Cortex-A是一种应用处理器(application processor),它是针对高效能应用平台系统而设计,通常用于行动运算、智慧型手机、高能效伺服器等。Cortex-R是一种即时处理器(real-time processor),其设计强化了即时应用系统的性能与可靠度,适用于硬碟控制器、汽车传动系统和无线通讯的基频控制等领域。Cortex-M是一种微控制处理器(microcontroller processor),专门用于嵌入式微控制领城,具有高成本效益比的优势,通常用于智能电表、穿戴式装置、汽车与工业控制系统、消费电子产品和物联网等。
本书选择一款STMicroelectronics(义法半导体)STM32L476G-DISCO探索板作为开发平台(如图1-2),此探索板含有STM32L476VG超低功耗微控制器与丰富的周边介面,如LCD显示器、LED、音讯DAC、麦克风、惯性感测器(陀螺仪、加速度计、指南针)、摇桿、USB OTG及四路SPI快闪记忆体。其中,STM32L476VGT6微控制器(如图1-3)是基于高性能ARM Cortex-M4F 32位元RISC内核的超低功耗微控制器,工作频率高达80 MHz,100 DMIPS性能,Cortex-M4F内核具有单精确度浮点单元(floating point unit, FPU),支援多有ARM单精确度资料处理指令和资料类型,嵌入高速记忆体(1MB快闪记忆体,128KB SRAM)。此探索板售价在台币1000元以下,读者可于以下网站购得。
ARM Cortex-M架构,依照系统功能需求分成M0至M4与M7的等级,Cortex-M0用于初阶8/16位元应用,Cortex-M3针对中阶的16/32位元应用,Cortex-M4主打高阶32位元与数位信号控制应用,而Cortex-M7是Cortex-M家族最新和最高性能的处理器内核,适合用于旗舰级消费者、工业、医疗和物联网(IoT)设备。因此,Cortex-M处理器家族包含各式功能的处理器类型来满足不同的需求。