找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 7460|回复: 0
打印 上一主题 下一主题
收起左侧

教你如何使用学习嵌入式,从零开始(硬件篇)

[复制链接]
跳转到指定楼层
楼主
ID:204624 发表于 2017-5-31 17:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
常见的嵌入式系统有这么多
  Linux、uClinux、WinCE、PalmOS、Symbian、eCos、uCOS-II、VxWorks、pSOS

、Nucleus、ThreadX 、Rtems 、QNX、INTEGRITY、OSE、C Executive、

autosar......
  什么是嵌入式操作系统?
  嵌入式操作系统是一种支持嵌入式系统应用的操作系统软件,它是嵌入式系统的

重要组成部分。嵌入时操作系统具有通用操作系统的基本特点,能够有效管理复杂的

系统资源,并且把硬件虚拟化。
  从应用角度可分为通用型嵌入式操作系统和专用型嵌入式操作系统。常见的通用

型嵌入式操作系统有Linux、VxWorks、Windows CE.net等。常用的专用型嵌入式操作

系统有Smart Phone、Pocket PC、Symbian等。?
  按实时性可分为两类:
  实时嵌入式操作系统主要面向控制、通信等领域。如WindRiver公司的VxWorks、

ISI的pSOS、QNX系统软件公司的QNX、ATI的Nucleus,很多汽车电子行业都是利用实

时性很强的操作系统等。
  非实时嵌入式操作系统主要面向消费类电子产品。这类产品包括PDA、移动电话、

机顶盒、电子书、WebPhone等。如微软面向手机应用的Smart Phone操作系统。
  嵌入式系统的设计和实现而言,基本上需要四种不同的工作:系统设计工作,硬

件设计工作,驱动程序和操作系统移植工作和应用程序设计开发工作。?
  1、系统设计工作?
  在系统的设计阶段,系统分析师将根据需求确定系统的硬件的基本构成,根据系

统的需求选择使用那种处理器,使用哪种操作系统,使用那些软件开发工具。系统分

析师往往是较为完整的参与过嵌入式系统设计的全过程,对于系统应用的行业较为了

解,对于嵌入式系统本身的开发流程十分清楚的人。
  2、硬件设计工作
  系统硬件设计人员需要根据系统分析师的设计结果,进行硬件原理图的设计。通

常需要硬件设计人员熟悉嵌入式系统的硬件构成。硬件设计人员需要了解常用的嵌入

式系统处理器,存储器(Flash,SDRAM),以太网MAC芯片,音频/视频编解码芯片,

电源管理芯片,总线接口电路 (USB,PCI),液晶显示模块,可编程逻辑器件

(FPGA/CPLD),无线网络通信模块(Bluetooth,WLAN,GPRS)等硬件电路构成元素的基本

工作原理,连接使用方法,使用注意事项,基本调试方法等内容。在网络上能找到很

多公司的评估板的原理图,对于这些原理图要仔细研究,摸清处理器同存储器,网卡

,液晶模块等器件的连接方法和原因。通过对这些电路的研究,能够较快地了解整个

嵌入式系统的构成,这些电路同实际产品中的电路虽有一定差别的,特别是对于手持

设备,但这些差别不影响初学者学习嵌入式系统的硬件设计基本构成。

  1)学习 Linux系统安装、 常用命令、应用程序安装。
  2) 学习 Linux 下的 C 编程、这本书必学《UNIX 环境高级编程》、《UNIX

 网络编程》,Rechard Stevens 写的,C 高手大都学习过 《C 和指针》、《C 缺

陷与陷阱》、《高质量C/C++编程指南》、《C 专家编程》、《The C programming

Language》
  3)程序员大都要学:数据结构,嵌入式程序员数据结构必学!
  4)底层开发人员大都要学:微机原理、计算机体系结构,嵌入式开发人员必学!
  5)单片机可以让一个从事软件开发的人了解和如何操作硬件,有必要学,因为一

开始就从 ARM 入手,不太现实!
  6)ARM 体系结构,其中有汇编。
  7)数字电路有必要学习,不然你在做底层开发时真的会不知道怎么看原理图,起

码也得懂与或门吧。
  8)ARM + Linux 应用程序开发。(前提是要有开发板)
  9)要做底层开发,就必须知道软硬件之间是如何衔接和配合工作的,那么电子技

术应该要好好学习了,很多时候会用到模拟电路知识,这是区别好手与菜鸟的不同之

处之一。
  10)Linux 下的汇编要学,这样你才能真正了解你写的程序是如何在一个特定的

硬件上跑的。这是区别好手与菜鸟的不同之处之二。
  11)TCP/IP 协议栈要学,所有的嵌入式高手都得掌握的东西,这是区别好手与菜

鸟的不同之处之三。

  12)有了这些东西,拿下 Linux 驱动 已经不再话下,需要你去学习 Linux 内

核源代码和Linux驱动程序设计,这是一个技术升华。
  13)音频、视频的解码译码技术你得学。
  14)各种 IC ,各种 bootloader 你能够参与其开发设计。
  15)自行设计开发新产品,新技术。
  学到这个地步差不多要花个3年的时间吧。但是后面的路该怎么走呢?嵌入式系统

性的东西搞了一个产品之后,基本上一些套路都摸清楚了。?
  不同的行业,对于系统的要求是不一样的,比如汽车行业,航空航天行业等一些

高精度,高安全的需要对实时性要求非常之高,对于安全性和可靠性的要求非常严格

。而有些行业比如消费类产品,娱乐类的,生活用具方面的对于用户体验是不一样的

,数码产品对于一些图像声音的处理,要求更高,需要高清,高品质的。而对于一些

通信设备类对于网络的应答数据传输要求就非常严格,等等。这些根据不同的要求,

选择符合自己的操作系统,能对开发工作有更大的帮助。


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表