返学费网 > 培训机构 > 全国IT培训中心

13081913316

全国统一学习专线 8:30-21:00

嵌入式开发中,uboot和kernel对于不同的文件系统是通用的吗?

这个好像没有这么做的吧。因为它们烧的地址都不一样啊。但是如果你是用UBOOT的话可以自己编辑一些命令,比如我把每次烧内核和烧文件系统做成两个命令,每次只需run一下自己的命令就可以自动完成上传,擦除,烧录了。

学习嵌入式开发需要什么样的基础?

嵌入式开发发展

现在互联网IT发展的很快,嵌入式系统无疑是当前较热门最有发展前途的IT应用领域之一。所以很多人都想学习嵌入式开发,最近有很多的同学问小编学习嵌入式开发需要什么样的基础,今天天通苑北大青鸟的嵌入式开发讲师为大家讲解学习嵌入式开发需了解的一些基础知识?


学习嵌入式开发需了解的基础知识

1.了解C语言基础知识。C语言是一门基础语言,无论是对嵌入式软件还是硬件开发编程,都有很重要的作用。

2.了解操作系统。对操作系统有所了解也很重要,比如说进程、线程,系统是怎么分配资源的,怎么管理硬件的等等,这些都能帮助你对硬件和软件有个很好的理解。

3.了解Linux或者wince下的编程。

4.具有单机片或者ARM或者MIPS等相关基础。

5.其他知识的扩充。我们还可以通过阅读一些优质的代码,了解UBOOT的源代码,或者是学习下linux的源代码等等。


嵌入式技术开发学习心得体会【2篇】

我是学机械的,但是从身边的一些人和社会实践经验中,渐渐觉得单纯搞机械结构设计已经没有太多竞争力了,机械跟运动控制一起搞才觉得作用更大,于是决定学习嵌入式控制这方面的知识。

由于不是学习自动化控制出身的,学校也没开设课程教这一块,虽然大一大二的时候学习了数电、模电、C语言、微机原理,但这些都是一些基础理论性的东西,并没有真正应用起来。在去年十月份的时候,我决定先从基础的51单片机开始学习,于是从网上买了普中科技的一块51开发板,经过一个多月的学习,渐渐掌握了对基础器件的控制应用。

在学完51单片机后,决定向更高级的(32位)控制器学习,因为这才是大部分控制器应用的王道。刚开始买arm开发板的时候,自己也是很犹豫的,因为网上太多种类了(有arm7、arm9、arm11等),就算是arm9也有不同公司出的。正好这时,我在学校二手市场上看到有一块FL2440的开发板出售,价格也挺便宜的,就立即入手了。

刚拿到开发板的心情是异常激动的,然而,自己并不知道如何使用开发板。虽然配套飞凌光盘里有不少的视频,但都不系统,还是不能开始学习飞凌开发板。在各方面网上搜索资源,然后又各种拜访自动化同学,经过他们推荐,认为韦东山出的嵌入式视频教程比较系统,易学、易懂。于是抱着试一试的心态,我在网上下载了韦东山第一期视频学习。刚开始的时候还担心教程跟自己的开发板不配套,听过一小节后发现,韦东山视频里讲解的开发板是JZ2440,和我的开发板是一样的处理器,突然整个世界都开朗了,虽然开发板不一样,但是原理都是相通的,而且我能在学习完韦东山视频后,再动手操作自己的FL2440开发板,我感觉效果更好。

经过韦东山一期视频的学习,我觉得韦东山视频有很多优点:

1、全程都是用绘图板来讲解,不是照着PPT念,而且都是现场编程、现场调试,你能留住每一个细节。

2、教程很系统化,使以前从未接触过嵌入式的人也能听得懂。手把手教你看原理图、识别硬件、从浅入深、从易至难。之1单片机上的器件,这些视频里都有讲解到的,所以如果还没学51单片机的,没关系,可以直接学arm9。

3、很完备的售后答疑服务,这是我最值得的推荐的一点。我加入了一个韦东山视频答疑的QQ群,经常有不懂的问题,就在里面提问,韦东山的服务团队和其他学习者会很热心的给我解答,很详细,很热心。有时也会在百问网上提问,总能收到满意的解答,个人很喜欢这种学习氛围。

