听哥一句劝,按这套 嵌入式 的课程内容和课程体系 去 学习
一、嵌入式的难点 嵌入式开发比互联网软开(比 如 Jav a 后端)还是要难一些的,比 如 Jav a 开发,基本也都是用户态的东西,但嵌入式很多东西都深入到了内核态。 二、总体学习思路 总体来说,还是可以把嵌入式学习分为三个大的阶段: 首先基础学习阶段,这就包括通用编程基础 ( C 语言、数据结 构 / 算法、操作系统、计网、计组 、 Linu x 系统基础)和基本的硬件基础,扎实地掌握这两大基础,是后续持续发展和不断进步的动力源泉。 其次就是嵌入式应用编程阶段,或者说系统平台编程阶段。因为一般会以特定的嵌入式平台和特定的嵌入式操作系统为依托,熟悉这个系统平台上的编程方法和流程。以常见 的 ARM+Linu x 平台为例,需要掌握从内存管理到多任务编程、文 件 I/ O 、网络编程,甚至图形化界面编程等几个大的方面。 最后就是深入嵌入式底层开发阶段,最常见的就是内核开发和驱动开发,这些统属于内核态开发范畴,所以需要对操作系统内部机制有所涉猎和理解,在此基础上需要掌握从系统移植到内核开发、驱动开发的各个细节,这是成神之路。
文章相对比较长,字数比较多,大家可以先打开头像关注我,之后慢慢看 , // / 插播一条:我自己在今年年初录制了一套还比较系统的入门单片机教程,想要的同学找我拿就行了免費的,私信我就可以 哦 ~ 点我头像左下角黑色字体加我也能领取哦。最近比较闲,带做毕设,带学生参加省级或以上比 赛 /// 三、嵌入式应用领域 工控、仪器仪表、消费电子 、 Lo T 等等。 四、嵌入式方向 纯硬件:硬件电路 、 PC B 、芯片等等。 软硬结合:不带操作系统:单片机开发和嵌入式裸机开发 带操作系统:用户态:应用程序开发和内核态:内核开 发 + 驱动开发 五、嵌入式相关岗位 嵌入 式 Linu x 工程师、嵌入式应用工程师、嵌入式系统工程师 嵌入式内核工程师、嵌入式驱动工程师 六、嵌入式知识学习 C 语言 、 C+ + 、数据结构与算法、操作系统原理、操作系统原理、计算机原理、单片机原理、 微机原理 、 Linu x 操作系统、嵌入式硬件基础 七、常用开发工具 Linu x 操作系统、常 见 Linu x 命令和实用工具 、 Git/SV N 、 shel l 、 Vi m 、 GC C 、 Makefil e 、 GD B 、交叉编译工具 、 SS h 、 FT P 等等。 八、嵌入式典型平台 体系结构:概念和体系结构、工作模式、指令集、寻址方式、寄存器、内存管理单元、常见接口和控制器、通用编程模型 、 GPI O 、中断、定时器 、 A/D 转换 九、常用协议 UAR T 、 II C 、 SP I 、 CA N 、 US B 、局域互联网 络 LI N 、 TCP/IP 十、无线模块 蓝牙 、 WIF I 、 ZigBe e 、 RF 十一、传感器 温度、湿度、光敏、压力、触摸感应、红外、多轴传感器 、 GP S 、显示模块 十二、嵌入式应用层开发 内存管 理 / 使用:内存分配、内存管理 多任 务 / 编程:进程、线程 文 件 I/ O 编程:文件 、 I/O 网络编程 : TC P 、 I P 、 UD P 、 Socket 图形化界面编程 : Qt 十三、嵌入式底层开发 可运行系统 : BootLoade r 、 Linu x 内核、根文件系统 Linu x 内核编程 Linu x 驱动开发:字符设备开发、块设备开发、网络设备开发、总线设备开发
