随想录(嵌入式应用的三个领域)

【 声明:版权所有,欢迎转载,请勿用于商业用途。  联系信箱:feixiaoxing @163.com】

    说到嵌入式,大家一般能想到的就是linux、arm这些领域,其实无可厚非,确实linux是嵌入式很重要的一个环节。但是在实际产品开发中,51单片机、stm32 cortex系列应用的场景也非常多。下面就简单说一说51单片机、stm32、高端arm平台的一些主要差别。

1、频率不同

    51单片机一般频率较低,大部分的51单片机都是在几M到几十M之间。stm32高一点,一般在72M到480M之间,最新的m7系列soc就可以有400-600M。而高端arm通常需要处理图像、视频等复杂信号,频率一般在500M到3G之间。

2、内核不一样

    51单片机一般就是51内核,stm32单片机多采用arm cortex m0、cortex m3、cortex m4、cortex m7等内核,高端arm多采用a7、a9、a11、a15、a53、a57、a72、a73等内核。

3、价格不一样

    51单片机比较便宜,宏晶出品的51单片机一般价格在2-3元之间。stm32贵一点,一般在十几元到上百元不等,最新的cortex m7系列soc价格就稍微贵一点,它和低端arm a7差距并不大。而高端arm一般价格在几十元到上千元之间,高端的dsp、手机芯片价格都比较贵。

4、外围资源不一样

    51的外设一般只有gpio、uart、timer、ad、da这些基本电路。stm32会多一些,会有can、usb、lvds、i2c、lcd这些外围控制电路。高端arm最为丰富,除了上面这些,还有gpu、codec、isp、sdram这些高端复杂电路。

5、应用场景不一样

    51多用于家电、玩具。stm32用于工业控制、医疗、高端玩具,特别是那些需要显示界面的场景。高端arm主要用于pad、手机、电视、游戏机等等。

6、操作系统不同

    51基本是裸奔,stm32会有一个rtos,高端arm一般是linux或者是android。

7、学习顺序

    建议大家从低到高学习,从51到stm32、linux慢慢来,淘宝上开发板也很多,价格也不贵,大家可以买过来学习,一步一个脚印,相信会有很多收获。

8、开发环境不一样

    51和stm32一般使用arm的keil工具直接开发,而linux可以用交叉工具链、或者是eclipse+交叉工具链开发。

9、调试方法

    51、stm32调试既可以使用打印、也可以用jtag仿真调试。linux的话,方法较多,打印、coredump、gdb、仿真、x86开发调试都是可以的。

ps:

    当然现在出现的形式多种多样,除了单片机、stm、a9 linux这种方式,zynq这种软硬一体的开发模式也相当不错,适合那些对速度有要求的特殊场合。

发布了556 篇原创文章 · 获赞 3622 · 访问量 473万+

猜你喜欢

转载自blog.csdn.net/feixiaoxing/article/details/89913563