现在,我的第一期视频快学完了,写下这么点经验,只是想给想要学习嵌入式的同学一点建议,如果你还没买开发板,你可以去买韦东山的JZ2440开发板,好像配件还挺完备的,而且能和韦东山的视频教程配套。如果你已经买了其他开发板,而为没有系统学习苦恼时,建议去看看韦东山的视频,因为原理都是相通的,你可以在看了视频后,再操作自己的开发板,效果会更好。

最后让我们一起向嵌入式进军!!加油!

【篇二】

常用的嵌入式操作系统有Linux、WINCE、安卓、Vxworks、QNX、OSE等,目前资料最多的是linux,所以下面以linux为例。

一、安装虚拟机和Linux系统。

一般人用的电脑都会装Windows系统,要想在Windows上跑其它系统,得安装虚拟机。而目前主流的虚拟机有vmware、、hyperV等,你可以随便选一个安装。然后去下载个人版的Linux镜像(.iso文件)并把它安装在虚拟机里面即可,这里给出主流Linux系统的链接:ubuntu、fedora、centos、debian、suse。如果你没有用过linux的话,推荐使用ubuntu。因为RedHat要收费,并改名为RHEL,所以这里不作介绍。

二、学会使用Linux常用命令。

这里,必须改改在Windows下点鼠标的习惯,在linux下做事得用命令行。此外,在Linux下载软件,不需要在百度下载,而是用linux自带的软件包管理工具(如:apt-get、dnf、rpm等)。如果你用ubuntu的话,得修改软件源(下载软件的网址),因为国外的源比较慢,百度上有详细说明。接下来,得学会最基本的命令,如:ls、cd、find、grep、ps、diff、fdisk、ifconfig等。跟着教材多操作几遍就会了,没有很深的理论知识,不需要掌握所有的命令,也不需要记住所有命令的选项,用到的时候会查就可以了。有空的话可以上ubuntu社区或者linux公社。

三、学会使用Linux常用工具。

1、我器(写代码必备的)。有gedit,vim,emacs,sublime等,推荐学vim。

2、gcc和gdb。gcc是编译器,gdb就是代码调试器。

3、makefile、autoconf、automake。这里可不像VC++6.0这种工具,点个鼠标就给你编译好。在Linux下,你得用makefile和make工具,来编译代码。其中autoconf和automake可以自动生成makefile。

4、ssh、tftp。如果你在ARM开发板上弄了个Web服务器,那么,你就可以用这些工具去访问它。其中,ssh工具建议用SecureCRT或者MobaXterm。

5、samba。要想用Linux跟windows交换数据,还可以搭建samba服务器。

6、版本控制器。有svn,cvs,git等,推荐学git。有了git,你就不必手动备份代码了。

四、学会编写shell脚本。

在实际工作中,复杂的系统管理操作,不会一行一行地敲命令,而是用脚本(命令是基础)。脚本也是一种编程语言,只不过是解释型语言。相比C/C++、C#、JAVA这类高级语言,脚本要易学很多(因为增加了语法糖)。在Linux下,shell也有很多种,如:bsh、bash、csh、tcsh、ksh、zsh等,一般是学bash,其它的遇到再学也不迟,因为都是大同小异的。此外,bash语法比较奇特,很多符号(如:$#,$0,$?等)比较难记,不过也没必要特意去死记它,有个印象就可以了,用到的话再查手册,这里重点掌握正则表达式。如果有时间的话,建议再学python脚本,python的语法要容易很多,用途也比bash广很多。

五、学会Linux下C编程。

尽管学会bash已经能做很多事情了,但是驱动和内核开发还是用C语言,因为那时候系统还没起来,bash是用不了的。此外,C语言的执行效率比bash要高,网络编程的Socket也常常用C语言开发。在这里,得掌握基本的文件操作、进程/线程控制、Socket等。推荐《Linux环境C程序设计》、《UNIX环境高级编程》、《UNIX网络编程卷1》、《UNIX网络编程卷2》,或许这些教材有点难,但是,请不要钻牛角尖,不懂的暂时跳过,在学完下一阶段的理论之后,再来看,之前不懂的东西就变得容易。

六、增强理论知识。

因为有的人打着嵌入式硬件工程师的名号xx,其实嵌入式硬件就是普通硬件工程师做的工作。我们这里都是讨论软件方面的内容,而且嵌入式是以软件为主导的(工资上有较大差距)。

1、单片机。不想学单片机的话,可以学计算机组成原理。

2、数据结构。主要掌握表和树,其中链表会在操作系统的调度算法中用到。

