开始学习朱老师物联网的视频是国庆节的那几天开始的,刚刚开始的时候是想自己在网上找一些嵌入式方面的视频资料,也找了很多的资料臂如“国嵌视频”“达内的视频”,之后也化了十几块钱在淘宝上面买了几十个G的视频资料,看着资料蛮多的,咋的一看感觉资料多应该可以好好的学一下,但是看着看着,发现里面的资料太复杂了,不是很系统化。
       那一段时间自己也很焦虑,学校里也有了招聘会,需要去找工作,自己又想好好的学习嵌入式相关的知识。一天晚上在床上玩手机,突然想着百度一下嵌入式的一些学习计划,于是在51CTO上看到了一个嵌入式工程师养成计划的视频,没有涉及到一些很深入的专业知识,就去看了一下。看着看着,发现这个老师讲的还蛮实在的,讲了一些嵌入式和物联网的学习方法和未来的发展前途,看完了之后,当时自己的内心有一点的激动,好想赶快学习呀!也更加的坚定了我要进入嵌入式这个行业的信心。第二天早上起来后,打开了电脑,又去搜索了一下,找到了朱老师的视频,看有linux基础和C基础,就这样,我开始跟着朱老师学习起来了。
       由于以前有过一些单片机和电子的经验(飞思卡尔智能车比赛、电赛的四轴飞行器) ,在刚刚开始学习ARM裸机部分的时候,除了一些汇编部分,其它的比如定时器、串口、看门狗、IIC等学的都还算蛮轻松的,虽然以前有弄过一些单片机的知识,就比如说定时器吧,以前使用STM32或者K60的时候都是使用别人写好的库函数版本,只需要知道一些基本的原理,会调用函数就可以了。但是,通过了朱老师的讲解后,再结合以前做过的一些东西,发现对于以前懵懂的东西豁然开朗了,还有就是以为自己懂了的东西,再次听老师的讲解后,发现原来自己以前其实就是了解了一个皮毛,还有很多的细节的东西以前都没有注意到。
ARM逻辑的总结:
1、收获:
       (1)更加了解一些ARM的基础知识(发展史、ARM汇编、CPU的简单了解)
       (2)原来刷机其实也不是很难
       (3)理解了S5PV210的启动过程
       (4)如何根据数据手册和原理图来写代码和分析代码(增加了自己看英文手册的信心) 
       (5)SoC的内部外设的基础知识得到了学习 
2、还需要在学习的地方
       (1)S5PV210的时钟系统的地方,虽然大概的配置理解了,但是感觉里面的有些细节的地方,还需要再去复习和理解一下。
       (2)裸机的代码都是在老师带领下编写的,虽然看似懂了,但是理解的还不是很透彻。自己独立编写的时候还是会磕磕绊绊。所以还需要自己再去练习一下。
       (3)Makefile始终还是感觉比较的陌生,只是知道每次要添加一个C文件的时候,需要加一个.o。里面的具体语法还不是很懂。 
3、其它
        (1)SoC的内部外设的一些使用,其实都是大同小异的,在理解了一些基本知识后,无非就是配置一些寄存器,再结合一些代码就可以了。
        (2)ARM逻辑的学习我觉得还仅仅是一个基础的学习,有很多的部分还只是浅显了学习了一下。如果以前工作中需要用到哪一个部分,还需要再深入的学习一下。(没有深入的讲解,朱老师也在视频中也解释了,蛮有道理的)。
 -------------------------------------------------------------------------------------------------------------------------------------------------------
       关于C高级的学习,是在ARM裸机学到了第五部分重定位的时候才开始学习的,学习C高级时候感触的特别的深。在没有学习C高级的时候,我还以为自己的C语言学习的还可以的,但是通过前面的几节的学习,发现自己以前到底有没有学过C语言呀!我以前用C写程序主要是在单片机下弄的,关于什么内存、堆、栈、函数指针、二重指针、生命周期、作用域、链接属性、链表,这些东西完全就不知道是一些什么鬼。在学习高级C的时候,确实学习到了很多的知识,虽然有一些内容,知识听了一遍,学习的还不是很深入,但是感觉对C语言的理解和以前不一样了,理解了内存、编译器、预处理等一些知识。
       今天才刚刚把高级C给看完了,虽然已经看完了,但是,里面还有很多的知识学习的还不是很扎实,比如关于”链表“,虽然链表的基础定义和操作会了一些,但是实践的还是感觉有一点的少。特别是在看到了linux内核中的链表,和我们自己定义的链表有一点小小的区别,以后还需要继续的学习。
C语言高级篇总结:
1、收获:
       (1)对于内存的理解比以前深入了
       (2) 存储类、作用域、生命周期、链接属性的理解(个人感觉这几个东西理解了,对编程时候一些现象就可以很好的想明白了)
       (3)C语言的很多零碎的基础知识理解了 
       (4)看到了一句代码后,会依次的分析这句话是什么意思了 
2、需要继续学习地方
       (1)指针感觉自己用的还不是很灵活,需要代码实战
       (2)链表这东西,基础的算懂了,但是叫我在实践中使用,感觉还有一点问题。 
3、其它
       虽然,学习到了一些以前不知道的C语言的知识,也加深了对C的一些理解,现在感觉对于C语言比以前更加亲切了,但是感觉还是差一点,代码的实践还少了一点。 需要以后不断学习和深入。
 
学习笔记
 
 
 
 
最后,引用朱老师的一句名言”难得东西不会,是因为简单没学好!“,所以,还是需要继续踏踏实实的学习!
 
==========================================
                                     朱老师物联网大讲坛
==========================================
免费的视频教程

嵌入式软件工程师完全学习指南:http://edu.51cto.com/course/course_id-3404.html

