找回密码
 注册
关于网站域名变更的通知
查看: 562|回复: 3
打印 上一主题 下一主题

ARM初学者学习ARM的步骤

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-5-6 10:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x

8 z5 ~! r* L% j% g$ g很多人学完单片机就想学ARM,但不知如何去学~现在列出一下学习这方面的步骤-----基于linux系统的学习步骤如下:(一步步来哦:
, j* S! x3 ]6 C其实这也只是个基础,以后实际做项目了还要去学很多
" t7 C' N. R  S( E0 L/ Q* B& W4 b3 M$ P- [
1、Linux 基础; ]; W  g3 X4 [1 t/ E$ P
9 [( o9 B+ M0 l& v) }# O! j
安装Linux操作系统
. v% v1 a, J/ g# MLinux文件系统 : k" L2 U' n# L1 S2 B
Linux常用命令
, F. [& o* R; r+ h$ uLinux启动过程详解 " \2 l$ p$ |* U6 r. i
熟悉Linux服务 能够独立安装Linux操作系统 5 I% [" m: w2 X/ s" @
能够熟练使用Linux系统的基本命令 ) R/ I  _: q! A  e7 y
认识Linux系统的常用服务 安装Linux操作系统
- Q% C+ F8 N, B) \% ]  S$ a1 DLinux基本命令实践 / w+ b$ C4 p) L: z
设置Linux环境变量
1 R& D0 p& m$ }% r! ]: h! W定制Linux的服务 Shell 编程基础使用vi编辑文件 . Y& Y( O0 [5 e
使用Emacs编辑文件
3 q: h, F4 g- o  C8 z1 A* L使用其他编辑器! T. }% ^, v3 S
2、Shell 编程基础
, t$ P1 c( ~* w0 x( c4 UShell简介: ]+ w: ]: Z- T5 U
认识后台程序
  o7 T7 g* f3 I) fBash编程熟悉Linux系统下的编辑环境 9 }& j3 I  T. A% |) t
