嵌入式软件设计
嵌入式软件设计
1000+ 人选课
更新日期:2025/07/03
开课平台学堂在线
开课高校大连理工大学
开课教师赖晓晨申建建刘辉
学科专业工学计算机类
开课时间2025/01/15 - 2025/07/22
课程周期27 周
开课状态开课中
每周学时-
课程简介

嵌入式软件设计是计算机科学与技术/软件工程专业嵌入式方向的专业方向课,是一门实践性、技术性很强的重要课程。本课程的主要任务是全面介绍基于ARM/嵌入式Linux操作系统的GNU C语言程序设计思想、方法与技术。通过本课程的学习,使学生掌握嵌入式软件设计的基本流程、基本知识、开发环境、软件架构和编程技巧,为后续从事嵌入式学习以及未来从事嵌入式系统开发工作,打下一个良好的基础。

本课程共计14章,主要内容如下:

1、概述:嵌入式系统概念、嵌入式软件设计概述;

2、嵌入式C编程综述:基于ARM平台的C直接编程方法(无操作系统);

3、ARM C程序优化设计:通过反汇编分析如何在ARM平台进行高效的C程序设计;

4、Linux操作系统:Linux的基础知识和基本操作命令;

5、Linux编程工具链、Makefile:介绍vi、GCC、gdb等工具链组件,以及软件工程工具Makefile的撰写方法;

6、嵌入式软件平台构建:Bootloader、OS内核、嵌入式软件设计流程等;

7、文件目录和内存操作:嵌入式Linux平台下使用C语言进行文件、目录和内存编程;

8、进程与线程:嵌入式Linux平台下使用C语言进行进程控制和线程编程;

9、信号:嵌入式Linux平台下使用C语言进行信号的产生、发送、捕获等操作;

10、进程间通信:嵌入式Linux平台下使用C语言进行信号量、共享内存、消息队列等操作;

11、套接字:套接字的原理介绍,服务器端和客户端套接字程序设计方法;

12、驱动程序及实例:模块和驱动程序设计原理介绍及实例分析;

13、STM32编程方法:STM32处理器简介及编程方法介绍;

14、Proteus虚拟仿真:Proteus仿真工具介绍及编程方法介绍。

本课程资源完备,课程内容共计80个知识点,配套有80个短视频(每个10分钟左右)和80份多媒体课件,每章课后均由配套习题,课程所有的代码均调试通过。课程资源适用于32学时课程,每周4学时,也可由任课教师灵活调整为48学时。


课程大纲
第一章 概述
1.1 嵌入式系统概述
1.2 嵌入式软件设计概述
第二章 嵌入式C编程架构
2.1 软件架构
2.2 C的面向对象化
2.3 汉字处理
2.4 屏幕操作
2.5 输入事件
第三章 ARC C程序优化
3.1 优化思路
3.2 变量的数据类型选择
3.3 次数固定的循环优化
3.4 次数不定的循环优化
3.5 循环展开
3.6 指针别名
3.7 结构体
第四章 Linux操作系统
4.1 Linux简介
4.2 Linux的shell
4.3 Linux的基本操作
4.4 Linux的网络命令
第五章-1 Linux C编程工具链
5.1 工具链概述
5.2 编辑器vi
5.3 gcc简介
5.4 gcc的使用
5.5 gdb简介
第五章-2 Makefile
5.6 Makefile工作原理
5.7 Makefile实例分析
5.8 Makefile设计
5.9 Makefile综合实例
第六章 嵌入式软件平台构建
6.1 基于Linux的嵌入式平台
6.2 BootLoader
6.3 应用程序设计流程
第七章 文件目录和内存操作
7.1 文件的属性
7.2 文件操作
7.3 文件操作举例
7.4 目录操作
7.5 获取目录列表
7.6 内存映像
7.7 内存影响举例
第八章 进程与线程
8.1 进程创建
8.2 在进程中启动程序
8.3 等待进程结束
8.4 线程简介
8.5 多线程编程举例
8.6 线程同步
8.7 线程的属性
第九章 信号
9.1 信号简介
9.2 发送和捕获信号
9.3 更健壮的信号接口
9.4 信号集处理
第十章 进程间通信
10.1 有名管道
10.2 无名管道
10.3 信号量简介
10.4 信号量举例
10.5 共享内存简介
10.6 共享内存举例
10.7 消息队列简介
10.8 消息队列举例
第十一章 套接字
11.1 套接字简介
11.2 套接字举例
11.3 套接字接口函数
11.4 网络套接字
11.5 访问系统服务
11.6 多客户
第十二章-1 模块与驱动程序
12.1 内核模块简介
12.2 内核模块设计
12.3 Linux设备驱动程序简介
12.4 驱动程序的数据结构
12.5 虚拟字符设备驱动程序实例
第十二章-2 驱动程序实例
12.6 蜂鸣器驱动程序
12.7 中断按键驱动程序
12.8 键盘驱动程序
第十三章 STM32编程方法
13.1 STM32简介
13.2 STM32常用片内资源
13.3 GPIO编程方法--寄存器方式
13.4 LED流水灯实例--GPIO寄存器方式
13.5 GPIO编程方法--标准库方式
13.6 LED灯闪烁实例--GPIO标准库方式
第十四章 嵌入式软件仿真
14.1 Proteus简介
14.2 流水灯仿真实例
14.3 通用定时器仿真
14.4 外部中断仿真
期末考试