《嵌入式开发》教学大纲

《嵌入式开发》教学大纲

2023年7月26日发(作者:)

《嵌入式开发》教学大纲

课程编码:

课程名称:嵌入式开发

学时/学分:72/4

先修课程:C语言程序设计、数字逻辑、Linux操作系统、计算机网络、操作系统、计算机组成原理、微机原理与接口技术、汇编语言

适用专业:计算机科学与技术

开课教研室:网络教研室

一、课程性质与任务

1.课程性质:专业方向必修课

2.课程目的:了解嵌入式系统基本要素和最新知识概念,掌握嵌入式系统软硬件设计原理和方法,实践嵌入式系统项目开发基本流程,掌握嵌入式系统开发方法。通过学习,使学生深刻理解嵌入式系统的基本要素和最新设计理念、嵌入式操作系统、软硬件协同设计的基本方法;实践嵌入式系统设计流程;具备良好的嵌入式系统工程开发能力。通过本课程的学习,具备一定的分析和解决问题的能力;激起学生们的好奇心和创造力。

二、课程教学基本要求

1.嵌入式相关基础理论知识的理解与掌握

2.Linux C编程、Linux网络编程

3.基于SkyEye的嵌入式系统开发

4.驱动程序设计的框架以及关键点

5.进一步分析 Linux 0.11 内核 源代码,提升自己对操作系统原理的理解水平,对操作系统有一个总体的把握和认知

三、课程教学内容

第1章 嵌入式系统开发技术基础

主要知识点:

※ 1.1嵌入式系统概述

※ 1.2嵌入式处理器

※ 1.3嵌入式操作系统

※ 1.4嵌入式系统的结构、开发流程、开发要点

1

第2章 嵌入式系统开发环境

主要知识点:

2.1 嵌入式系统开发环境简介

2.2 OK2440-II开发平台介绍

2.2.1 OK2440-II开发板构成

2.2.2 OK2440-II开发板硬件资源

※ 2.2.3 实例—OK2440-II开发板的基本使用

2.2.4 实例—引导Windows CE

2.2.5 实例—引导Linux

2.3 交叉编译的基本知识

2.3.1 ARM交叉编译工具链

2.3.2 嵌入式软件开发流程

※ 2.4 实例—创建交叉编译环境

※ 2.5 实例—QEMU、GDB的安装及简单使用2.5.1 QEMU的安装

2.5.2 GDB的安装

※ 2.5.3 运行ARM汇编程序

※ 2.5.4 调试ARM汇编程序

2.6 SkyEye的安装及简单使用

2.6.1 SkyEye简介

※ 2.6.2 实例—安装SkyEye-1.2.6

※ 2.6.2 实例—使用SkyEye-1.2.6

※ 2.7 实例—TFTP服务器的搭建

※ 2.8 实例—NFS服务器的搭建

第3章 嵌入式软件开发基础

主要知识点:

3.1 Linux C语言程序设计基础知识

3.1.1 程序安装目录、头文件、库文件

3.1.2 gcc编译器

※ 3.1.3 实例—使用gcc编译器

3.1.4 GNU make工具和Makefile文件

※ 3.1.5 实例—使用make及Makefile文件

2

3.1.6 glibc

3.1.7 gdb

※ 3.1.8 实例—使用gdb调试器

3.1.9 Binutils工具包

3.2 GNU ARM汇编语法

3.5 ARM汇编语言程序设计

3.5.1 ARM汇编伪指令介绍

3.5.2 模块化程序设计

3.6 混合语言编程

第4章 引导装载程序BootLoader的移植

主要知识点:

4.1 BootLoader

4.1.1 BootLoader概述

4.1.2 BootLoader的工作流程

4.2 常见BootLoader介绍

4.3 U-Boot-1.1.4源代码分析

4.3.1 U-Boot的代码结构

4.3.2 U-Boot的启动流程

4.3.3 cpu/arm920t/start.S

4.3.4 lowlevel_init.S

4.3.5 lib_arm/board.c

4.3.6 init_sequence[]

4.3.7 common/main.c

4.4 移植U-Boot-1.1.4到S3C2440A平台

