看看高手对如何学习ARM的讨论

来源:互联网 发布:尼古丁贴片 知乎 编辑:程序博客网 时间:2024/06/06 09:53

高手一:

  1把arm当超级单片机用,一个高手的观点,初学者不能跟着学,学习为了什么,为了更好的使用,如果当一个超级单片机学习那你什么都学不到,你看周立功的 easy arm好是好,提供了很多模版,但学了半天感觉还是51。为了好好学arm还是从头学把引导程序,终端看仔细了,很多人连lpc的时钟配置也不明白,但敢说他会arm,我曾进也是其中一员。

  2我只对硬件感兴趣,arm已经把硬软件的界限打破,如果还硬件管硬件,软件归软件,那你还不如回到51,arm是能同意处理多任务系统,51就不行了,你不在软件上下功夫,那你对不起arm 以上仅是比人愚见,一起讨论

  高手二:

  连硬件的io口以及外围设备都没有精心设计过,谁会相信你做的软件可以紧贴硬件,得到最佳的工作效率呢?

  如果小的嵌入式系统都沉浸在用高速io口模拟什么时序,谁又能保证你能将arm所有的潜力发挥出来呢?大家知道,如果用io口模拟会使指令流打差不多10倍折扣。

  现代mcu都是基于编译器原理设计出来的,我们在做设计时必须兼顾软硬件两个方面,不能将二者完全分开。

  arm内核那么多层的代码运行级别本身就给我们工程师许多想象的空间,我们为什么不发挥一下呢?

  高手三:

  对于一个有8位单片机基础的人,将arm作为超级单片机来作入门学习,我觉得没什么不妥,学习由浅入深挺好的。对于这个人来说,他最熟悉的是原来8位的单片机,刚接触ARM的时候先撇开操作系统又暂时不去管bootloader的操作,那么就会发现其实arm和8位单片机操作起来其实是相似的。等到了解一些内容后,再进一步去学习boot、学习操作系统那相对就会容易一点了。

  51也有人拿来跑操作系统,不过估计是玩的成份居多,而AVR跑操作系统则是有实际应用的。一个人的精力有限,不可能什么都面面俱到,总该有一个侧重的方向。做一个项目,通常需要一个团队,这个团队里面有软件工程师也有硬件工程师,大家各司其职,又相互配合。搞软件的人懂一点硬件会对写程序有帮助,搞硬件的人也应该懂一点软件。软件工程师可以专门负责操作系统里面的任务处理,硬件工程师除了完成硬件电路的设计外还需要编写一些硬件驱动程序。如果一个软件工程师不知道什么是串口,那么他就可能会不理解用串口发送数据和普通I/O操作有什么不一样。如果一个硬件工程师没有地址的概念、不知道数据位宽,那么他就可能不会理解给ARM系统接一块16位的FLASH的时候地址线为什么要偏移一位。

  现在我的本本就在那边重装着系统呢,Linux是一个强大的系统,但是再强大,也经不起人的胡乱折腾。这么多次的重做系统,我算是真心的该思考下了。

  其实重做系统,重装Linux不是我的本意,只是出了问题,一番百度,尝试解决无果,也就只能这样了。

  本人一直使用着Ubuntu,毕竟Debian的这个分支美化做的不错,unity界面本人也很喜欢(虽然很多人说unity的界面不好看,我觉得这就是习惯的问题而已),Ubuntu挺适合作平常的系统使用的,要是一直那么的办公用,倒也没什么可折腾的。可是本人就偏偏爱折腾,总想改改什么,弄弄什么,这问题就出来了,现阶段,新手一个,弄出问题,大多自己解决不了,如果是大众问题,百度一下就好,就怕弄出个个性的问题,谁都没遇到过。那就麻烦了。对付用吧,心里总是不舒服。想解决,还不会,遇到影响使用的问题。只能重做系统。麻烦的不在于安装系统,而是配置出一个比较满意的环境。那么一下午的时间,估计也就耗在上面了、

  以前的重装是因为解决双系统,三系统问题,不懂时就重装了,这次的重装是因为升级GIMP,没错!我竟然在弄一个图像处理软件时把我unity搞坏,而且重新安装也出问题。没办法,只能重装了,其实重装系统的危害是非常大的,前阶段,由于经常重装系统做测试,导致主板电源控制出了问题,关机不断电!多么恐怖!所以不要经常地重装系统。

原创粉丝点击