概述
本文纯属个人见解,是对前面学习的总结,如有描述不正确的地方还请高手指正~
初学嵌入式是选择单片机还是直接选择ARM
单片机对于广大初入嵌入式的朋友来讲,最熟习不过。从最经典的51系列的8位单片机,到相似Microchip的16位单片机等。
从近年来嵌入式的发展来看,ARM确切占领了大部份市场。ARM也分为4个发展方向:一个是经典ARM处理器,其中比较有代表作的是ARM7的44B0,ARM9的S3C2440,ARM11的S3C6410;第二个方向是微控制CortexM、R系列的处理,我想这部份内容恰好是ARM用来对付单片机市场来设置的。其中代表的处理器是NXP的LPC系列还有STM32;第三个发展方向是更加高端的应用处理器,Cortex-A系列,其中代表作为S5PV210等处理器,他们应用在手机、平板电脑等更高功能需求的设备上;第四部份是做可编程逻辑芯片,想必是要争抢FPGA、CPLD的市场。
有人说单片机要比学arm简单,我们就来分析一下。
1、从硬件原理来讲,单片机与Cortex-M系列处理器,几乎等同。一般单片机提供的接口无外乎以下几种:电源、竞争、IO、8位总线、SPI、I2C、串口等。而对于Cortex-M系列功能更多一些,比单片机多了USB、网络。32位总线等。
如果只看到太阳的黑点,那你的生活将缺少温暖;如果你只看到月亮的阴影,那么你的生命历程将难以找到光明;如果你总是发明朋友的缺点,你么你的人生旅程将难以找到知音;同样,如果你总希望自己完美无缺,假设你的这一愿望真的能如愿以偿,那么你最大的缺点就是没有缺点。
2、从软件角度来讲,主流开辟语言都是C语言,开辟工具也无外乎Keil、IAR等开辟环境。两者可以接触到的操作系统,在实际应用最多的还是ucos。所以纵观以上这些,两者的开辟难度相当。
3、从本钱来讲,学习的目标还是为了有一天可以得到应用,这时候最关怀的本钱了。单片机的价格从几块到几十块,Cortex-M系列的处理器也相似。取个平均值来讲,大概10~20之间,就能够满足大多数的实际需求。
4、实际产品的电路设计,基本2层电路板就能够搞定。打板费用也比较低。
笔者分析到当初以后,可以得出一个结论,学习ARM的低端CortexM系列无论从难度上还是日后使用上,都可以完整替换单片机。
可是当笔者从大学走入社会实际工作以后,却发明客户的需求越来越超前,仅仅是Cortex-M根本满足不了客户的实际需求。
举个例子:客户说我要大屏表现,我要触摸,我要SD卡存储数据,我要Wifi,我要USB键盘,我要多任务处理,我要播放音乐,我要。。。。。。。。
每次遇到这样的客户,都让笔者痛苦万分。于是下定决心,学习更高端的ARM处理。正当笔者寻找到2440资料的时候,发明已经停产了。。。。。喜剧啊,ARM已经停止多经典处理器的支撑了。当初都是Cortex-A8的时代了。
为了迅速让我的客户得到满足,我选择了芯灵思公司的一款210开辟板。这时又有一个问题摆在笔者眼前,选择什么样的操作系统呢?
是选择Linux还是Wince,或者直接选择近来比较火的Android呢?
因为客户有对图形界面的特殊要求,所以首先排除了linux系统,因为linux系统本身不具备图形系统,他是借助QT来做图形开辟的,环境很难搭建。也没有更多的历程。而Android系统过于宏大,笔者一时很难融会贯通。所以决定选择Wince系统作为开辟产品的标准平台。而芯灵思的这款210开辟板恰好对WinCE系统支撑的非常好。这样使我的产品可以迅速开辟胜利。
由于WinCE系统的很多程序跟PC很相近,所以很多多少windows程序稍加修改就能够直接运行了。我当时先从最简单的MFC程序学起,做了简单的界面,也基本满足了客户提出的全部问题。
由于时间原因,先写到这里。日后再续。
文章结束给大家分享下程序员的一些笑话语录: 程序员喝酒
我偶尔采用“木马策略”、“交叉测试”,时间不长就开始“频繁分配释放资源”,“cache”也是免不了的了,
不过我从不搞“轮巡”,也不会“捕获异常”,更不会“程序异常”,因为我有理性
克制的。
最后
以上就是清新小懒虫为你收集整理的单片机处理器初学嵌入式是选择单片机还是直接选择ARM的全部内容,希望文章能够帮你解决单片机处理器初学嵌入式是选择单片机还是直接选择ARM所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复