打印
[华山论剑]

如何学习嵌入式系统(硬件篇)

[复制链接]
2278|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jcky001|  楼主 | 2022-11-11 11:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这段时间很多关注者问起怎样学习嵌入式,对于一个刚开始接触嵌入式的朋友来说,这的确是个问题。在这里笔者就给大家讲讲怎样利用【IT指路灯】来学习嵌入式系统。
学习嵌入式之前我们需要了解什么是嵌入式。
(官方说法)嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分。国内普遍认同的嵌入式系统定义为:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。举些例子,手机、电子时钟、智能报警装置、自动监控器、出租车计费器等等都属于嵌入式系统。
嵌入式系统是硬件和软件的综合体,这里来看看嵌入式系统的具体框图,以手机为例吧。

(硬件篇)
1、基本电路知识
嵌入式硬件也是需要许多电路搭建起来的,学习嵌入式之前必须对电路基本知识有一定基础。了解常用的基本器件,基本仪器使用,具有一定的电路分析能力。这样你才能看得懂嵌入式系统的硬件电路图,才能为后续开发奠定基础。
具体操作:回复CD查看主菜单,再回复109进入视频下载菜单,下载模拟电路教学视频,再回复104进入硬件技术。学习元器件基础、常用电路等知识。

2、基本语言知识
嵌入式驱动程序编写需要用到C语言,因此在学习嵌入式之前还必须熟练C语言基本语法,并能编写些普通程序代码。这里需要提醒,在学习C语言时养成规范的编程习惯,如添加备注、注意排版等,这将对以后的程序准确性有很大影响。
具体操作:回复CD查看主菜单,再回复109进入视频下载菜单,并下载C语言教学视频,再回复105进入软件技术。学习驱动基础等知识。

3、单片机(51单片机)
初学者首次接触嵌入式处理器一般都是51单片机,51单片机入门相对简单,并且通用度比较高,可以购买开发板动手学习。如学习编写流水灯、按键扫描、数码管、液晶显示、AD/DA采样等简单程序。
具体操作:回复CD查看主菜单,再回复109进入视频下载菜单,并下载单片机教学视频,跟着视频一起动手操作。

4、基于单片机的电子系统自设计
有了前面的学习经历,可自己脱离开发板,自己设计并绘制电路图,自己焊接或者生产PCB板,设计小型的电子系统。如设计一个寻线小车,温度采集、时钟显示等嵌入式系统。
具体操作:回复CD查看主菜单,再回复109下载Protel视频教程,学习绘制电路板,再回复106进入嵌入式系统菜单,学习基于单片机的电子系统设计。

5、430、STM32、Cortex-M3(可选)
430单片机、STM32以及Cortex-M3处理器作为学习嵌入式操作系统前的过渡阶段,各位朋友可以自行选择学习。为什么需要用他们来过渡呢?
因为51单片机内部寄存器很少,编写程序时不需要对GPIO口进行配置,默认就已经是输入或者输出。而当处理器功能强大之后,往往一个GPIO可实现多种功能,如USB功能、IIC功能、UART功能。在使用这种GPIO时就必须先进行配置,才能满足需求。因此在学习后面操作系统之前,有时间的同学可以从这些单片机过渡,这样不至于后续学习摸不到头脑。
具体操作:回复CD查看主菜单,再回复109下载430/STM32单片机视频。

6、ARM9/ARM11裸机学习
裸机程序编写,即不带操作系统的程序编写,其作用和上面430单片机的作用相似,目地就是为了熟悉ARM架构,对ARM寄存器有深入的了解,这将对以后的驱动程序编写带来很大的方便。同样,裸机程序学习可像51单片机一样,购买开发板,在开发板上进行一些中断、GPIO、UART的操作。
具体操作:回复CD查看主菜单,再回复106进入嵌入式系统菜单,学习嵌入式基本架构学习等。当然,也可以直接给我们留言。

7、Linux系统移植&BOOTLOADER
嵌入式系统学习特别注意又特别难的地方就是Linux系统移植,对于系统的移植、系统的裁剪是学习的难点。搭建嵌入式操作系统的开发环境,即交叉编译环境也比较麻烦,因此在学习过程中一定要一步一步动手实践操作。
BOOTLOADER是操作系统启动前,进行硬件初始化以及搭建操作系统运行环境的一段代码,有点类似于PC机的BIOS程序。BOOTLOADER主要与硬件关系很大,需对处理器寄存器相当的熟悉,因此在初期学习的时候可以参考U-boot等学习。
具体操作:回复CD查看主菜单,再回复109下载嵌入式驱动视频,再回复106进入嵌入式系统菜单学习系统移植以及BOOTLOADER等。

8、基于Linux的底层驱动编写
上面学习了Linux系统移植,就可以编写底层驱动程序了,通过交叉编译环境将驱动程序编译并下载到目标板上,并且编写一段小测试程序验证驱动的正确性。如在Linux下实现流水灯,实现按键功能。
具体操作:回复CD查看主菜单,再回复109下载嵌入式驱动视频,再回复106进入嵌入式系统菜单学习驱动程序知识。

9、基于操作系统的电子设计
学习到这一步,就可以称得上嵌入式硬件高手了,因为你已经具备独自设计嵌入式系统的能力了,现在就来小试牛刀。可以设计一些基于操作系统的摄像头驱动、按键驱动、红外驱动等。
具体操作:回复CD查看主菜单,再回复109下载嵌入式驱动视频,再回复106进入嵌入式系统菜单学习基于操作系统的电子设计。

使用特权

评论回复
沙发
cdb1235| | 2022-11-11 13:23 | 只看该作者
哥什么时候整理发一下软件篇

使用特权

评论回复
板凳
tpgf| | 2022-12-6 11:50 | 只看该作者
学习嵌入式系统需要过硬的模拟电路的基本功吗

使用特权

评论回复
地板
nawu| | 2022-12-6 12:09 | 只看该作者
从简单的开始学习  先裸奔 再跑系统 比较容易上手

使用特权

评论回复
5
aoyi| | 2022-12-6 13:24 | 只看该作者
如果只掌握了C语言编程 可以深入嵌入式系统的学习中吗

使用特权

评论回复
6
zljiu| | 2022-12-6 13:58 | 只看该作者
其实用什么单片机都行 关键是最基本的c语言得看懂 得能踏实下来看手册

使用特权

评论回复
7
gwsan| | 2022-12-6 14:20 | 只看该作者
说嵌入式系统是计算机系统 我觉得太片面了

使用特权

评论回复
8
tfqi| | 2022-12-6 14:43 | 只看该作者
现在是个东西就是嵌入式 都没有不是嵌入式系统的了

使用特权

评论回复
9
weifeng90| | 2022-12-6 19:22 | 只看该作者
一朝入行深似海

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1506

主题

4536

帖子

6

粉丝