朱老师带你零基础学Linux:http://edu.51cto.com/course/course_id-3176.html

嵌入式Linux C语言完全学习视频课程:http://edu.51cto.com/course/course_id-3274.html

==========================================

 完整视频

网盘地址:http://yunpan.cn/cjVy3RAgfDufK 访问密码:4ad7

==========================================

 
 
 
 
 

总结:ARM逻辑和高级C(朱老师物联网学习)的更多相关文章

  1. 想要看懂鸿蒙OS源码?朱老师带你从框架分析开始

    HarmonyOS V2.0是面向轻量级设备的鸿蒙L0/L1级设备端操作系统,于2020.9开源至今已有2个多月,但是很多同学在学习鸿蒙源码时仍然感觉难以下手,找不到突破口. 2020.11.25(本 ...

  2. 潭州学院-JavaVIP的Javascript的高级进阶-KeKe老师

    潭州学院-JavaVIP的Javascript的高级进阶-KeKe老师 讲的不错,可以学习 下面是教程的目录截图: 下载地址:http://www.fu83.cn/thread-283-1-1.htm ...

  3. ES6特性:(阮一峰老师)学习总结

    ES6(阮一峰)学习总结   1.块级作用域的引入 在ES6之前,js只有全局作用域和函数作用域,ES6中let关键字为其引入了块级作用域. { var a = 5; let b = 6; } con ...

  4. 物联网学习笔记三:物联网网关协议比较:MQTT 和 Modbus

    物联网学习笔记三:物联网网关协议比较:MQTT 和 Modbus 物联网 (IoT) 不只是新技术,还是与旧技术的集成,其关键在于通信.可用的通信方法各不相同,但是,各种不同的协议在将海量“事物”连接 ...

  5. arduino物联网学习

    arduino物联网学习 目录 arduino物联网学习 20200215 OLED屏幕使用教程 材料: 软件 代码注释 完整代码 Arduino IDE 开发 ESP-01S/ESP-01物联网实战 ...

  6. python爬虫——黑板客老师课程学习

    程序: 目标url 内容提取 表现形式 为什么: 大数据——数据膨胀,信息太多了,不知道哪些信息适合你,例如谷歌搜索引擎. 垂直行业搜索——某一个行业的搜索,与搜索引擎最大的区别:搜索引擎是告诉你哪些 ...

  7. 优秀的前端project如何制定一个老师--html学习路径

    一个好的前端project教师发展,不是一蹴而就,它需要大量的学习和积累. 至于谁刚开始学习的人,如何入门.学习如何选择我的路线,做了各种工具? 1.  学习之前 1.不要着急看一些复杂网页效果的代码 ...

  8. 线性代数和numpy——黑板客老师课程学习

    一.代数是什么 代数->数的抽象表示->向量空间(线性空间) 线代->线性代数 关系: 向量空间之间和内部转换是通过线性变换. 实数——一维空间的点 复数——二维空间的点 如果两个向 ...

  9. python类——黑板客老师课程学习

    1.基本语法 class class_name(base_class):  base_class是它继承的父类 class_var def methods(self,args): statements ...

随机推荐

  1. IT项目经理应具备的十大软技能

    现在,企业对IT部项目经理的要求越来越多.如果你认为IT项目成员只需要技术性能力,那可就错了. 据IT招聘公司调查发现,几年人们对项目管理软技能的兴趣明显浓厚起来.许多企业尽量避免把IT部门看成只是成 ...

  2. Spring task任务调度详解

    spring内部有一个task是Spring自带的一个设定时间自动任务调度 task使用的时候很方便,但是他能做的东西不如quartz那么的多! 可以使用注解和配置两种方式,配置的方式如下 引入Spr ...

  3. Java父类子类的对象初始化过程

    摘要 Java基本的对象初始化过程,子类的初始化,以及涉及到父类和子类的转化时可能引起混乱的情况. 1. 基本初始化过程: 对于一个简单类的初始化过程是: static 修饰的模块(static变量和 ...

  4. mysql @变量和变量的区别及怎么判断记录唯一性

    DELIMITER// drop PROCEDURE if EXISTS test.express; create PROCEDURE test.express() BEGIN ) into @a f ...

  5. 从实践谈iOS生命周期

    从实践谈iOS生命周期 个人感觉生命周期无论在Android,还是iOS都是很重要的概念,因为在每个声明周期的状态下我们可以做很多预加载或者处理的操作.因此在这里主要总结下ViewController ...

  6. Linux read/write fread/fwrite两者区别

    Linux read/write fread/fwrite两者区别 1,fread是带缓冲的,read不带缓冲. 2,fopen是标准c里定义的,open是POSIX中定义的. 3,fread可以读一 ...

  7. maven 启动忽略test

    两种方法 1,--命令 mvn install -Dmaven.test.skip=true 2.pom.xml 文件 在tomcat 下面的pom.xml 文件里面加上如下 <!--  ski ...

  8. python-打印简单公司员工信息表

    python-打印简单公司员工信息表 要求,输入name不为空,输入次数最多3次,3次后跳出程序: 知识点: raw_input str转int whil if elif else continue ...

  9. JS正则表达式验证账号、手机号、电话、邮箱、货币

    验证帐号是否合法验证规则:字母.数字.下划线组成,字母开头,4-16位. function checkUser(str){ var re = /^[a-zA-z]\w{3,15}$/; if(re.t ...

  10. asp.net,mvc4,mysql数据库,Ef遇到问题集合

    asp.net  mvc  mysql数据库,在我一个新手自学MVC4时遇到如下的问题,一一解决掉的方法记录如下方便自己日后查看,也为了方便一些像我一样的新手遇到如下问题时,提供参考 问题一: 解决办 ...