《嵌入式系统设计》实验教学大纲
课程代码:TELE2131 | 课程学分:2.5 |
课程名称(中/英):嵌入式系统设计/Embedded System Design | |
课程学时:54 | 实验学时:27 |
适用专业:电子信息工程、通信工程、电子科学与技术等专业 | |
先修课程:微机原理与接口技术、数字电路、C语言程序设计 | |
开课单位:电子信息学院 | 课程负责人:邓晶 |
实验室名称:电工电子实验教学中心嵌入式系统实验室 |
一、课程简介
课程性质:嵌入式系统设计是电子信息类专业一门重要的专业选修课程。本课程是一门实践性很强的课程,课程以理论教学与实验教学并重的方式,培养学生嵌入式技术方面的软硬件设计能力,并通过该课程的学习扩大学生知识面,为今后的研究和技术工作打下坚实的基础。
教学目标:嵌入式系统设计以ST公司的32位基于ARM Cortex﹣M3内核的STM32单片机为例,介绍嵌入式系统的定义、特点和发展;ARM Cortex﹣M3体系结构;STM32程序设计与片上外围资源等,通过理论学习、实验、综合设计等环节,使学生了解嵌入式系统的发展状况和应用领域,掌握嵌入式系统的硬件设计、软件设计和系统综合设计能力,培养学生利用本课程分析和解决实际问题的能力,为今后从事嵌入式系统方面的应用与研究打下基础。本课程的具体教学目标如下:
1、掌握嵌入式系统的基础知识;学习ARM Cortex﹣M3体系结构;学习STM32 MCU的结构、STM32最小系统、片内外设资源和外部引脚,学习嵌入式系统硬件分析和设计方法;【1-2】
2、学习STM32 MCU的软件开发技术,掌握利用嵌入式C语言设计STM32程序的方法;【1-2】
3、学习嵌入式系统硬件设计技术,掌握STM32最小系统硬件和外围扩展单元设计,并能够综合运用嵌入式系统软件和硬件设计技术解决实际工程问题,并能够根据需求设计基于STM32 MCU的嵌入式系统的解决方案;【3-1】
4、学习ARM Keil集成开发环境的使用方法,熟练使用STM32 MCU开发板,并在此基础上完成规定的必修实验,设计综合性实验。【5-2】
二、课程目标与毕业要求的对应关系
毕业要求 | 指标点 | 课程目标 |
1、工程知识 | 1-2能针对电子信息领域的具体对象建立数学模型并求解,并具备对工程问题进行软硬件分析与设计的基本能力。 | 教学目标1、2 |
3、设计/开发解决方案 | 3-1能利用专业知识,根据给定的设计指标,设计电子信息领域的单元或过程。 | 教学目标3 |
5、使用现代工具 | 5-2能够选择与使用恰当的仪器、信息资源、工程工具和专业模拟软件,对复杂工程问题进行分析,计算与设计。 | 教学目标4 |
三、实验项目及学时分配
序号 | 实验项目 名称 | 目的要求 | 学时 分配 | 实验 类型 | 每组 人数 | 必修/ 选修 |
1 | STM32程序的编写、调试和分析 | 熟悉STM32教学开发板,熟悉STM32基本固件库的应用,熟悉STM32软件开发环境,用C语言编写并调试STM32程序。 | 3 | 验证性 | 1 | 必修 |
2 | GPIO端口控制流水灯闪烁 | 实现PA0~PA3所接4个LED指示灯闪烁。掌握GPIO的引脚功能,输入/输出模式,相关寄存器的配置与使用,GPIO常用库函数的使用。熟悉和掌握通用GPIO的应用, | 3 | 设计性 | 1 | 必修 |
3 | EXIT外部中断实验 | 按下PC0~PC3所接按键,触发外部中断,相应PA0~PA3所接4个LED指示灯状态改变,掌握EXTI配置、NVIC配置、中断服务程序的编写,外部中断控制的应用。 | 3 | 设计性 | 1 | 必修 |
4 | USART同步/异步串行通信实验 | 从STM32的FLASH固定地址读出STM32 CPU芯片的ID序列码;通过串口上传到PC机,通过串口工具软件显示出来。掌握USART 基本工作原理、寄存器配置,波特率设置,掌握USART中断服务程序的编写,以及收发功能的应用。 | 3 | 设计性 | 1 | 必修 |
5 | 定时器实验 | 了解STM32通用定时器的功能、结构、计数模式,掌握定时时间的计算,掌握定时器的配置,中断程序的编写,以及定时器的应用。利用定时器TIM2产生中断,LED指示灯以2Hz频率闪烁。 | 3 | 设计性 | 1 | 必修 |
6 | ADC转换采样数据实验 | 了解STM32 A/D转换器的硬件结构,基本参数与功能,工作模式,掌握ADC初始化配置,ADC程序设计与应用。 | 3 | 设计性 | 1 | 必修 |
7 | 基于nRF24L01的近距无线通信系统的设计 | 两人一组,实现双方的数据发送与接收,并在显示器上显示。了解和掌握近距无线数据传输原理,了解和掌握24L01的工作原理与特点,了解和掌握24L01的程序设计与应用。 | 9 | 综合性 | 2 | 选修 |
8 | 基于MF RC522 RFID读写器的设计 | 应用MF RC522 RFID模块,设计一个RFID读写器,实现对电子标签的读写操作,可读取校园卡的ID等。了解和掌握RFID的工作原理与特点,了解和掌握RFID的程序设计与应用。 | 9 | 综合性 | 2 | 选修 |
9 | 音乐播放器的设计 | 应用VS1053B音频编解码模块,设计音乐播放器实现音乐播放。了解和掌握音乐播放器的工作原理、程序设计与应用,了解和掌握VS1053B模块的特点和应用。 | 9 | 综合性 | 2 | 选修 |
10 | 基于WIFI模块的无线数据传输系统 | 应用WIFI模块,1个STM32开发板工作在AP模式,作为路由器,另一个STM32开发板工作在STA模式,做为客户端,进行数据传输。了解和掌握WIFI无线数据传输的工作原理和特点,了解和掌握WIFI无线数据传输的程序设计与应用。 | 9 | 综合性 | 2 | 选修 |
四、实验内容及教学要求
实验项目1:STM32程序的编写、调试和分析
1.教学内容
(1)实现1个LED指示灯闪烁。
2.教学目标
(1)了解和熟悉STM32教学开发板,熟悉STM32基本固件库的应用;
(2)了解和熟悉STM32软件开发环境;
(3)用C语言编写并调试STM32程序。
实验项目2:GPIO端口控制流水灯闪烁
1.教学内容
(1)PA0~PA3所连接4个LED指示灯以不同频率闪烁。
2.教学目标
(1)了解和掌握GPIO硬件结构、引脚功能以及输入/输出模式;
(2)了解和掌握GPIO相关寄存器的配置与使用,GPIO常用库函数的使用;
(3)熟悉和掌握通用GPIO的特点和应用。
实验项目3:EXIT外部中断实验
1.教学内容
(1)依次按下PC0~PC3所连接4个按键,触发外部中断;
(2)相应PA0~PA3所连接4个LED指示灯状态发生改变。
2.教学目标
(1)了解和掌握STM32 CPU EXTI硬件结构和软件配置;
(2)了解和掌握STM32 CPU NVIC硬件结构、软件配置以及中断优先级;
(3)了解和掌握STM32 CPU中断服务程序的编写以及外部中断控制的应用。
实验项目4:USART同步/异步串行通信实验
1.教学内容
(1)从STM32 CPU的FLASH固定地址读出STM32 CPU芯片的ID序列码;
(2)通过串口上传到PC上位机,通过串口工具软件显示出来。
2.教学目标
(1)了解和掌握STM32 CPU USART 工作原理、相关寄存器和波特率设置;
(2)了解和掌握STM32 CPU USART初始化配置以及发送和接收数据的过程;
(3)了解和掌握STM32 CPU串口中断服务程序的编写以及收发功能的应用。
实验项目5:定时器实验
1.教学内容
(1)利用通用定时器TIM2产生定时中断;
(2)LED指示灯以2Hz频率闪烁。
2.教学目标
(1)了解STM32通用定时器的功能、结构、计数模式;
(2)掌握定时时间的计算,掌握相关寄存器、库函数的应用及初始化配置;
(3)掌握通用定时器中断服务程序的编写,以及定时器的应用。
实验项目6:ADC转换采样数据实验
1.教学内容
(1)利用STM32 CPU内部温度传感器检测温度;
(2)在显示器上实时显示检测的温度数据。
2.教学目标
(1)了解STM32 A/D转换器的硬件结构、工作模式和基本功能;
(2)掌握STM32 ADC相关寄存器、库函数的应用以及初始化配置;
(3)掌握STM32ADC程序设计与应用。
实验项目7:基于nRF24L01的近距无线通信系统的设计
1.教学内容
两人一组,实现双方的数据发送与接收,并在显示器上显示。
(1)实现nRF24L01点对点无线通信;进一步可实现点对多点无线通信;
(2)发送端通过按键控制发送数据;
(3)接收端实时显示接收到的数据。
2.教学目标
(1)了解和熟悉基于nRF24L01无线通信系统的工作原理、系统组成及特点;
(2)了解和掌握nRF24L01的特性及使用;熟悉SPI串行总线的使用;
(3)了解和掌握基于nRF24L01无线通信系统的软件设计与应用。
实验项目8:基于MF RC522 RFID读写器的设计
1.教学内容
设计一个基于MF RC522的 RFID读写器,具体要求如下:
(1)STM32 CPU与MF RC522模块采用UART进行通信;
(2)实现对电子标签的读写操作,可读取校园卡的ID等;
(3)采用LCD显示电子标签的ID信息。
2.教学目标
(1)了解和掌握基于MF RC522的 RFID读写器的工作原理、系统组成及特点;
(2)了解和熟悉MF RC522模块的特性及使用,熟悉电子标签的内部结构及使用;
(3)了解和掌握基于MF RC522的RFID读写器的软件设计。
实验项目9:音乐播放器的设计
1.教学内容
设计一个音乐播放器,具体要求如下:
(1)播放可识别格式的音频文件,实现音乐播放;
(2)采用键盘选择工作模式;
(3)采用LCD显示播放曲目的相关信息。
2.教学目标
(1)了解和掌握音乐播放器的工作原理、系统组成及特点;
(2)熟悉VS1053B音频编码器、解码器的工作过程、特性及使用;
(3)了解和掌握音乐播放器的软件设计。
实验项目10:基于WIFI模块的无线数据传输系统
1.教学内容
两人一组,应用WIFI模块进行无线数据传输,并在显示器上显示。
(1)1个STM32开发板工作在AP模式,作为路由器;
(2)另一个STM32开发板工作在STA模式,做为客户端;
(3)通过按键控制发送数据;另一端实时显示接收到的数据。
2.教学目标
(1)了解和掌握AT命令集;
(2)了解和掌握WIFI无线数据传输的工作原理和特点;
(3)了解和掌握WIFI无线数据传输的软件设计与应用。
五、考核及成绩评定方式
1、考核方式
考核方式:作品与报告
成绩评定方式:
课程目标达成情况及考试成绩评定占比(%)
课程教学目标 | 支撑毕业要求 | 考试和评价方式成绩占比(%) | 成绩比例(%) | |||
期末考试 | 平时成绩 | 实验成绩 | 实验报告 | |||
教学目标1、2 | 支撑毕业要求1-2 | 12 | 8 | 14 | 6 | 40 |
教学目标3 | 支撑毕业要求3-1 | 12 | 8 | 14 | 6 | 40 |
教学目标4 | 支撑毕业要求5-2 | 6 | 4 | 7 | 3 | 20 |
合计 | 30 | 20 | 35 | 15 | 100 |
2、考核评价标准
实验成绩考核评价标准
| 基本要求 | 评价标准 | 成绩比例(%) | |||
优秀 | 良好 | 合格 | 不合格 | |||
实验 成绩 | 应用STM32开发板和ARM Keil集成开发环境,应用所学理论知识,熟悉和掌握STM32的片上资源,培养学生独立进行设计和分析工程问题的能力,并启发学生的创新思维、自主开展创新性实验活动。(支撑毕业要求1-2、3-1、5-2) | 能根据实验要求合理设计电路,给出实现方案;独立完成实验,对实验结果能进行有效分析。 | 能根据实验要求合理设计电路,给出实现方案;独立完成实验,对实验结果进行分析。 | 基本能根据实验要求设计电路,给出实现方案;基本完成实验,对实验结果能进行部分分析。 | 不能根据实验要求设计电路,给出实现方案;不能完成实验,对实验结果没有分析。 | 35 |
实验报告考核评价标准
| 基本要求 | 评价标准 | 成绩比例(%) | |||
优秀 | 良好 | 合格 | 不合格 | |||
实验报告 | 能运用嵌入式系统设计课程知识识别、判断和思考实验中的现象和应用方式(支撑毕业要求1-2、3-1) | 实验报告撰写规范,内容完整,条理清晰;报告中对实验过程叙述清晰,逻辑性强,自己努力完成,没有抄袭。实验记录正确、充分、完整,对实验结果有分析,有结论。 | 实验报告撰写较规范,内容较完整,条理清晰;报告中对实验过程叙述较清晰,逻辑性较强,自己努力完成,没有抄袭。实验记录正确、完整,对实验结果有分析,对结论说明不够。 | 实验报告撰写尚规范,内容基本完整;报告中对实验过程叙述尚清晰,自己完成,无抄袭。实验记录正确、完整,对结果有一定分析,无结论。 | 实验报告撰写不规范或为提交实验报告;不独立完成,有抄袭现象,或为完成实验。 | 15 |
六、主要仪器设备及现有台套数
1.计算机(安装Keil μVision4软件): 30台
2.系统开发板(STM32 CPU): 30套
3.示波器: 30台
4.万用表: 30台
5.直流电源: 30台
6.信号发生器: 30台
7.工具箱: 1套/人
8.电子元器件: 若干
七、教材及参考书目
教材:
1、陈志旺. STM32嵌入式微控制器快速上手(第2版)[M]. 北京:电子工业出版社,2014
2、自编实验讲义
参考文献:
1、彭刚,秦志强. 基于ARM Cortex-M3的STM32系列嵌入式微控制器应用实践[M] . 北京:电子工业出版社,2011
2、李宁. 基于MDK的STM32处理器开发应用[M]. 北京:北京航空航天大学出版社,2008
3、王永虹,徐炜,郝立平. STM32系列ARM Cortex-M3微控制器原理与实践 [M]. 北京:北京航空航天大学出版社,2008
4、蒙博宇. STM32自学笔记[M]. 北京:北京航空航天大学出版社,2011
5、范书瑞,李琦,赵燕飞. Cortex-M3嵌入式处理器原理与应用[M]. 北京:电子工业出版社,2011