开启学习ARM之旅

第一次听说ARM是在大学的时候,老师说电子类的学生入门就是51咯,然后进阶的就是430,再然后是STM32,再然后就是ARM嵌入式,搭载嵌入式系统了。当时因为啥都不知道,所以目光一直停留在处于入门的51上,对什么嵌入式更是一概不知。也就再没有了解过。

再后来开始想着去学习ARM的时候,已经是工作快1年的我。作为一个有梦想的青年,我一直幻想着本科毕业的我就能找到一份电子设计类的工作。然而幻想总是幻想,它是没有理论依据的。因此我人生的第一份工作就让我彻彻底底对硬件这方面失去了信心,并不是我刻意贬低硬件,而是硬件所涉及的方面过于广阔,如果一个硬件工程师本身学术不精学历不高(比如我),会被这个高手云集的行业所淘汰,所以挂着硬件工程师的名做着设备维护的工作是很常见的一种现象,而我的工作更是难以启齿地没有营养,工资还不高。所以当我想着转行如软件的时候,一下子就铁了心了。并不是因为软件的工资高,而是做软件至少不会让你去维护设备或者产品不良分析的,也不用去自己买些杂七杂八的东西,自己去拧螺丝刀(轮不到自己设计,轮到自己的只是去干干杂货搭搭平台是真没有营养的)。

所以下定决心之后,看了一些ARM学习的流程,也没管对不对,立马买了几本书(常被推荐的)和一个开发板,开始跟着视频慢慢做。这个过程给我的第一感觉是,内容比较多,有很强的专业性。但是第二感觉就是,学得很累,对于我这种小白,遇到一个视频没有涉及的问题简直是毁灭性的。而且上来面对的就是Linux系统,面对的是GCC和脚本编程,而我个人C语言都不算是精通,所以学习进度一度停滞不前。这也是给初学者的一些建议,不能上来就接触到这些浮云之上的内容,毕竟初学入门还没成仙,就算能看得到那些很牛逼的东西,但是站在地面上仰着脖子远望还是很吃力的。于是在我的一位老铁(志同道合者往往可共谋)向他的同事询问学习建议之后,才开始树立正确的学习观。首先这位老铁同事是个大牛,他直言不讳地批评了我们这种行为,直接接触嵌入式LINUX系统,可能最终也就停留在会写个boot loader,其他在没有基础的情况下很难再有突破。然后也给了很干货的意见。他说在我们这种情况下,得先从基础开始。首先接触低级一些 的芯片,比如STM32。先了解芯片的结构,再开始程序的编写。一来嵌入式的芯片结构类似,可以举一反三,二来STM32的基础程序编写难度不大,在逐渐熟练之后,熟练运用库函数之后,对以后学习更高阶的嵌入式芯片以及系统都有很大的帮助。不得不说,很有道理。接触STM32就比直接接触嵌入式系统容易很多。

总之,为了个人的梦想,好好学习好好深造,做一个勤劳的码农~

时间: 2024-10-12 14:03:59

开启学习ARM之旅的相关文章

2014-8-11 新手报到,开启技术梦想之旅(1)

    其实本人是个懒人,不喜欢写博客的.     先说说本人的经历,洛水我是90年的,以前还觉得年轻,现在觉得老了啊.     本人本科生,在校时候其实对编程挺感兴趣的,c,c++,数据结构等等粗浅的理论知识当时学得还可以.其实那时候就对编程有兴趣了,当时便想过当个工程师来着的,很淳朴,当时觉得写程序挺有意思的,学习也是凭兴趣的.     大学是改变一个人的时候,很多梦想都是从读大学开始的,我也曾幻想过毕业能做个技术领军人物,或者建立自己的IT公司.读大学时候,认识了许多人,改变了我的人生轨迹

使用PhoneGap开启移动开发之旅

移动市场风起云涌,只是好像和悲催的.net程序员隔绝.我们内心中一直期待的Windows Phone终究不能匹及windows, 随着时间的流逝,windows phone越来越像扶不起的阿斗,连微软自己有念头放弃. 看新闻上,微软打算让windows phone支持Android应用,Nokia出了Android手机…….Net开发人员在移动市场中该何去何从? 下面介绍的PhoneGap, 也许是我们的一个选择. 一,什么是PhoneGap? 移动应用非常火热,无奈开发平台实在太多.大的平台就

开启Spring Boot 之旅

