学习单片机,arm等从哪些方面着手呀?
5个回答
展开全部
我是借用的哦::
先讲一讲需要掌握的基本技能。
答:
(1)C语言是所有编程语言中的王者(单片机、DSP、类似ARM的种种芯片的编程都可以用C语言搞定),因此必须非常熟练的掌握,大学本科教学中的C语言是远远不够的,有两个非常重要的内容没有讲“文件的操作”和“IO的操作”,其中“IO的操作”是必须掌握的技术。
(2)操作系统原理,是必需的,如果你是计算机专业毕业那也就无所谓了,如果是非计算机专业的就必须找一本比较浅显的计算机原理书籍看一看,把啥叫“进程”“线程”“系统调度”等等基本问题搞清楚
(3)计算机原理应该指的是x86的微机原理吧,但是在嵌入式领域x86处理器只是冰山的一小角,还有很多叫做ARM、XScale、SuperH、68K、PowerPC等等等等,无数的其它处理器,有一些我也叫不上名字。但是,X86总规是基础,万变不离其宗,深入学一下还是非常有必要的(尤其对于想要学习Linux的朋友,想要读核的话就必须要深入学习以下x86系统架构)。
如何学习开发呢?
答:
大家都知道这个领域人才非常稀缺,但是,学习周期比较长,需要的知识面也比较广,所以不要心急。先看看下面的几个问题,了解一下你现在的知识水平:
(1)你用VC++或BC++编写过应用程序吗?
如果编写过应用程序,那就做好了,如果你没有做过上层应用程序,那么又如何能够去理解更深的更高深的底层程序呢,那就赶快补上这一课吧!!!
(2)你曾经编写过单片机或者DSP的程序吗?
我们把类似51单片机或者DSP上面跑的没有操作系统的程序叫做“代码裸奔”,我们也都曾经编写过裸奔的代码。因为有的时候比如我们编写一个简单的程序,就只需要点几个LED检测几个按钮的状态,那么“代码裸奔”弄一个while(1)的死循环就足够了,杀鸡何必用牛刀。
编写这种裸奔的代码,也是学习arm的必由之路,因为,你将会用C语言去对寄存器写控制字,这就是以后写驱动程序的基础呀。
(3)到了最后一个阶段,你就可以开始找一个方向(uCos、Linux、VxWorks、WindowsCE、Palm等等等等),学习有操作系统的嵌入式开发了。
嵌入式操作系统的种类也是无法计数的,有一些我连名字也叫不上来,太多太多了。但是值得庆幸的是,这些操作系统大同小异,相通的。
你正在在读书,建议学习uCos操作系统(看邵贝贝的《UC/OS操作系统》);如果你不喜欢这么Basic的操作系统,VxWorks也是一个不错的选择,VxWorks进入中国已经好多年了,国内出版的书也都很好,尤其推荐陈智育的《VxWorks程序开发实践》和周启平的《VxWorks下设备驱动程序及BSP开发指南》;Linux简直是恶梦,但是如果你能够走出这个噩梦,你也就成了高手了。
就说这么多吧,路漫漫其修远,祝你成功!!!
先讲一讲需要掌握的基本技能。
答:
(1)C语言是所有编程语言中的王者(单片机、DSP、类似ARM的种种芯片的编程都可以用C语言搞定),因此必须非常熟练的掌握,大学本科教学中的C语言是远远不够的,有两个非常重要的内容没有讲“文件的操作”和“IO的操作”,其中“IO的操作”是必须掌握的技术。
(2)操作系统原理,是必需的,如果你是计算机专业毕业那也就无所谓了,如果是非计算机专业的就必须找一本比较浅显的计算机原理书籍看一看,把啥叫“进程”“线程”“系统调度”等等基本问题搞清楚
(3)计算机原理应该指的是x86的微机原理吧,但是在嵌入式领域x86处理器只是冰山的一小角,还有很多叫做ARM、XScale、SuperH、68K、PowerPC等等等等,无数的其它处理器,有一些我也叫不上名字。但是,X86总规是基础,万变不离其宗,深入学一下还是非常有必要的(尤其对于想要学习Linux的朋友,想要读核的话就必须要深入学习以下x86系统架构)。
如何学习开发呢?
答:
大家都知道这个领域人才非常稀缺,但是,学习周期比较长,需要的知识面也比较广,所以不要心急。先看看下面的几个问题,了解一下你现在的知识水平:
(1)你用VC++或BC++编写过应用程序吗?
如果编写过应用程序,那就做好了,如果你没有做过上层应用程序,那么又如何能够去理解更深的更高深的底层程序呢,那就赶快补上这一课吧!!!
(2)你曾经编写过单片机或者DSP的程序吗?
我们把类似51单片机或者DSP上面跑的没有操作系统的程序叫做“代码裸奔”,我们也都曾经编写过裸奔的代码。因为有的时候比如我们编写一个简单的程序,就只需要点几个LED检测几个按钮的状态,那么“代码裸奔”弄一个while(1)的死循环就足够了,杀鸡何必用牛刀。
编写这种裸奔的代码,也是学习arm的必由之路,因为,你将会用C语言去对寄存器写控制字,这就是以后写驱动程序的基础呀。
(3)到了最后一个阶段,你就可以开始找一个方向(uCos、Linux、VxWorks、WindowsCE、Palm等等等等),学习有操作系统的嵌入式开发了。
嵌入式操作系统的种类也是无法计数的,有一些我连名字也叫不上来,太多太多了。但是值得庆幸的是,这些操作系统大同小异,相通的。
你正在在读书,建议学习uCos操作系统(看邵贝贝的《UC/OS操作系统》);如果你不喜欢这么Basic的操作系统,VxWorks也是一个不错的选择,VxWorks进入中国已经好多年了,国内出版的书也都很好,尤其推荐陈智育的《VxWorks程序开发实践》和周启平的《VxWorks下设备驱动程序及BSP开发指南》;Linux简直是恶梦,但是如果你能够走出这个噩梦,你也就成了高手了。
就说这么多吧,路漫漫其修远,祝你成功!!!
展开全部
ARM我还没学,说说单片机吧,如果你接触过C语言的话,你就直接上网买一块单片机开发板(一般都有教程的)。
不要说自己什么都不懂,担心买回来没用,其实不用怕,我当时也是什么也不懂,只是懂得C,C的基础也很一般,不过在很短的时间就已经上手了,需要的时间主要是看你是什么学的,反正你按着教程一个步骤一个步骤去做,就行了。最经典,最简单的是流水灯,做好这个你就知道原理单片机不是很难,兴趣也会大增,信心也大增的。
记住:边做实验边学!
不要说自己什么都不懂,担心买回来没用,其实不用怕,我当时也是什么也不懂,只是懂得C,C的基础也很一般,不过在很短的时间就已经上手了,需要的时间主要是看你是什么学的,反正你按着教程一个步骤一个步骤去做,就行了。最经典,最简单的是流水灯,做好这个你就知道原理单片机不是很难,兴趣也会大增,信心也大增的。
记住:边做实验边学!
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我是干这行的,干了7年了
我个人看,不会电路就不要靠单片机吃饭了,说的严重点儿,但工作了就是这样,不会电路做系统是就不知道怎么安排每个功能都用什么器件完成,如果搞硬件的安排了有可能对软件设计有很大影响或会使软件设计非常复杂,说以硬件是一定要懂的,最需要懂的就是单片机外围电路的了解,要知道都有什么类型的电路和常用电路的应用方法。
51 pic avr它们的区别看怎么分了
功耗来讲 最低的是pic然后是avr最后是51,价钱讲是 最低的是51然后是pic最后avr
51在什么上都有应用多数是控制系统,pic一般在小产品,便携和小家电较多,avr就是控制了大多是控制电机啥的恶劣环境中
arm和单片机就是两个概念了,要学的就是arm应用手册了,虽然实现的功能和单片机差不多,但学时就不要像单片机一样看待了;arm相当于单片机中的acc,得扩展 ram、rom、等等
你的串号我已经记下,采纳后我会帮你制作
我个人看,不会电路就不要靠单片机吃饭了,说的严重点儿,但工作了就是这样,不会电路做系统是就不知道怎么安排每个功能都用什么器件完成,如果搞硬件的安排了有可能对软件设计有很大影响或会使软件设计非常复杂,说以硬件是一定要懂的,最需要懂的就是单片机外围电路的了解,要知道都有什么类型的电路和常用电路的应用方法。
51 pic avr它们的区别看怎么分了
功耗来讲 最低的是pic然后是avr最后是51,价钱讲是 最低的是51然后是pic最后avr
51在什么上都有应用多数是控制系统,pic一般在小产品,便携和小家电较多,avr就是控制了大多是控制电机啥的恶劣环境中
arm和单片机就是两个概念了,要学的就是arm应用手册了,虽然实现的功能和单片机差不多,但学时就不要像单片机一样看待了;arm相当于单片机中的acc,得扩展 ram、rom、等等
你的串号我已经记下,采纳后我会帮你制作
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼主是否有足够的基础知识,若有建议先学51单片机,因为资料比较多网上搜索大把,学会了51在进行下一步。若没有基础,先找一些入门的书籍或者网络资料学一学逻辑们电路,学单片机必须知道这些,什么叫或门、与门、非门、等等。最后希望楼主早日学成。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
先学习51单片机,这是最基础的也是最经典的,学好了51在学arm,如果要51的资料找我,或百度啊1098204402
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询