(007)传统8位MCU岌岌可危,基于Cortex-M0及M0+的32位单片机全面入侵
与传统的8位单片机相比,基于Cortex-M0内核的32位MCU有明显的性能、功能优势。 首先,基于32位Cortex-M0内核的MCU处理数据性能上比8位有明显的优势,一次能处理32位的数据宽度,换句话说,能用更少的时间完成相同的任务。 其次,M0采用了Thumb-2指令集技术,支持16/32位指令,代码大小比8位设备小30%,这不但大大节省了闪存的利用率,更能通过更低的总线速度完成和8位单片机相同的任务,从而降低了功耗。 然而,这些还不是基于M0内核的微控制器最大的优势,更重要的是各大厂商将M0与自身产品优势的整合,针对不同领域提供了丰富的差异化的外设接口功能,这对于外设功能薄弱的传统8位单片机形成了强有力的竞争力。 Cortex-M0的出现真可谓是司马昭之心,其一,ARM公司出于自身产品线考虑,想让自己的产品线覆盖到低端的8位、16位MCU市场;其二,全面侵噬8位、16位MCU的市场份额,最终目的,当然是全面取代现有的8位单片机市场。 但是,事情的发展不是你一厢情愿就行的,ARM Cortex-M0在功能和性能上的优势并未使它一举推翻8位单片机的地位,在初期的推行效果并不显著,首先,传统单片机如51系列、AVR系列牢牢把控着市场、链接着上下游,很难撼动其地位;其次,当时的传统8位单片机完全满足产品的性能、应用要求,在利益没有足够大的前提下,冒风险随意变更产品线不符合商家的习惯。 但如今,随着人们对生活质量的要求越来越高,以家电行业为例,其功能也变的越来越多,越来越智能,单一的8位、16位低端单片机在性能、功能上有些乏力、疲软,此时,ARM Cortex-M0的优越性能才得以发挥用武之地,成为杀入低端市场的32位单片机。一旦形成契机,ARM公司百尺竿头更进一步,相应适宜的推出了M0的升级版--M0+,在能效比和功能上做了进一步优化和增设。 文章太长了,具体请看: http://www.eeboard.com/evaluation/cortex-m0m0/
好了,现在轮到西门庆发表了
各位已经知道Arduino UNO是使用Atmega16U2 8位微控制器,与duemilanove的ATMega328类似,只是多了usb-serial接口。
ATMega328规格如下:
- Core Size: 8bit
- No. of I/O's: 23
- Supply Voltage Min: 1.8V
- Supply Voltage Max: 5.5V
- Digital IC Case Style: QFN
- No. of Pins: 28
- Program Memory Size: 32KB
- EEPROM Memory Size: 1KB
- RAM Memory Size: 2KB
- CPU Speed: 20MHz
- Peripherals: ADC, Comparator, PWM, RTC, Timer
- Embedded Interface Type: SPI
QFN封装,Fanell现卖RM8.17
再看Arduino Due,其处理器为ATMEL公司的AT91SAM3XE8 Cortex-M3 ARM 32位微控制器,由于它是基于Cortex-M3,我就不作比较了。
现在看看Cortex-M0的微控制器,其中有
- Cypress Semiconductor PSoC 4
- Infineon Technologies XMC 1000
- NXP LPC1100, LPC1200
- Nordic Semiconductor nRF51
- nuvoTon NuMicro
- Sonix SN32F700
- STMicroelectronics STM32 F0
这里用STMicroelectronics STM32 F0系列作比较,且看STM32F050K6U6的规格:
- MCU, 32BIT, CORTEX-M0, 48MHZ, UFQFPN-32
- Controller Family/Series: STM32F
- Core Size: 32bit
- No. of I/O's: 27
- Supply Voltage Min: 2V
- Supply Voltage Max: 3.6V
- Digital IC Case Style: UFQFPN
- No. of Pins: 32
- Program Memory Size: 32KB
- RAM Memory Size: 4KB
- CPU Speed: 48MHz
- Peripherals: ADC, DMA, RTC, Timer
- Embedded Interface Type: I2C, SPI, USART
Fanell现卖RM7.93
看到了吗?除了没有EEPROM,无论Core Size,RAM,IO,速度,甚至价钱,属于Cortex-M0 32位的STM32F050K6U6都尤于8位的ATMega328
最后只剩下一个问题,为什么Arduino UNO或者Arduino Duemilanove不使用更强且更便宜的处理器呢?
本帖最后由 pic 于 14-9-2014 10:52 AM 编辑
|