原创 如何学习嵌入式(一)

2012-10-9 16:10 2085 15 16 分类: MCU/ 嵌入式
    在学习嵌入式Linux之前,肯定要有C语言基础。汇编基础有没有无所谓(就那么几条汇编指令,用到了一看就会)
C语言要学到什么程度呢?越熟当然越好,不熟的话也要具备基本技能。比如写一个数组排序、输入数字求和什么的。C语言唯一的方法是多写程序多练习,编译出错没关系,自己去解决;执行出错没关系,自己去分析。以前我是用VC来练习C语言的,经常去尝试着写一些C语言竞赛的题目。它们是纯C、纯数学、纯逻辑的题目,不涉及界面这些东西,很适合煅炼你的编程能力。
     回到主题,首先我们要明白你的目的是什么,大概来说所谓嵌入Linux可以分为两部分:底层系统、应用开发
    如果你是想做应用开发,那么你去把C语言、数据结构、JAVA什么的学好吧。嵌入式应用开发和PC上的应用开发并没有什么特别要注意的。也许你说在嵌入式上要做些优化,是的,要优化,但是未经优化的程序PC上的程序开发没什么差别。另外,当你有能力去优化时,你已经不用来问这个问题了。具体到某个例子,比如说开发界面,在PC上我们用VC;在嵌入式Linux里也许我们用QT也许用Android,这个时候你应该去学学QTAndroid的编程。但是基础还是CJAVA,在此基础上去熟悉它们的接口。你学过VC的话,也是要花时间去了解那些类、控件的。
  如果你的目的是想学习底层系统,这是我的专长,倒是可以说一点。

  在回答这个问题之前,我先回答:不少人问我,到底是学驱动还是学应用?

  我只能说凭兴趣,并且驱动和应用并不是截然分开的

1. 我们说的驱动,其实并不局限于硬件的操作,还有操作系统的原理、进程的休眠唤醒调度等概念。

   想写出一个好的应用,想比较好的解决应用碰到的问题,这些知识你应该懂

2. 做应用门槛低,特别是现在的ANDROID,纯JAVA。做应用的发展路径个人认为就是业务纯熟。
比如在通信行业、IPTV行业、手机行业,你了解行业的需求。所以,当领导的人,多是做应用的。
3. 做驱动,其实我不想称为做驱动,而是想称为做底层系统,做好了这是通杀各行业。我工作几年,
做过手机、IPTV、会议电视,但是这些产品对我毫无差别,因为我只做底层。他们的业务跟我没关系。当应用出现问题,他们解决不了时,我就会从内核角度给他们出主意,给他们提供工具。
做底层的发展方向,个人认为是技术专家。

4. 其实,做底层还是做应用,之间并没有一个界线,有底层经验,再去做应用,你会感觉很踏实。

   有了业务经验,你再了解一下底层,很快就可以组成一个团队。

   回到怎么学的问题上。嵌入式Linux底层系统包含哪些东西?不要急,举一个例子你就知道了。

1. 电脑一开机,那些界面是谁显示的?是BIOS,它做什么?一些自检,然后从硬盘上读入windows,并启动它。

   类似的,这个BIOS对应于嵌入式Linux里的bootloader。这个bootloader要去Flash上读入Linux内核,并启动它。

2. 启动windows的目的是什么?当然是上网聊天什么的了。这些上网、聊天工具在哪?

   C盘、D盘上。所以, windows要先识别出C盘、D盘。在Linux下我们称为根文件系统。

3. windows能识别出C盘、D盘,那么肯定能读写硬盘才行。这涉及的东西称为驱动程序。当然不仅仅是硬盘,还有网卡、USB等等。

   嵌入式Linux能从Flash上读出并执行应用程序,肯定也得有Flash的驱动程序啊,当然也不仅仅是Flash

   先说到这里吧,嵌入式LINUX里含有bootloader, 内核, 驱动程序、根文件系统这4大块。

文章评论1条评论)

登录后参与讨论

用户1731397 2014-11-7 17:04

希望可以写更多的东西,分享也是一种快乐嘛

用户1761490 2014-9-20 10:29

非常热情的楼主

用户385411 2014-9-7 22:23

第2讲里面的饿桌面上软件真多

用户1039988 2014-8-27 09:56

楼主前几章的名字取得很好听,呵呵。

huajun3_183615418 2014-8-12 11:09

非常感谢!

408266299_896694651 2014-8-12 08:30

对初学者很不错

用户1016021 2014-8-11 13:44

不错!顶了!

用户1089568 2014-8-7 10:14

谢谢分享!
相关推荐阅读
用户1532489 2012-10-10 20:41
6410移植mjpg-streamer
mjpg-stream的移植需要jpeg的库,所以我们先移植jpeg的库 (1)jpeg库的移植         1)jpeg源码包通过下面这个网址下载                ht...
用户1532489 2012-10-10 11:30
论火电,水电,风电,核电对音质的影响
1、用火电的力度大点,声音偏暖;用水电的声底偏冷,但解析力很高。水电中,以葛州坝的电音色最好;火电中,以北仑电厂的电音质最好(因为烧的无烟煤的比例最高)2、同一套器材,晚上8点到10点的时候音色就...
用户1532489 2012-10-09 15:38
【笔记】OK6410 SDIO WIFI 调试注意事项
1 eth0和lo不能同时使用,需要关闭 eth0 ,lo 节点,使用ifconfig eth0 down ,ifconfig  lo  down.然后 ifconfig wlan0 up  ,继...
我要评论
1
15
关闭 站长推荐上一条 /2 下一条