1 , 嵌入式软件开发应该学什么嵌入式开发突出强制和项目 ,
2,嵌入式程序是什么嵌入式程序一般是指在控制器上跑的程序,往往不能直接编译没有开发环境,只能在电脑上开发之后放在嵌入式设备上运行 所以是不是嵌入式程序可以这么简单的判断设备是否带开发环境比如以前的手机就不能直接用手机开发程序或者是电饭煲电磁炉等不能自己开发自己这里面的程序算是嵌入式程序你在服务器上开发的程序不算嵌入式除非你把它移植到嵌入式设备上比如ARM芯片上
3,目前常用的ARM平台下的嵌入式开发软件有哪些 谢谢LINUX下一般编辑用VIM,编译用ARM-LINUX-GCC,DEBUG用GDB或者在代码中加入PRINTF或者PRINTK串口线,网线,ok!当然还有其它方法,首先将u-boot烧写到nandflash,或sd卡中,让uboot启动起来,起来之后就好办了,就可以通过网线与开发板建立连接,用tftp可以上传文件和程序,而且可以使用nfs服务挂载电脑上的文件系统,通过串口控制开发版,并且返回信息 。我用KEIL,IAR【嵌入式程序,嵌入式软件开发应该学什么】
4 , 嵌入式应用程序是什么嵌入式系统是指用于执行独立功能的专用计算机系统 。它由包括微处理器、定时器、 微控制器、存储器、传感器等一系列微电子芯片与器件,和嵌入在存储器中的微型操作系统、控制应用软件组成,共同实现诸如实时控制、监视、管理、移动计算、数据处理等各种自动化处理任务 。嵌入式系统以应用为中心,以微电子技术、控制技术、计算机技术和通讯技术为基础,强调硬件软件的协同性与整合性 , 软件与硬件可剪裁 , 以满足系统对功能、成本、体积和功耗等要求 。最简单的嵌入式系统仅有执行单一功能的控制能力,在唯一的ROM 中仅有实现单一功能的控制程序,无微型操作系统 。复杂的嵌入式系统,例如个人数字助理(PDA)、手持电脑(HPC)等,具有与PC 几乎一样的功能 。实质上与PC 的区别仅仅是将微型操作系统与应用软件嵌入在ROM、RAM 和/或FLASH 存储器中,而不是存贮于磁盘等载体中 。很多复杂的嵌入式系统又是由若干个小型嵌入式系统组成的 。5,怎么系统学习嵌入式开发嵌入式系统开发学习--从入门到精通很多新手学习嵌入式系统,不清楚那么多方向舵知识和参考书,该从哪里开始学习 。入手了 , 却又在该先学习什么后学习什么上失去方向 。这里有你想要的答案,帮你指点..学习步骤如下:(一步步来哦:)1、Linux 基础2.Shell 编程基础3、Linux 下的 C 编程基础4、嵌入式系统开发基础 5、嵌入式系统移植 6、嵌入式 Linux 下串口通信 7、嵌入式系统中多进程程序设计 8、嵌入式系统中多线程程序设计 9、嵌入式 Linux 网络编程 10、GUI 程序开发 11、Linux 字符设备驱动程序 12、文件系统以上是我觉得作为嵌入式系统开发的学习步骤,按部就班地去施行和学习,到不失为一种好的学习方法:)就算是作为参考也是有很好的价值的!我就是这么学的6 , 什么是嵌入式软件开发嵌入式是当前最热门最有发展前途的IT应用领域之一 。像我们平常常见到的手机、PDA、电子字典、可视电话、VCD/DVD/MP3 Player、数字相机(DC)、数字摄像机(DV)、U-Disk、机顶盒(Set Top Box)、高清电视(HDTV)、游戏机、智能玩具、交换机、路由器、数控设备或仪表、汽车电子、家电控制系统、医疗仪器、航天航空设备等等都是典型的嵌入式系统 。嵌入式软件开发需要学的东西很杂,因为它跟普通的上层软件开发还是存在一定的差别的,主要表现在嵌入式软件是指针对某一种特定的需求或者应用而定制的硬件和软件平台,以及在该平台上运行的软件 。所以,学习嵌入式软件开发不仅仅要懂软件开发方面的东西,也需要一些主流嵌入式操作系统、硬件体系架构和硬件资源管理方面的知识 。1. 编程类课程(主要以C语言为主 , 靠底层的开发还需要懂得汇编语言)2. 软件工程类课程 , 包括软件的开发流程,项目管理,软件开发方法之类的 。3. 数据库方面的知识(有可能会学,也有可能不用)4. 编程算法 。(数据结构方面的书是需要有的 , 严蔚敏的数据结构挺好,只不过有点难,唐发根的也不错)5. 操作系统方面的知识,嵌入式的话一般是以linux为例 , 也有可能以uC/OS为基?。Ш们度胧较低车幕? ,除了扎实的编程基础 , 这部分知识的积累尤其重要 。6. 嵌入式相关的课程,因为嵌入式的开发有别于一般PC机上的上层开发 。7. 简单的硬件和体系架构方面的知识,比如ARM、PowerPC、MIPS之类的 。7,嵌入式开发要学什么学习嵌入式开发要学哪些入门嵌入式工程师此阶段主要是前期的入门过程 , 主要针对入行没多久的新人 。其实成功没有捷径,所以打好基础才是关键 。嵌入式开发要学什么主要包含以下4个方面的内容:1.电路知识 首先你要学习电路、模电、数电,认识电阻、电容、三极管,基础器件要知道,放大电路、集成运放、时序电路基本电路能看懂,不然看电路图一定是云里雾里,也就无法进行后续的工作 。硬件产品的设计实现,包括器件选型、原理图和PCB设计、电路调试 , 都需要过硬的电路基础 。2.C语言C语言是嵌入式开发中最重要的编程语言,要对这门语言有深入的理解,毕竟不仅仅要会写程序,看懂他人程序也很重要 。最基本的数据类型、数组、指针、结构体,链表、文件操作等都要会,掌握基本语法和语句,不然你要能区分指针数组与数组指针吗?3.单片机 单片机入门相对简单,通过单片机的学习可以熟悉单片机的硬件结构,包括I/O口、AD转换、通信(串口、并口、I2C、CAN、USB、以太网、ZigBee技术等)、显示(LED、LCD等)、控制(PWM等控制技术)、数据处理(图形、图像、语音、视频等的处理或识别)等,学好单片机可以为采用嵌入式系统奠定良好的基础 。4Linux基础Linux的源码和架构都是开放的,在嵌入式系统中应用尤为广泛,学习Linux对于系统的开发会有很大的帮助 。详细了解Linux下的目录结构、基本命令、编辑器VI、编译器GCC、调试器GDB和 Make 项目管理工具,Shell Makefile脚本编写等知识,以及嵌入式开发环境的搭建 。中级嵌入式工程师经过第一个阶段的学习,你已经可以进行嵌入式开发工作了,但是要进阶依旧还有很多知识要学 , 而这个阶段也将是第一个分水岭,使得优秀的嵌入式工程师得以脱颖而出 。此阶段虽然只有三项 , 但涉及的知识非常广,要想学好需要花费大量的精力 。1.Linux编程系统编程可以直接跟内核及核心系统程序库对话,深入了解Linux内核 。掌握Linux系统编程主要提升对Linux应用开发的理解和代码调试的能力 。由于网络应用开发越来越广泛,通过Linux网络发展、TCP/IP协议、socket编程、TCP网络编程、UDP网络编程、Web编程开发等方面入手 , 可以全面了解Linux网络应用程序开发 。2数据结构与算法 数据结构及算法在嵌入式底层驱动、通信协议及各种引擎开发中得到了广泛的应用 , 语言编译要使用栈、散列表以及语法树;操作系统中用队列、存储管理表及目录树等;数据库系统运用线型表、多链表及索引表进行数据管理等等,对其掌握的好坏直接影响程序的效率、简洁及健壮性 。3.QT、DSP、FPGALinux没有自己界面,学习QT编程可以创建艺术级的图形用户界面所需的所有功能 , 从而更好的实现人机交互控制 。而如今用户对于图形图像的要求也越来越高,这就需要DSP、FPGA技术来设计开发更好的嵌入式视觉系统 。高级嵌入式工程师学习了前两个阶段的知识,你已经可以胜任大部分嵌入式工作了,但是距离大咖仍有一定的差距,其实已经到了第二个分水岭 。这部分更多涉及系统层面,没有全方位的知识将会很难下手 。1操作系统平台开发 除了Linux外,嵌入式操作系统还有ARM、WINCE、uC/OS II、Vxworks、uClinux等,不同的系统有着不同的使用环境,你需要学习掌握系统的各个模块,为底层平台搭建做好准备 。熟悉各个操作系统的特点以及系统的内核移植,确保操作系统能在某个微处理器或微控制器上运行 。随着手机智能硬件的快速兴起,Android操作系统开发也越来越重要 。2驱动开发 驱动程序设计是嵌入式Linux开发工作中非常重要的一部分 。不仅要熟悉Linux的内核机制、驱动程序与用户级应用程序的接口,掌握系统对设备的并发操作 。还要具备ARM硬件接口的基础知识,熟悉ARM Cortex处理器各资源、掌握Linux设备驱动原理框架,以及工程中常见Linux高级字符设备、块设备、网络设备、USB设备的驱动开发 。当你到达这个位置的时候,可以说你已经是一个人生赢家了,而真正的学习过程如同一场漫长的修行,在这个过程中,必定有各种各样的困难 。当然了 , 嵌入式工作中更多的需要实践以及经验的积累,相信守得云开见月明,你也可成为一名优秀的嵌入式工程师 。需要嵌入式培训 , 可以来到华清的星创客精英训练营,专门培训中高端嵌入式工程师 。我也是计算机科学与技术专业的,你要是在单片机上做开发,给你看看怎么学习 。当然我们的嵌入式学习基本上都是基于linux的啊 。开发板必须要有的?。。『呛?。这里声明一下,我指的嵌入式主要是偏向软件的嵌入式 。学习嵌入式的重点和难点关键在操作系统 , 如果没有掌握操作系统,我认为很难把握一个嵌入式系统 。即使在做嵌入式开发中,作应有层的开发几乎可以不知道操作系统也可以开发,我认为那是浮在表面的 。很难深入和提高自己的层次 。声明:一孔之见!不可深究!在学习linux内核过程中犯了一个极其严重路线错误:对linux几乎不懂就开始学习内核 。我个人推荐一个学习路线是:使用linux—〉linxu系统编程开发---〉驱动开发和分析linux内核 。而我差不多相反,实际上你不会使用linux也可以学习内核,但是如果你懂了这些东西学习更有效率 。关于要不要学习内核的问题 , 我的回答如下:不一定 。如果你是喜欢钻研的那你进入内核会满足你的欲望 。同时对你以后的嵌入式系统的开发有很好的影响 。如果你想从事嵌入式linux系统开发,最好对内核有所了解 。如果仅仅是做应用开发没有必要 。我打个比喻:c、c++、java等语言是武林中的某个武林派别的话,如什么拳法,什么刀法等 , 那么linux 内核应该是一个人的内功的反应 。怎么开始学linux内核:最好有三件宝物:《深入理解linux内核》《情景分析》和源代码 。先看《深入理解linux内核》,那主要讲原理,好像市场上有本讲原理性并且更浅 , 《linux内核设计与实现》听说不错 。如果没有学习操作系统的,像我这样的 , 最好先看看操作系统原理的书 。看了几遍后,就看情景分析,最好对着《深入理解linux内核》看 。两本交叉看 , 《深入理解linux内核》是纲,《情景分析》是目 。最后深入代码 。学习嵌入式技术,我认为两个重点,cpu和操作系统,目前市场是比较流行arm,所以推荐大家学习arm 。操作系统很多,我个人对开始学习的人,特别不是计算机专业的,推荐学习ucos 。那是开源的,同时很小 。学习很好 。为什么选linux,我不想讲太多 , 网上这方面的太多,但是我在工作中发现,做linux的技术路线很难 , 在windows几乎不会有的问题 , 在linux开发中几乎遍地陷阱 。一掉进去划很长时间出来 , 一旦解决自己又长进了!相对来说开发周期长,难度大 。现在资料也逐渐丰富起来,难度也降低了些!至于怎么学习,这是他的特色地方 , 必须有块开发板,我是同学里最早买学习板的,虽然化钱 , 我认为值 。对我实习和工作产生了很大的影响 。如果没有开发板,那是纸上谈兵 。有人说,那要1000-2000?。娜肥牵?兄弟,看长远的,对您的职业和发展那点钱不算什么!有的人说我站着说话不腰痛,好吧,钱这东西对我影响很大 , 我在大学里扫厕所,扫的不错,奖5元/月 。兄弟你有过吗?我认为教育投资是效益最有保障的!我实习拿3k,很多同学拿 1-2k,当然比我高的也有 。虽然我现在没有毕业,但一家公司就签了 。从事目前流行的高档的消费电子的研发 。对于我两年前一无所知的我,应该有质的变化,我感谢学校收了我这个废品 。当然我也非常的努力 。说这么多并不是要炫耀我什么,实际上根本不值得炫耀,虽然现在工作环境和待遇比较满意,但是,我发现我很差,特别是代码能力,我希望平常大家少玩游戏,多编程 。编程才是硬道理! 没有想到,一下写了这么多,其实还想写的,比如在中科院的一位老兄是怎样学习linux内核和看书的,真的很感动 。他的为人我很钦佩 。也想介绍毛德操的《嵌入式系统》那本书,对学习arm linux的很好,也想介绍实习和工作的东西,太长了,耽误大家时间 。我也不想检查里面的错别字了,很多!呵呵呵,我想对你应该有帮助的啊,特别是那几本书,必看的?。。?希望你前程似锦,学习进步?。?呵呵呵呵 。汇编也很重要啊 , 这一点对明白操作系统和cpu有重要的推进作用 。
推荐阅读
- 高德地图详细使用方法,手机高德地图导航怎么用
- 超级玛丽制作方法,我的世界怎么用命令方块做超级玛丽
- vivo应用商店下载,怎样小小下载vivo自带软件应用商店
- 小程序开源平台,小程序平台有哪些工具可以推荐
- Python编译运行,如何将python程序编译成执行档
- apple新品发布2021,苹果新品发布会发布什么
- 爆仗竹
- 如何在云服务器上搭建服务端? 云服务器怎么做服务端
- 高清语音智控电视推荐 4K海尔LU58C51平板电视价格