熟悉Linux下的各种Shell 3 ~3 f, b8 x9 w- y5 I1 s) y
熟练进行shell编程熟悉vi基本操作 4 E* X8 |. s  Z3 p# e6 o' |
熟悉Emacs的基本操作 9 w( E  s$ H" Q! T" j. x
比较不同shell的区别 ( ?( V0 b  w. V* z7 P6 q1 l& X
编写一个测试服务器是否连通的shell脚本程序 6 L7 u5 ~2 b* k/ L% j8 S8 u/ i# }+ P% }
编写一个查看进程是否存在的shell脚本程序 8 v' h5 E* R/ m9 B
编写一个带有循环语句的shell脚本程序
' n3 C6 W- I1 l/ M: \' T0 |3、Linux 下的 C 编程基础
+ K) M" q5 d; D1 rlinux C语言环境概述 2 U7 e, n6 K% ~# i
Gcc使用方法 ) @* s. D- S; J
Gdb调试技术 # ]' z: W6 k6 H- Y0 @
Autoconf
6 n+ L$ J% b* ^! i% XAutomake
: W8 z) O; K$ t7 m0 A5 J. Q1 wMakefile
" _0 ?& s) }  S- M! H代码优化 熟悉Linux系统下的开发环境5 W! E- ?5 g/ v; U! V; r8 {/ k
熟悉Gcc编译器   b2 o7 w" @5 n1 x( k) [
熟悉Makefile规则编写Hello,World程序 / u3 _4 j1 u4 P% d! G
使用 make命令编译程序
/ J. P, `0 Q1 q9 s编写带有一个循环的程序
: @, l0 U, b: h7 |0 ^2 X+ I调试一个有问题的程序
! N3 B5 V! `2 {7 F! b+ u9 F2 ]4、嵌入式系统开发基) I) h! o! q7 k: k% |" d' S5 G" g
嵌入式系统概述 ; b1 z- G9 U# v
交叉编译
) S, y/ d, ~, {) j配置TFTP服务* S/ a! J) L# y7 ?; Q4 t# Q  L2 k
配置NFS服务
9 I7 y" ^. l7 Q" l; @' F下载Bootloader和内核
% D8 ^( p, o2 E2 p) ]嵌入式Linux应用软件开发流程
4 W) r1 F- q4 {熟悉嵌入式系统概念以及开发流程 0 G) i6 u2 E4 q  w8 ]
建立嵌入式系统开发环境制作cross_gcc工具链
" U3 J+ F+ _3 m# b7 T2 G编译并下载U-boot& }# A* z9 k* ~1 y0 ?$ F4 ~
编译并下载Linux内核 # Z- `* ~4 A6 ]0 D$ z6 z0 P
编译并下载Linux应用程序
4 e) G* }: B2 X% g7 U4、嵌入式系统移植/ G5 k% ?4 W* l& ]8 [/ z
Linux内核代码
* W0 l2 ~2 T1 n; g. ^平台相关代码分析
- ~9 \( d2 E" N( uARM平台介绍
: _; y, @; l7 w$ S5 t平台移植的关键技术
9 I6 ]1 f) v$ t3 P  p6 J7 ?4 ?. x移植Linux内核到 ARM平台 了解移植的概念
6 h% K8 K3 L# S& {; n能够移植Linux内核移植Linux2.6内核到 ARM9开发板) o" }; `5 U4 J
5、嵌入式 Linux 下串口通信% s0 L' p( ?$ N# E! a
串行I/O的基本概念 7 |' c4 L" t; e7 u( o$ ]
嵌入式Linux应用软件开发流程
& f$ T' q2 _2 e% [3 A( BLinux系统的文件和设备
/ d' W- f( c. B, w# x* Z" P1 T与文件相关的系统调用   N8 \  v1 `. f, f- I& j# E8 {
配置超级终端和MiniCOM 能够熟悉进行串口通信 0 i, }3 y: q/ t+ x
熟悉文件I/O 编写串口通信程序
+ b# L3 J) `: f6 r2 Y! m编写多串口通信程序4 P! V" ~2 N* ^% Z4 \* G/ z! F
6、嵌入式系统中多进程程序设计2 [* T9 G) m1 ^2 x3 J" Y
Linux系统进程概述
! x+ p5 n, \8 T" a; g嵌入式系统的进程特点 4 H& ], V+ Y+ o" j8 |
进程操作 7 A0 x' C# k5 S, @+ c
守护进程 1 o9 Z2 Y! N  @
相关的系统调用了解Linux系统中进程的概念
7 o$ K3 q1 k7 X, \- K' t' ?能够编写多进程程序编写多进程程序 / M+ L1 E) e& n$ C* m3 n& I
编写一个守护进程程序
0 Z1 s# t1 o- p0 Osleep系统调用任务管理、同步与通信 Linux任务概述1 _9 {* V! b/ w5 h) o" g+ I
任务调度
+ w" i' S0 |/ n+ }5 z' [. i管道 ( z! B5 r+ Y# V! V
信号 & g/ f: I: \: e; c8 K
共享内存
8 q, K. C* f; x9 m任务管理 API 了解Linux系统任务管理机制 ( e/ |5 q' E' p. R  Q$ K
熟悉进程间通信的几种方式 3 f8 J( D" g  @4 j& ?5 U4 r5 f$ _
熟悉嵌入式Linux中的任务间同步与通信
8 A# s9 ~! J/ W. l8 r编写一个简单的管道程序实现文件传输 " }& I$ `! [* c
编写一个使用共享内存的程序
5 n) r& l! G3 L; P5 L( m  i7、嵌入式系统中多线程程序设计3 s, b# I: t) t# m, ]
线程的基础知识
! w0 |' N! E, t多线程编程方法
+ g- L, ^4 y) x) W5 J4 S, i9 J线程应用中的同步问题了解线程的概念 & r+ W3 G. b. y7 ]# k; N" j
能够编写简单的多线程程序编写一个多线程程序* ]+ ^0 @1 ]+ z% _& E( A! N$ S( P  Q
8、嵌入式 Linux 网络编程& z4 }5 K! c: T* Z5 w
网络基础知识 3 p! y' @3 N# G" \: j
嵌入式Linux中TCP/IP网络结构 4 p; t" O, x6 F$ N/ ?
socket 编程
# J4 Y1 D6 H6 W( @9 ]" p% q常用 API函数 " c5 @  n0 h8 n* d
分析Ping命令的实现
0 Z0 w! B- @% n6 C- M, z基本UDP套接口编程 4 C$ v, H+ e6 d% ~4 N
许可证管理
8 ~# N0 l8 r4 V. `* V  LPPP协议
4 T1 t4 m; Z' A1 O/ w9 XGPRS 了解嵌入式Linux网络体系结构
" m# x# r4 m8 c能够进行嵌入式Linux环境下的socket 编程
3 E; }" D' P  ~: B6 ]) Q熟悉UDP协议、PPP协议
; f$ c: {" d3 ], s# U. V2 b; Z- x熟悉GPRS 使用socket 编写代理服务器
- W2 u9 D6 a+ }+ {8 i使用socket 编写路由器
% D# r7 E# O9 P编写许可证服务器 , @) ^* r' C) |7 E
指出TCP和UDP的优缺点
+ `6 T3 M. I) t( W" ]& i# G编写一个web服务器 , m0 {& R: |; Y3 \+ \8 X
编写一个运行在 ARM平台的网络播放器
/ ~% [% t, r7 [; `+ }: f9、GUI 程序开发
* r# }  ]" F% X2 Y- ]( M0 [GUI基础
& |6 _  D9 P5 u" `, k嵌入系统GUI类型
9 ]# Z9 I, m* E  y( d% N编译QT   r1 f1 K0 ]9 O) \0 E3 ]
进行QT开发熟悉嵌入式系统常用的GUI2 E. ^" q+ x# {( r
能够进行QT编程使用QT编写“Hello,World”程序
5 |9 [: V& P4 j% z8 m4 V' d调试一个加入信号/槽的实例
" R2 k  o8 `, S1 K7 t# U通过重载QWidget 类方法处理事件3 E3 w: e& X4 X1 C, O7 I
10、Linux 字符设备驱动程序
! ~* ?! K9 }% h3 @4 S设备驱动程序基础知识
8 y+ B% W2 r# V' M& ]Linux系统的模块
  J: ^" q. B9 w1 ~. U字符设备驱动分析