3、操作系统。全部都是重点,必须深入研究,才会对Linux有个较全面的认识。

4、编译原理。有时间的话,多看看,没空的话,也得了解一下。对于提高编程能力,有一定的帮助。

5、数据库。除了基本的数据库理论之外,还得掌握SQLite或者Oracle。

6、ARM体系结构。介绍ARM的架构和指令集,在移植uboot和驱动中会用到,不做这两项工作的话,可以不学。

7、计算机网络基础。开发中用到的tcp、udp、ssh、tftp、http、rtp就会涉及到网络相关的知识,也就是socket套接字编程。

8、接口应用。如:串口、zmodem、IIC、SPI、1-wire、USB、HDMI、CAN、IIS、PCIE、蓝牙、陀螺仪等。

学完上面这些理论之后,得再复习一下linux下C编程,你会有更大的收获。

下面第七、八、九阶段,使用开发板自带的即可,暂时不必研究它。

七、文件系统。

在学习操作系统原理的时候,已经有介绍文件系统了,而且不需要深入研究文件系统的具体算法,只需要了解其特性再学会使用它就可以了。如:NFS、FAT32、NTFS、yaffs2、ext4、ZFS等。

什么是嵌入式开发?嵌入式开发是做什么的?

嵌入式系统是计算机软件和硬件的综合体,岗位包括:ESE(嵌入式软件工程师);ADE(嵌入式应用开发工程师);FWE(嵌入式底层开发工程师);FEC(嵌入式固件开发工程师),你可以先下载全套嵌入式视频课自学,看是否感兴趣。

课程内容主要包括:

①C,Java核心编程:c语言核心编程,Java核心编程;

②Linux核心操作与算法:Linux系统使用,Linux-c编程核心技术,精品数据结构,Linux-c编程精髓;

③核心操作与算法:Linux系统编程,Linux网络编程核心技术,UI编程,Java核心编程,安卓核心技术;

④ARM+Linux底层开发:数字电路,ARM编程核心,Linux系统开发,嵌入式Linux驱动开发;

⑤大型项目实践:每期安排各类型真实的项目,详细可以点我下载资料。

互联网行业目前还是最热门的行业之一,学习IT技能之后足够优秀是有机会进入腾讯、阿里、网易等互联网大厂高薪就业的,发展前景非常好,普通人也可以学习。

想要系统学习,你可以考察对比一下开设有相关专业的热门学校,好的学校拥有根据当下企业需求自主研发课程的能力,能够在校期间取得大专或本科学历,中博软件、南京课工场、南京北大青鸟等开设相关专业的学校都是不错的,建议实地考察对比一下。

祝你学有所成,望采纳。

uboot是什么?

U-Boot,全称 Universal Boot Loader,是遵循GPL条款的开放源码项目。U-Boot的作用是系统引导。U-Boot从FADSROM、8xxROM、PPCBOOT逐步发展演化而来。其源码目录、编译形式与Linux内核很相似,事实上,不少U-Boot源码就是根据相应的Linux内核源程序进行简化而形成的,尤其是一些设备的驱动程序,这从U-Boot源码的注释中能体现这一点。

拓展资料:

选择U-Boot的理由:

① 开放源码;

② 支持多种嵌入式操作系统内核,如Linux、NetBSD, VxWorks, QNX, RTEMS, ARTOS, LynxOS, android;

③ 支持多个处理器系列,如PowerPC、ARM、x86、MIPS;

④ 较高的可靠性和稳定性;

⑤ 高度灵活的功能设置,适合U-Boot调试、操作系统不同引导要求、产品发布等;

⑥ 丰富的设备驱动源码,如串口、以太网、SDRAM、FLASH、LCD、NVRAM、EEPROM、RTC、键盘等;

⑦ 较为丰富的开发调试文档与强大的网络技术支持。

C++能做嵌入式开发吗?

C++能做嵌入式开发。在嵌入式系统开发中,C语言可以用于各个部分的开发,uboot、内核、驱动、应用。所以只要会c语言,就可以做嵌入式系统开发,不过对于应用层的开发,还是C++好一些。几十年来,嵌入式软件工程师们一直在争论是否应该使用C++替代C语言进行开发工作。

温馨提示:为不影响您的学业,来校区前请先电话咨询,方便我校安排相关的专业老师为您解答
  • 热门课程
  • 作者最新文章
  • 在线报名
申请试听课程

只要一个电话
我们免费为您回电

姓名不能为空
手机号格式错误