开启Spring Boot 之旅 1.Spring Boot 简介 简化Spring应用开发的一个框架: 整个Spring技术栈的一个大整合: JavaEE开发的一站式解决方案. 2.微服务 Martion Fowler 的一篇长长的文章https://martinfowler.com/microservices/ ,2014:虽然他不是微服务提出者,但是他的这篇文章却明确定义说明了什么是微服务. 微服务:架构风格 一个应用应该是一组小型服务:可以通过HTTP的的方式进行沟通. 单体应用(非微服

学习jQuery之旅

早就听说了Jquery的大名,一直没有细心的学习一下,通过阅读收集的一些资料,感觉Jquery真的很强大.决定开始自己的学习Jquery之旅.在这里不是为大家讲解Jquery(深知水平有限),只是将自己的学习成果分享给大家,共同学习和交流. jQuery简介 我所理解的jQuery就是一个强大的Javascript类库,里面封装好了很多现有的方法和属性.可以使开发人员用很少的代码更好更快的开发出自己想实现的效果.过多的jQquery在这里就不多介绍了,想必很多人都已经看过了更详细的文档,我就不多

【Knockout.js 学习体验之旅】(3)模板绑定

本文是[Knockout.js 学习体验之旅]系列文章的第3篇,所有demo均基于目前knockout.js的最新版本(3.4.0).小茄才识有限,文中若有不当之处,还望大家指出. 目录: [Knockout.js 学习体验之旅](1)ko初体验 [Knockout.js 学习体验之旅](2)花式捆绑 [Knockout.js 学习体验之旅](3)模板绑定 模板引擎 页面是由数据和HTML组件构成的,如何将数据嵌入到HTML组件里面呢?一个比较好的选择是使用模板技术. 回顾下第一篇([Knock

容器开启数据服务之旅系列(二):Kubernetes如何助力Spark大数据分析

摘要: 容器开启数据服务之旅系列(二):Kubernetes如何助力Spark大数据分析 (二):Kubernetes如何助力Spark大数据分析 概述 本文为大家介绍一种容器化的数据服务Spark + OSS on ACK,允许Spark分布式计算节点对阿里云OSS对象存储的直接访问. 容器开启数据服务之旅系列(二):Kubernetes如何助力Spark大数据分析 (二):Kubernetes如何助力Spark大数据分析 概述 本文为大家介绍一种容器化的数据服务Spark + OSS on

学习ARM+Linux的很好的资料(转)

前段时间做了一个关于ARM9 2440资料的汇总帖,很高兴看到***和CSDN等论坛朋友们的支持和鼓励.当年学单片机的时候datasheet和学习资料基本都是在论坛上找到的,也遇到很多好心的高手朋友,耐心的回答我提出的问题.感激.图报,很简单的想法.希望这次整理的资料帖能对更多的嵌入式爱好者朋友带来帮助! PS:    在此特别感谢 古道热肠 版主把我的帖子加精,给小弟极大鼓舞! 嵌入式入门篇: 什么是嵌入式系统                         http://www.helloa

Android上学习ARM指令集之开篇

工作中经常碰到crash的问题,如果是Debug版本,有源代码,那还好,调试信息多.万一Release给QA甚至客户之后,再发现crash之类的问题,如果不熟悉ARM指令.看不懂现场,那调试起来可就费劲了.往往只能到处去猜,相信大家都有过这种难过的经历. 这段时间比较闲,正好利用起来为入门ARM指令集写点初级文章,没什么远大理想,写到哪里算哪里,权当娱乐罢了. 环境准备:现在的学习环境可真是方便啊,几乎人手一台android手机,而绝大多数手机都是ARM家族的,所以只需要给手机或者平板电脑安装一

从一个简单的ASP.NET 5站点开启.NET跨平台之旅

在经历了阿里云上“黑色1秒”的空欢喜之后,我们“被迫”考虑实现.NET的跨平台,将Web服务器由Windows换成Linux.而这种“被迫”在一个存在已久的愿望下,变得水到渠成.这个愿望就是 —— “Mac上写.NET程序,Linux上跑.NET程序”. 既然水也到了,渠也成了,那我们还等什么,动身起程吧. 今天我们以我们迈出的第一步——一个部署在Linux上基于dnx/corefx/coreclr的非常简单的ASP.NET 5/MVC 6站点——宣布“.NET跨平台之旅”开启了! 这个基于跨平