热搜关键词: 电路基础ADC数字信号处理封装库PLC

pdf

嵌入式学习步骤就是这么简单

  • 1星
  • 2021-06-20
  • 196.11KB
  • 需要1积分
  • 2次下载
标签: 嵌入式

嵌入式

单片机

单片机

嵌入式学习步骤就是这么简单

嵌入式学习步骤,嵌入式学习就是这么简单
在½上看到不错的文章,和大家分享。
嵌入式门槛½然较高,½也跟其他事物一样,并不是牢不可破。只要我们用心去对待,冬
雪终将化去,春风定会吹来。
具½步骤如下:
1、
语言》第二版 谭浩强 ; 《C 程序设计语言》第二版 徐宝文译 机械工业出版社
《C
½½区分开指针数组和数组指针吗?½知道½数指针吗?
½½区分开定义一个变量时系统给它分配的空间与用
malloc()½数给一个变量分配的
空间有什么不一样吗?
2、
《数据结构》C 语言版
黄½愉、叶乃青编 清华大学出版社
½½合上书本,用
C
语言实现书中的单链表、双链表数据结构吗?
3、
《实用
C++程序设计》第二板
中½电力出版社
Steve_Oualline
此阶段主要是学习其面向对象的编程思想,加深对
C
语言和数据结构的理解。
4、学习单片机,最½½找个前辈带一带。
½½用
51
单片机做出一样实际的东西吗?即½它再简单!
要注意加深对中断的理解。
5、学习 ARM
单片机。
(1)、细读《ARM
微控制器基础与实战》周立工编写(注:即½½不用书中的开发板)
(2)、细读相关芯片的原版英文文档。如:arm920TE.pdf
S3C2410_1.2.pdf
6、学习 uCOS!!操½系统。
(1)、细读《嵌入式实时操½系统 uC/OS-!!》第二版
召贝贝译
½½把
uCOS!!移植到自己的平台上吗?
(2)、½编写在 uCOS!!操½系统环境下运行的针对具½硬件的驱动程序
7、熟悉Linux
环境,学习Linux 环境编程,学习交叉编程
(1)、细读《linux
½令大全.pdf》
(2)、细读《GNU Make
½用手册(中译版).pdf》
(3)、学习创建交叉编程环境.
8、学习 Linux
操½系统。
(1)、
《UNIX 环境高级编程》
(2)、可以到一些½的½站下½½一些比较½的书籍
(3)、细读《linux
内核完全注释》
(4)、细读《understanding the linux kernel 2》
(5)、利用源代码阅读利器工具"Source Insight"进行真正的 linux
内核原码刨析
(6)、
最后进行内核移植,并½编写在
linux
操½系统环境下运行的针对具½硬件的驱动
程序
9、学习 Linux
设备驱动编写。可参考《Linux 设备驱动程序》
10、复习 C++,学习用 QT
进行图½界面编程
(1)、细读《QT
编程宝典》
专业培训嵌入式
ARM,linux,STM32、单片机,电子,PCB,FPGA,
安卓
www.edu118.com
QQ: 2685896890
(2)、学会通过查看 QT
电子文档进行
QT GUI
实地编程
(3)、学习交叉编程.
(其实就是把½令
qmake
变为
tmake)
11、½然,½也可学习一下 PCB
的制½和设计一个自己的
CPU(即½壳)
在嵌入式½件方面最重要的课程包括:
(1)
嵌入式微处理器结构与应用:
这是一门嵌入式硬件基础课程,我们说过,嵌入式是½硬件结合的技术,搞嵌入式½件的
人应对
ARM
处理器工½
原理和接口技术有充分了解,包括
ARM
的汇编指令系统。若不了解处理器原理,怎么½控
制硬件工½,怎么½写
出节省内存又运行高速的最优代码(嵌入式½件设计特别讲究时空效率)
,怎么½写出驱动
程序(驱动程序½
是与硬件打交道的)
?很多公司招聘嵌入式½件人员时½要求熟悉
ARM
处理器,
将来若同
学到公司中从事嵌入式½
件开发,公司½会给½一本该设备的硬件规格说明书
(xxx Specification),½必须½看懂其
中的内存分布和端
口½用等最基本的说明(就像
x86
汇编一样)
,否则怎么设计½件。有些同学觉得嵌入式处
理 器课程较枯燥,这
主要是硬件课程½较½象的原因。还有同学对
ARM
汇编不感兴趣,以为嵌入式开发用
C
语言就足够了。其实不应仅
是将汇编语言½成一个程序设计语言,学汇编主要是为了掌握处理器工½原理的。一个不
熟悉汇编语言的人,怎
么½在该处理器写出最优的
C
语言代码。在嵌入式开发的一些关键部分,有时还必须写汇
编,如
Bootloader
等(可
½还包括
BSP)
。特别是在对速度有极高要求的场合(如
DSP
处理器的高速图像采集和图
像解压缩)
,目前还会用
到汇编写程序的,½管用到的机会相对
C
要小得多。½½在一个嵌入式公司工½时,在查看
描述原理的手册时,可
½很多½是用汇编描述的,这是因为很多硬件设计人员只会写或者喜欢用汇编描述,此时
½就必须看懂汇编程序
,否则½硬件人员可½就无法交流。很多嵌入式职½招聘时½要求熟悉汇编。
[小知识]
目前嵌入式处理器常见的有
ARM、
PowerPC、
MIPS、
Motorola 68K、
ColdFire (冷
火)等,½
ARM
占据了绝
对主流(有资料说手机中几乎
90%½是 ARM
处理器)
。ARM 是一个只卖知识产权的公司,
目前获得购买了
ARM CPU
授权许可的大公司很多,包括
Intel、Samsung、Amstel、Motorola、Philip
等,他们½在
专业培训嵌入式
ARM,linux,STM32、单片机,电子,PCB,FPGA,
安卓
www.edu118.com
QQ: 2685896890
ARM CPU
核的基础上进行
了一些外围扩展,½成自己的处理器(如
Samsung S3C2410,Motorola i.MXL9328
等处理
器½是采用
ARM 9
内核,
指令一级是相同的)
。而众多中小公司又购买了这些处理器,设计了各种各样的开发板,如
华恒等½内很多著名
嵌入式公司½生产基于
SamsungS3C2410
的开发板,
供最终用户½用或供教学实验。
ARM
这个食物链上,ARM 公司
是大鱼,Intel、Samsung 等公司是小鱼,而华恒等则是虾米,最终用户(我们这些要采购
嵌入式开发板的)则是
喂虾米的。Intel 早期生产的是½端
ARM(Strong ARM,相½于 ARM 7),现在½向主要生产
高端
ARM(即 Intel Xscale
处理器,属于
ARMv5
家族,
主要用在高端
PDA
上,如
HP
DELL
生产的
PDA
½采用
Intel
Xscale,价格较高)。目前应用
最多的是
ARM 7
ARM 9
两类处理器。
ARM 7
较便宜,可跑
uclinux(是一个不支持高
级内存管理功½的嵌入式
Linux
系统统)
、Vxworks、uc/os
II
等实时操½系统,½因处理器不带内存管理单元
MMU(无内
存分页和地址映射机制,
所以不½½用虚拟内存)
,所以不½跑
Windows CE,另外通用 Linux
中的某些内存管理功
½也不½用在
ARM 7
ARM 9
大½是一个带
MMU
功½的高端处理器,
可跑
WinCE
或通用
Linux
的大多数功½。
ARM7
ARM9
的区别是在与½
系结构上,前者是冯?诺伊曼结 构,后者是哈½结构——指令和数据总线是分开的。以上
是我的一点了解,可
½有不对的地方。我们学院有十几套
ARM 7
开发系统(采用
Samsung S3C44b0x
开发板,
主要用于嵌入式处理器
结构、实时操½系统等课程实验用)
,ARM
9
的系统½象也已经到了(采用的芯片我不知道
也没去问)
,还有
以前的十几套
MPC860
开发板(听说价格½很贵,很容易损坏)
,同学应爱护½用和珍惜这
样 的实验机会。
(2)
嵌入式操½系统类课程
除了
WinCE
的实时性稍差外,大多数嵌入式操½系统的实时性½很强,所以也可称为实时
操½系统
Real Time
Operating System.从事嵌入式的人至少须掌握一个嵌入式操½系统,这在嵌入式的所有技
术中是最为关键的
了。目前最重要的
RTOS
主要包括:
第一类、传统的经典
RTOS:最主要的便是 Vxworks
操½系统,以及其
Tornado
开发平台。
Vxworks
因出现稍早,
实时性很强(据说可在
1ms
内响应外部事件请求)
,并且内核可极微(据说最小可
8K)
,可
靠性较高等,所以
在北美,Vxworks 占据了嵌入式系统的多半 疆山。特别是在通信设备等实时性要求较高的
专业培训嵌入式
ARM,linux,STM32、单片机,电子,PCB,FPGA,
安卓
www.edu118.com
QQ: 2685896890
系统中,几乎非
Vxworks
莫属。
Vxworks
的很多概念和技术½和
Linux
很类似,
主要是
C
语言开发。
Bell-
alcatel、Lucent、
华为等通信企业在开发产品时,Vxworks 用得很多。½
Vxworks
因价格很高,所以一些小
公司或小产品中往往
用不 起。目前很多公司½在往嵌入式
Linux
½(听说华为目前正在这样½)
。½无论如½,
Vxworks
在一段
长时间内仍是不可动摇的。与
Vxworks
类似 的稍有名的实时操½系统还有
pSOS、QNX、
Nucleus
RTOS。
第二类、嵌入式
Linux
操½系统:Linux 的前途除½为服务器操½系统外,最成功的便是在
嵌入式领域的应用
,原因½然是免费、开源、支持½件多、呼拥者众,这样嵌入式产品成本会½。Linux 本身
不是一个为嵌入
式设计的操½系统,不是微内核的,并且实时性不强。
目前应用在嵌入式领域的
Linux
系统主要有两种:
一种是专为嵌入式设计的已被裁减过的
Linux
系统,
最常用的是
uClinux
不带
MMU
功½)
目前占较大应用
½额,可在
ARM7
上跑;另一种是跑在
ARM 9
上的,一般是将
Linux2.4.18
内核移植在其
上,可½用更多的
Linux
功½(½然
uClinux
更可跑在
ARM 9
上)
。很多人预测,嵌入式
Linux
预计将占嵌入式操
½系统的
50%以上½额,
非常重要。缺点是熟悉
Linux
的人太少,开发难度稍大。另外,目前我们 ½发现很多教材
和很多大学½以
ucOS/II
为教学用实时操½系统,这主要是由于
ucOS/II
较简单,且开源,非常适合入门者
学习实时操½系
统原理,½ 由于
ucOS/II
功½有限,实用用得较少。况且熟悉了
Linux
开发,不仅在嵌入
式领域有用,对
开发
Linux
应用½件,对加深操½系统的认识也有帮 助,可谓一举多得。据我所知,目前
Intel、Philip
½
在大搞
ARM+LINUX
的嵌入式开发,Fujitum 则是在自己的处理器上大搞
Linux
开发。目
前在嵌入式
Linux
领域
,以下几个方面的人特别难找,一是½将
Linux
移植到某个新型号的开发版上;二是½写
Linux
驱动程序的
人;
三是熟悉
Linux
内核裁减和优化的人。
不过
LINUX
有一个硬伤,
就是没有
WINDOWS
那样的友½方便美观
的交互界面,不然微½帝½早就守不½了。
第三类、
Windows CE
嵌入式操½系统:Microsoft 也看准了嵌入式的巨大市场,MS 永远
是最厉害的,WinC
E
出来只有几年时间,½目前已占据了很大市场½额,特别是在
PDA、手机、显示仪表等
界面要求较高或者
要求快速开发的场合,WinCE 目前已很流行(据说有一家卖工控机的公司板子卖得太½,
以至来不及为客
专业培训嵌入式
ARM,linux,STM32、单片机,电子,PCB,FPGA,
安卓
www.edu118.com
QQ: 2685896890
户裁减
WinCE)
。WinCE 目前主要为
4.2
版(.NET),开发平台主要为
WinCE Platform
Builder,有时也用 EVC
环境开发一些较上层的应用,由于
WinCE
开发½是大家熟悉的
VC++环境,所以我院学过
Windows
程序设计课
程的同 学½不会有多大难度,这也是
WinCE
容易被人们接受的原因,开发环境方便快速,
微½的强大技术
支持,WinCE 开发难度远½于嵌入式
Linux。对于急于完成,不想拿嵌入式 Linux
冒险的
开发场合,WinCE 是
最合适了(找嵌入式
Linux
的人可没那么½找的)
,毕竟公司不½像学生学习那样试试看,
保证开发成功更
重要。根据不同的侧重点,WinCE 还有两个特殊版本,一个是
MS PocketPC
操½系统专用
PDA
上(掌上电脑
,另一个是
MS SmartPhone
操½系统用于智½手机上(带
PDA
功½的手机)
,两者也½
属于
WinCE
平台。在
PDA
和手机市场上,除
WinCE
外,著名的
PDA
嵌入式操½系统还有
Palm OS(因出现很
早,很有名)
、Symbian
等,½在
WinCE
的强劲冲击下,Palm 和
Symbian
来日还½有多长?同学学过
VC++后再
WinCE,非常方便自然,
通过学习
WinCE
同样也可了解嵌入式½件的一般开发过程,
Linux
有惧怕心理的同学也
很合适。很显然,嵌
入式
Linux
永远不可½替代
WinCE,而且将来谁占½额大还很难讲,毕竟很多人更愿意接
MS
的平台,就像各
½政府½在大力推
LINUX
已½长时间,
½½½看到几个 在
PC
机上真正½用
LINUX
的用
户?据我观察,目前在嵌
入式平台上,LINUX 是叫得最响,½还是
WinCE
实际用得更多.嵌入式
LINUX
可½更多地是
一些有长远产品计划的
公司,为降½成本而进行长远考虑.WinCE 和多媒½(如
MPEG
技术)是微½亚洲工程院目前
做得较多的项目领域
之 一,现在社会很需要精通
WinCE
的人。
现在有
WINCE
的智½手机,
金山词霸、
WORD、
EXCEL、REGEDIT
等居然
½有
smartphone
版的,PC 上的
MP3、DOC
等居然在
download
时½可被自动½换成
smartphone
格式,很½的。
完全可用
Windows CE
自己开发一些需要的程序
download
到自己的手机上。现在市面销
PDA
智½手机火爆,
MS
总是财源滚滚。
总结关于嵌入式操½系统类课程,若½觉得自己功底较深且½钻研下去,则可去学嵌入式
Linux;若½觉得
自己
VC++功底较½且想短平快地学嵌入式开发,自学 WINCE
是非常½的选择。
(3)
嵌入式开发的相关领域
搞嵌入式若½熟悉嵌入式应用的一些主要领域,这样的人更受企业欢迎。主要的相关领域
包括:
专业培训嵌入式
ARM,linux,STM32、单片机,电子,PCB,FPGA,
安卓
www.edu118.com
QQ: 2685896890
展开预览

猜您喜欢

评论

登录/注册

意见反馈

求资源

回顶部

推荐内容

热门活动

热门器件

随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
×