4.4.1 U-Boot的配置与编译

※ 4.4.2 实例—移植U-Boot到S3C2440A平台

※ 4.4.3 实例—烧写U-Boot到Flash

4.5 实例—使用U-Boot

4.5.1 U-Boot的常用命令

4.5.2 U-Boot的环境变量

4.5.3 U-Boot与内核的关系

4.5.4 添加U-Boot命令

※ 4.6 实例—基于skyeye的移植三部曲之一:Bootloader

3

第5章 Linux在ARM平台的移植

主要知识点:

5.1 Linux内核

5.1.1 Linux内核简介

5.1.2 Linux内核源代码结构

5.1.3 Linux内核的配置

※ 5.1.4 Makefile、Kconfig与.config的关系

5.2 Linux内核的移植

※ 5.3 zImage内核映像的生成过程

5.3.1 zImage的构成

5.3.2 zImage的解压过程

※ 5.4 实例—基于skyeye的移植三部曲之二:Kernel

5.5 Linux内核启动流程分析

第6章 根文件系统

主要知识点:

6.1嵌入式Linux的文件系统

6.2Linux系统的引导过程

※ 6.3建立根文件系统

※ 6.4实例—基于skyeye的移植三部曲之三:RootFS

第7章 嵌入式LinUX设备驱动程序开发

7.1 Linux设备驱动程序的相关知识

7.2 Linux设备驱动程序设计

※ 7.2.1 实例—动态加载模块

※ 7.2.2 实例—简单字符驱动程序

第8章 嵌入式Linux的图形用户接口

主要知识点:

8.1嵌入式Linux中的GUI简介

8.2Qt/Embedded

8.3Microwindows

8.4MiniGUI

4

8.5OpenGUI

Linux C编程一站式学习II. C语言本质

主要知识点:

14. 计算机中数的表示

15. 数据类型详解

16. 运算符详解

17. 计算机体系结构基础

※ 18. x86汇编程序基础

※ 19. 汇编与C之间的关系

※ 20. 链接详解

※ 21. 预处理

22. Makefile基础

※ 23. 指针

※ 24. 函数接口

※ 25. C标准库

Linux C编程一站式学习 III. Linux系统编程

主要知识点:

※ 28. 文件与I/O

※ 29. 文件系统

※ 30. 进程

※ 31. Shell脚本

※ 32. 正则表达式

※ 33. 信号

※ 34. 终端、作业控制与守护进程

※ 35. 线程

※ 36. TCP/IP协议基础

※ 37. socket编程

四、学时分配表

理论部分:

章序

1

内容

嵌入式系统开发技术基础

课时

2

备注

5 2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

嵌入式系统开发环境

嵌入式软件开发基础

计算机中数的表示、数据类型详解、运算符详解

计算机体系结构基础

x86汇编程序基础

汇编与C之间的关系

链接详解

预处理

Makefile基础

指针

函数接口

C标准库

引导装载程序BootLoader的移植

Linux在ARM平台的移植

根文件系统

嵌入式Linux设备驱动程序开发

嵌入式Linux的图形用户接口

文件与I/O

文件系统

进程

Shell脚本、正则表达式

信号

终端、作业控制与守护进程

线程、TCP/IP协议基础

socket编程

2

2

1

1

4

2

2

1

1

4

4

4

2

2

2

2

0

4

2

2

1

1

3

1

2

五、教材及参考书

教材:《嵌入式系统开发实用教程》 主编:张同光

出版社:清华大学出版社,2013

《Linux C编程一站式学习》 主编:宋劲杉

出版社:电子工业出版社,2009

参考书:

6 1.(美)施部·克·威(V,S,K). 嵌入式系统原理、设计及开发.西安:清华大学出版社,2012

2.周立功. ARM嵌入式系统基础教程(第2版).北京:北京航空航天大学出版社,2008.9

3.凌明. 嵌入式系统高级C语言编程.北京:北京航空航天大学出版社,2011

主要学习资源:

(1)/

(2)/

(3)/

(4)/

等等

审定:

7

发布者:admin,转转请注明出处:http://www.yc00.com/news/1690378062a340484.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信