如何学习嵌入式系统
小弟我刚考上研究生,选了个主要方向为嵌入式的导师学过数字逻辑,计算机组成,操作系统单片机大四才开,那时候准备考研基本没看了本科是学软件工程的,因此在贴近硬件的地方有些蹩脚...
小弟我刚考上研究生,选了个主要方向为嵌入式的导师
学过数字逻辑,计算机组成,操作系统
单片机大四才开,那时候准备考研基本没看了
本科是学软件工程的,因此在贴近硬件的地方有些蹩脚
因此我想笨鸟先分,利用这个暑假恶补一下
就想问下做过嵌入式的大牛们,我该如何起步,该做些什么
说说你们的经历和经验
越仔细越好啦 展开
学过数字逻辑,计算机组成,操作系统
单片机大四才开,那时候准备考研基本没看了
本科是学软件工程的,因此在贴近硬件的地方有些蹩脚
因此我想笨鸟先分,利用这个暑假恶补一下
就想问下做过嵌入式的大牛们,我该如何起步,该做些什么
说说你们的经历和经验
越仔细越好啦 展开
展开全部
先讲一讲需要掌握的基本技能。
答:
(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)的死循环就足够了,杀鸡何必用牛刀。
编写这种裸奔的代码,也是学习嵌入式的必由之路,因为,你将会用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)的死循环就足够了,杀鸡何必用牛刀。
编写这种裸奔的代码,也是学习嵌入式的必由之路,因为,你将会用C语言去对寄存器写控制字,这就是以后写驱动程序的基础呀。
另外需要说明的是,从概念上说,“代码裸奔”也已经属于嵌入式开发的范畴。
(3)到了最后一个阶段,你就可以开始找一个方向(uCos、Linux、VxWorks、WindowsCE、Palm等等等等),学习有操作系统的嵌入式开发了。
嵌入式操作系统的种类也是无法计数的,有一些我连名字也叫不上来,太多太多了。但是值得庆幸的是,这些操作系统大同小异,相通的。
你正在在读书,建议学习uCos操作系统(看邵贝贝的《UC/OS操作系统》);如果你不喜欢这么Basic的操作系统,VxWorks也是一个不错的选择,VxWorks进入中国已经好多年了,国内出版的书也都很好,尤其推荐陈智育的《VxWorks程序开发实践》和周启平的《VxWorks下设备驱动程序及BSP开发指南》;Linux简直是恶梦,但是如果你能够走出这个噩梦,你也就成了高手了。
就说这么多吧,路漫漫其修远,祝你成功!!!
2020-07-28
展开全部
零基础迅为IMX6ULL开发板,新增QT实战视频
第1节-本期QT视频将会收获哪些知识?
第2节-在Windows上搭建QT开发环境
第3节-C++基础(上)
第4节-C++基础(下)
第4节-C++基础(下)
第5节-制作一个最简单的QT登录界面
第6节-QT信号和槽
第7节-仿写一个智能家居界面(上)
第8节-仿写一个智能家居界面(中)
第9节-仿写一个智能家居界面(下)
第10节-QT上位机开发之串口助手(上)
第11节-QT上位机开发之串口助手(下)
第12节-把QT程序打包成Windows软件
第13节-QT网络编程之TCP通信
第14节-QT网络编程之UDP通信
第15节-QT时间编程之QT时钟
第16节-QT系统移植之构建根文件系统
第17节-QT系统移植之交叉编译QT源码和触摸源码
第18节-QT系统移植之在开发板上部署QT运行环境
第19节-QT跨平台运行之把QT程序交叉编译到ARM开发板
第20节-QT跨平台运行之使用QT控制蜂鸣器
第21节-QT跨平台运行之把QT程序编译成手机APP
第1节-本期QT视频将会收获哪些知识?
第2节-在Windows上搭建QT开发环境
第3节-C++基础(上)
第4节-C++基础(下)
第4节-C++基础(下)
第5节-制作一个最简单的QT登录界面
第6节-QT信号和槽
第7节-仿写一个智能家居界面(上)
第8节-仿写一个智能家居界面(中)
第9节-仿写一个智能家居界面(下)
第10节-QT上位机开发之串口助手(上)
第11节-QT上位机开发之串口助手(下)
第12节-把QT程序打包成Windows软件
第13节-QT网络编程之TCP通信
第14节-QT网络编程之UDP通信
第15节-QT时间编程之QT时钟
第16节-QT系统移植之构建根文件系统
第17节-QT系统移植之交叉编译QT源码和触摸源码
第18节-QT系统移植之在开发板上部署QT运行环境
第19节-QT跨平台运行之把QT程序交叉编译到ARM开发板
第20节-QT跨平台运行之使用QT控制蜂鸣器
第21节-QT跨平台运行之把QT程序编译成手机APP
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
学嵌入式 c语言 和操作系统原理 是基础
很多人其实根本没有打好这些基础 就看一堆高级的书籍 看的云里雾里
没什么意义 就了解了个流程
基础打好了 学什么都快
你要学应用层开发 那看下unix 网络编程 那本圣经
还要学习下c++
学底层 驱动 要看下 计算机组成原理 方面的书 顺便学习汇编
单片机也可学一下 但那是不带 操作系统 的 最简单嵌入式系统
不过可以了解硬件知识 有精力的话可以看下 数电 (不要看模拟电路不是电子专业你也学不懂 因为你没学 电路分析、信号与系统)
接下来 学习arm机
外国 O'RELLIY 系列的linux 嵌入式 等计算机方面丛书都比较经典 评论都很不错
很多人其实根本没有打好这些基础 就看一堆高级的书籍 看的云里雾里
没什么意义 就了解了个流程
基础打好了 学什么都快
你要学应用层开发 那看下unix 网络编程 那本圣经
还要学习下c++
学底层 驱动 要看下 计算机组成原理 方面的书 顺便学习汇编
单片机也可学一下 但那是不带 操作系统 的 最简单嵌入式系统
不过可以了解硬件知识 有精力的话可以看下 数电 (不要看模拟电路不是电子专业你也学不懂 因为你没学 电路分析、信号与系统)
接下来 学习arm机
外国 O'RELLIY 系列的linux 嵌入式 等计算机方面丛书都比较经典 评论都很不错
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
零基础也能学习嵌入式
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2017-06-02
展开全部
嵌入式主要内容包括linux系统,C语言开发,数据库等,JAVA部分的安卓开发等,学成后可以开发应用软件的,内核开发,驱动开发等工作,做项目。目前国内零基础的入门性课程较多,如果自己是软件开发相关专业或有较好的基础的,应该考虑星创客这样的专为培养中高级工程师的课程
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询