; t# F" s  j' P, |- p9 Q  Ufs_operation结构 & V. r( i4 ?6 `- a% m& @
加载驱动程序了解设备驱动程序的概念
4 O) T2 H9 W6 z9 I4 i6 t了解Linux字符设备驱动程序结构
: X' w% _* t, B1 X4 ^1 N能够编写字符设备驱动程序编写Skull驱动 * @! J# s7 b/ ]/ P; n8 T3 C' B  v
编写键盘驱动 4 B" v  I' S! x1 q& ?
编写I/O驱动
$ T& U0 _# J: R& \! w" m分析一个看门狗驱动程序 2 N* S) P5 x9 ~& Z8 g& s
对比Linux2.6内核与2.4内核中字符设备驱动的不同
9 m. ?1 d5 g6 {Linux 块设备驱动程序块设备驱动程序工作原理 $ b6 v* g) }5 M! C
典型的块设备驱动程序分析 / I. c5 W  i7 d6 H4 l7 U
块设备的读写请求队列了解Linux块设备驱动程序结构 5 H7 r- v1 R5 O9 e  `" X
能够编写简单的块设备驱动程序比较字符设备与块设备的异同
, C5 ^& L0 H/ k9 F: x编写MMC卡驱动程序 , A+ T$ h1 h$ w
分析一个文件系统 / Y2 M( Y! ?1 w2 e) z5 L) B7 I6 W
对比Linux2.6内核与2.4内核中块设备驱动的不同" a2 r! J& J% ?# s+ `
11、文件系统
' A$ S3 e% t9 d) j' X# ?; S" k虚拟文件系统 : ?$ z6 ~# u% k, x
文件系统的建立
: R! e+ s$ K8 i2 m6 S, G( @ramfs内存文件系统 % @3 }% _7 a0 ^4 N* _/ I
proc文件系统
# y' [: x0 v. Q# N6 p. _devfs 文件系统
& O. S* Y+ Q8 c' w9 i9 o  xMTD技术简介
0 ^! t2 g7 H* B! ?% m4 G- I) JMTD块设备初始化 " L1 \7 E  G2 m( _7 U1 ?
MTD块设备的读写操作了解Linux系统的文件系统 5 t) g; ?  ]# C  h: q8 y
了解嵌入式Linux的文件系统 2 }$ _7 N  U, g7 d
了解MTD技术 % s! g0 ~0 }5 E! M
能够编写简单的文件系统为 ARM9开发板添加 MTD支持 5 ?! K2 V$ T3 v# S+ O$ e. U
移植JFFS2文件系统
$ b( {& L. `$ h, B% l通过proc文件系统修改操作系统参数
4 ^0 R/ P4 _8 Z& C) d) n分析romfs 文件系统源代码 3 m  V. x2 c, l7 p0 }
创建一个cramfs 文件系统

该用户从未签到

2#
发表于 2021-5-6 13:20 | 只看该作者
ARM初学者学习ARM的步骤

该用户从未签到

3#
发表于 2021-5-6 15:28 | 只看该作者
虚拟文件系统,文件系统的建立
: o9 l- X3 v' R* t+ J9 @

该用户从未签到

4#
发表于 2021-5-6 18:28 | 只看该作者
掌握好基础知识
* P* R8 x& f5 [
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-24 07:13 , Processed in 0.171875 second(s), 24 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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