一、开篇说明
ARM嵌入式系统与单片机学习有着密不可分的联系,它能够帮助初学者快速掌握硬件操作,无需深入了解复杂的软件结构。然而,与单片机相比,ARM复杂得多。
据某位知名专家在知乎上的解答,单片机通常只需为一个寄存器赋值即可初始化,而在ARM系统下则需要调用额外的库函数。此外,每个引脚在ARM系统中的功能都要多得多,因此配置会更加复杂。但是,如果拥有了丰富的ARM项目经验,就会发现ARM的应用配置方法是有章可循的。对于初学者来说,首先需要了解ARM和单片机之间的区别,本文将从软硬件两个方面进行阐述。
二、软件区别
软件方面的区别应该是最大的区别了。引入了操作系统。为什么引入操作系统?有什么好处嘛?
1、方便:主要体现在后期的开发,即在操作系统上直接开发应用程序。不像单片机一样一切都要重新写。前期的操作系统移植工作,还是要专业人士来做。
2、安全:这是LINUX的一个特点。LINUX的内核与用户空间的内存管理分开,不会因为用户的单个程序错误而引起系统死掉。这在单片机的软件开发中没见到过。
3、高效:引入进程的管理调度系统,使系统运行更加高效。在传统的单片机开发中大多是基于中断的前后台技术,对多任务的管理有局限性。
三、硬件区别
现在的8位单片机技术硬件发展的也非常得快,也出现了许多功能非常强大的单片机。但是与32arm相比还是有些差距吧。arm芯片大多把SDRAM,LCD等控制器集成到片子当中。
在8位机,大多要进行外扩。总的来说,单片机是个微控制器,arm显然已经是个微处理器了。引入嵌入式操作系统之后,可以实现许多单片机系统不能完成的功能。
比如:嵌入式web服务器,java虚拟机等。也就是说,有很多免费的资源可以利用,上述两种服务就是例子。如果在单片机上开发这些功能可以想象其中的难度。
四、谈谈要不要买开发板
如果你想学习嵌入式一定要买块学习板,现在的开发板很便宜了,给我们初学者减轻了很多经济负担。看再多的视频,看再多的书,也不如自己动手试一下,看着很简单的东西,做起来就可能遇到很多的问题,遇到问题找到原因,解决问题,只有这样才能学到东西。
记得我第一次写led的驱动,想自己试一下,网上也有人写过相关的代码,可是自己一试,就出了好多的问题,那个led弄了我一天才把led灯点亮。所以不要眼高手低。
还有关于培训,现在的培训机构很多,讲的也不错,老师也很好,但是有一个问题,太集中了,而且学生动手的机会也不太多。
记得我们公司还招了一个在北京某个培训机构培训半年的员工呢,花了一万多,来了之后也没感觉有多高,问他都学了什么,也就是我前边说的那些基础知识,很多的东西还是不知道的,照着书弄个helloworld模块驱动两天没搞定。不是培训不好,但我个人见解效果并不是很好。
记住:只有自己动手做过的东西才是自己的。 现在买一块开发板很便宜,很多友善提供的代码中很多的都是封装好的,只提供给客户一个库,初学者想要找代码的时候就不知道怎么办了.
五、ARM学习方法
arm嵌入式学习方法:
1,购买发开发。 挑选适合于自己的开发板——借用或租用市场上现在开发板种类太多,购买之前是借朋友的板子先试试,多体验几款,否则买了不光是浪费银子,也可能耽误学习进度。没有这些资源就到淘宝网上去租几块板子来体验,这对你以后学习会有很大的帮助。
2,反复推敲。 学习搭建开发环境,建立交叉编译环境及硬件环境。
3,不断尝试。 从简单hello world开始,逐步深入,不断验证操作系统及硬件功能。
4,详细记录。 嵌入式开发过程中会碰到各种各样奇怪的问题,做笔记和写心得变得非常重要,每一次小小的成功都要记录,并反复验证这个方法是否正确。
六、结语
在应用中学习,在应用中提高。一个对嵌入式普遍认同的定义是:嵌入式是以应用为中心,以计算机技术为基础,软件和硬件可裁剪,以适应应用系统对功能、可靠性、成本、速度、体积、功耗严格要求的专用计算机系统。
从定义中可以看出,嵌入式是以应用为中心的,在具体应用的前提下有针对性的进行软硬件裁剪,从而达到某些技术指标的严格要求。所以说,嵌入式是一门较高层次的应用科学。需要我们在应用中学习。
以上就是良许教程网为各位朋友分享的Linu系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !