hi,小慕
课程

中国大学MOOC,为你提供一流的大学教育

hi,小mooc
智慧课程 认证学习
单片机原理与应用
第1次开课
开课时间: 2025年03月10日 ~ 2025年07月10日
学时安排: 1-2小时每周
进行至第6周,共18周 已有 685 人参加
立即参加
课程详情
课程图谱
课程评价
spContent=单片机原理与应用是电子信息工程、电子信息科学与技术等电子信息类专业的必修核心课,是一门系统讲授Intel公司MCS-51系列微型计算机内部基本结构与原理、内部资源应用与开发技术、外部资源扩展方法和工程应用实例的理论与实践紧密结合的课程。 通过本课程的学习,使学生掌握MCS-51单片机的硬件架构与软件设计基础,掌握片上资源的开发与利用原理以及片外资源的扩展方法,培养学生综合运用单片机结构与原理解决电子信息采集、存储、传输、控制等复杂工程问题的能力,实现单片机理论知识、汇编语言编程技能、C语言编程技能和工程技术创新能力的协调发展,为后续课程学习、开展高层次核心技术研究和解决复杂工程问题奠定基础。
单片机原理与应用是电子信息工程、电子信息科学与技术等电子信息类专业的必修核心课,是一门系统讲授Intel公司MCS-51系列微型计算机内部基本结构与原理、内部资源应用与开发技术、外部资源扩展方法和工程应用实例的理论与实践紧密结合的课程。 通过本课程的学习,使学生掌握MCS-51单片机的硬件架构与软件设计基础,掌握片上资源的开发与利用原理以及片外资源的扩展方法,培养学生综合运用单片机结构与原理解决电子信息采集、存储、传输、控制等复杂工程问题的能力,实现单片机理论知识、汇编语言编程技能、C语言编程技能和工程技术创新能力的协调发展,为后续课程学习、开展高层次核心技术研究和解决复杂工程问题奠定基础。
—— 课程团队
课程概述

MCS-51系列单片机是目前嵌入式系统应用中重要的经典单片机机型,在传感、通信、计算机、控制等信息支柱技术领域具有广泛的应用,包括Intel、Atmel、飞利浦、华邦、宏晶科技等公司都生产有MCS-51架构的单片机。单片机的应用属于芯片级应用,需要设计者掌握单片机的硬件结构与指令系统,了解集成电路的应用技术,并熟悉设计单片机系统所需要的相关理论和技术方法。课程团队结合单片机应用技术与系统集成方面的科研经历和教学积累,以MCS-51单片机为主要对象,系统介绍了该单片机的原理与应用技术。具体内容包括:单片机发展与应用概述、单片机的硬件架构与原理、单片机的软件设计、单片机存储系统的扩展、单片机的定时/计数器及应用、单片机的并行口及其扩展与应用、单片机的中断/异常及应用、单片机的串行通信及应用、单片机的数据采集及应用、单片机的输出控制及应用、单片机的人机交互系统设计与应用。

本课程的主要优势和特色在于:首先,课程负责人自2002年起从事单片机应用技术开发,所在科研团队承担了近20项与单片机应用技术相关的科研项目,研制基于红外吸收光谱技术的气体传感系统(单片机是核心控制部件),在单片机应用技术方面形成了较好的积累,这些科研素材都已经充分融入了教学。其次,课程负责人自2010年起讲授“ARM单片机”、“单片机原理与应用”、“嵌入式系统”课程,积累了较为丰富的教学经验,形成了具有特色的讲义和心得体会。第三,课程团队编写出版了吉林大学“十三·五”规划教材——《单片机原理与工程应用》(华中科技大学出版社,2020.09),该教材针对MCS-51和ARM两种架构的单片机,从实用化的角度阐述两种单片机的核心技术,并采用对比的方式讲述了二者知识点与应用技术的异同,使读者能够全面地掌握单片机原理与应用技术。该教材可以作为本线上课程的重要参考资料。此外,本在线课程具有大量的学习素材与资料,包括讲义/课件/习题/虚拟仿真、项目与工程实践案例/课程设计/科研训练、学生学习笔记/思维导图/问卷调查。

综上,课程团队力争将积累的丰富教学经验与扎实的单片机前沿技术相结合,增强课程的实用化程度,提高学生的单片机应用技术水平。

授课目标

知识目标:掌握(1)MCS-51单片机的中央处理器、时钟系统、堆栈、数据存储器、程序存储器、堆栈、引脚等片上硬件架构与工作原理,(2)寻址方式与指令系统、汇编语言与C语言编程基础,单片机I/O口、特殊功能寄存器、片上资源的C和汇编语言定义,(3)单片机定时/计数器、中断、串口的工作原理,(4)利用单片机的外部并行总线扩展存储器、I/O口、ADC、DAC、液晶屏、数码管、矩阵键盘、打印机等片外设备的一般原理和基本方法。(5)具备设计单片机应用系统相关的基本专业知识。

能力目标:具备(1)设计单片机基本应用系统硬件电路的能力,包括最小系统电路、存储器电路、数据采集电路、输出控制电路、人机交互电路、串口通信电路等;(2)具备采用汇编语言和C语言编写、调式、分析单片机应用程序的实践能力。

高阶目标:培养学生综合运用单片机相关知识,解决数据采集、存储、传输、控制等实际工程问题的能力,实现理论知识、硬件技能、软件技能和创新能力的协同发展,通过工程问题的锻炼,使学生能够对单片机应用技术领域复杂工程问题进行方案设计和分析论证。

课程大纲
单片机的应用与发展概述
课时目标:知识点:单片机的概念、发展历史、特点、应用领域和选型方法。重点:单片机的架构特点、选型方法。难点:单片机架构与IP核(软核、固核、硬核)。教学形式:课堂讲授、提问和总结,课堂练习,课后作业。教学方法:讲授法、学习法。 知识要求: (1)了解单片机的发展历史,以及不同阶段单片机的功能和特点;(2)了解单片机未来发展趋势;(3)掌握单片机的定义、内部构成和互连关系;(4)掌握单片机中央处理器、存储器、I/O口等不同模块的功能特点;(5)了解具有MCS-51单片机架构的不同系列的单片机机型的异同;(6)了解单片机的应用技术领域。(7)掌握单片机选型时需要遵循的基本规律。能力要求: (1)查阅与单片机相关的中英文手册的能力;(2)根据具体任务需求,考虑成本、体积、速度等复杂因素,选择不同单片机系列及其型号的能力。
1.1单片机的发展与现状
1.2 单片机的特点
1.3 单片机的种类
1.4 单片机的应用与选型
单片机的硬件架构与原理
课时目标:知识点:单片机的片上结构、时钟系统、CPU、流水线、存储器组织、程序存储器、数据存储器、单片机的几个地址重叠区域与区分方法、SFR、堆栈、中断、引脚与功能、工作方式、程序固化方式、最小系统。重点:单片机的存储器组织。难点:单片机的地址重叠与区分方法、准哈佛结构。教学形式:课堂讲授、课上讨论,课堂测试,课后作业,课程实验。教学方法:讲授法、讨论法、自主学习法。知识要求: (1)了解单片机的片上构成与连接方式; (2)掌握单片机工作时钟的产生方式、操作时序;(3)掌握单片机中央处理器的构成,包括运算器、控制器、指令部件、CPU专属的寄存器;(4)了解51单片机的流水线架构;(5)掌握单片机的存储架构特点、程序存储器、数据存储器;(6)掌握单片机的特殊功能寄存器;(7)掌握单片机的堆栈及其出栈、入栈操作;(8)掌握单片机的复位、程序运行、单步执行、低功耗、编程和校验等工作式,掌握单片机复位电路、单步执行电路的设计方法;(9)掌握单片机的功能引脚及其分类,各引脚的操作及其特殊性;(10)了解单片机的程序的固化方法;(11)掌握单片机的最小系统构成及工作原理。能力要求: (1)结合宏观应用需求,能够从微观角度分析单片机片上结构的能力;(2)能够阐明单片机存储架构、流水线架构、堆栈架构特点的分析能力;(3)运用所学知识设计单片机最小应用系统的能力;(4)具有单片机各片上功能模块和引脚的应用分析能力。
2.1 51单片机的片上结构与时钟系统
2.2 51单片机的中央处理器和指令操作
2.3 51单片机的存储器组织
2.4 51单片机的特殊功能寄存器
2.5 51单片机的堆栈
2.6 51单片机的引脚与准IO操作
2.7 51单片机IO引脚的总线与第二功能操作
2.8 51单片机的工作方式与最小系统
单片机的软件设计
课时目标:知识点:编程语言、编程工具、软件开发流程、汇编指令及其格式、属性、寻址方式、指令系统、汇编程序设计、嵌入式C语言、数据类型及存储类型、C51的指针、片上资源的定义、混合编程的必要性、混合编程的方式、参数的传递和返回、模块化编程方法、文件的创建、函数的编写、变量的定义及其属性。重点:单片机的汇编指令分类与寻址方式,C51的数据类型,单片机片上资源的定义。难点:C51的指针、混合编程。教学形式:课堂讲授、课上讨论、课堂测试、课后作业、课程实验。教学方法:讲授法、讨论法、自主学习法。 知识要求: (1)了解单片机的编程语言、编程工具与开发方法;(2)了解片机的指令系统,掌握单片机指令寻址方式和特色指令;(3)掌握单片机片上资源的C与汇编语言定义方法;(4)了解单片机的混合编程与模块化编程方法。 能力要求:(1)单片机指令和寻址方式的分析和运用能力;(2)单片机汇编语言、C51语言的编程能力;(3)单片机软、硬件相统一的设计与思辨能力。
3.1 51单片机的编程
3.2 51单片机的指令特性
3.3 51单片机的寻址方式
3.4 51单片机的实指令系统
3.5 51单片机的伪指令
3.6 51单片机的汇编程序设计
3.7 51单片机的数据类型
3.8 51单片机的存储类型
3.9 51单片机的片上资源定义
3.10 51单片机的C语言程序设计
单片机的存储系统及其扩展
课时目标:知识点:外部并行总线—数据线、地址线、控制线;存储器的片选线、地址线与控制线;片选信号的产生与虚拟地址空间;扩展程序存储器的一般原理;扩展E2PROM示例;扩展数据存储器的一般原理;扩展SRAM示例。重点:单片机的外部并行总线;运用外部并行总线扩展存储器的方法。难点:单片机采用总线方式访问存储器的时序及其微观操作、存储器的扩展与单片机存储架构的对应关系。教学形式:课堂讲授、翻转课堂,课上讨论,课后作业(仿真训练),课程实验。教学方法:讲授法、讨论法、任务驱动法、自主学习法。 知识要求: (1)掌握单片机外部并行三总线的扩展方法;(2)理解存储器的三总线及其含义;(3)掌握扩展程序存储器和数据存储器的一般方法;(4)掌握单片机扩展程序存储器的硬件电路和软件编程方法;(5)掌握单片机扩展数据存储器的硬件电路和软件编程方法;(6)理解单片机在总线方式下访问程序存储器和数据存储器的时序;(7)理解单片机扩展EPROM、E2PROM、FLASH的方法的异同。能力要求: (1)运用单片机扩展外部总线的能力;(2)运用单片机的外部总线,扩展程序存储器和数据存储器的能力;(3)单片机存储器扩展电路的设计能力;(4)针对扩展的单片机存储器进行软件设计和编程的能力。
4.1 外部并行总线的扩展
4.2 程序存储器的扩展
4.3 数据存储器的扩展
4.4 数据存储器的总线扩展仿真
单片机的定时/计数器及应用
课时目标:知识点:定时/计数器的一般原理;定时/计数器的特殊功能寄存器;定时/计数器的工作方式1;定时/计数器的工作方式2;定时/计数器的编程初始化;定时/计数器的应用方法。重点:51单片机的定时/计数器的应用技术。难点:定时器的查询与中断状态下的使用。教学形式:课堂讲授、翻转课堂,课后作业,课程实验。教学方法:讲授法、讨论法、任务驱动法、自主学习法。知识要求: (1)理解单片机定时器与计数器的基本工作原理;(2)掌握与单片机定时/计数器资源有关的特殊功能寄存器及其设置方法;(3)了解单片机定时/计数器的不同工作方式;(4)掌握定时/计数器的常用工作方式:方式1和方式2;(5)掌握不同工作方式、不同应用状态下定时/计数器的初始化编程方法;(6)掌握查询方式下定时/计数器的编程应用技术;(7)掌握中断方式下定时/计数器的编程应用技术。能力要求: (1)针对定时/计数器进行软件与硬件协同设计的能力;(2)灵活运用定时/计数器知识解决特定时间定时、周期性脉冲输出、外部脉冲计数等问题的能力。
5.1 51单片机定时/计数器的工作原理及其控制方法
5.2 51单片机定时/计数器的工作方式及其初始化
5.3 51单片机定时器的波形发生应用
5.4 51单片机定时器的应用实例
单片机的并行口及其扩展与应用
课时目标:知识点:输出接口的握手方式及扩展方法;输入接口的握手方式及扩展方法;总线扩展方式下并口控制信号的产生方法;P0口的操作及特点;P1口的操作及特点;P2口的操作及特点;P3口的操作及特点;单片机并口的应用;基于总线的输出接口扩展与应用;基于总线的输入接口扩展与应用。重点:单片机P0-P3口的工作原理与应用。 难点:采用单片机外部并行总线,扩展输入口和输出口的方法。教学形式:课堂讲授、课堂讨论,课后作业(包括仿真),课程实验。教学方法:讲授法、讨论法、自主学习法。 知识要求: (1)了解输入口、输出口的握手方式和一般的扩展方法;(2)掌握总线方式下,产生输入口、输出口控制信号的方法;(3)掌握P0-P3口的工作原理与输入、输出操作;(4)掌握基于单片机并行总线的输入口扩展方法;(5)掌握基于单片机并行总线的输出口扩展方法;(6)掌握单片机P0-P3口、扩展的并口的硬件设计和软件编程方法。能力要求: (1)运用单片机P0-P3口解决输入、输出开关量与数字量的能力;(2)运用单片机并行总线扩展的并行接口,解决输入、输出开关量与数字量的能力。
6.1 外部并行总线的扩展
6.2 片上并行输入输出口及其应用
6.3 并行输出口的总线扩展
6.4 并行输入口的总线扩展
6.5 并行输入输出口的总线扩展仿真
单片机的中断及应用
课时目标:知识点:中断的概念;中断的来源;中断的请求;中断的使能与屏蔽;中断的优先级;中断的嵌套;中断的入口地址;中断的响应与返回;中断的寄存器;中断函数;外部中断的应用方法。重点:单片机的中断管理系统、前后台系统、单片机外部中断的应用方法。难点:中断的优先级设置原则。教学形式:线上学习,课堂讲授、课堂测试,课后作业,课程实验。教学方法:讲授法、讨论法、自主学习法。知识要求: (1)理解单片机中断的概念;(2)掌握单片机的中断管理系统,包括中断源、中断触发方式、中断的使能与屏蔽、中断的嵌套与优先级;(3)掌握单片机的中断向量表;(4)理解单片机中断的响应与返回的机制;(5)掌握与单片机中断相关的特殊功能寄存器:IP、IE等;(6)掌握单片机外部中断的应用方法:触发方式、使能方式、优先级设置方法、中断服务函数编写方法。能力要求: (1)具有单片机前后台软件系统的设计能力;(2)灵活运用单片机的外部中断,解决按键识别、异步触发、事件捕获等问题的能力。
7.1 51单片机中断概述
7.2 51单片机中断系统原理
7.3 51单片机外部中断系统的基础应用
7.4 51单片机外部中断系统的进阶应用
7.5 51单片机外部中断系统的扩展及应用实例
单片机的串行通信及应用
课时目标:知识点:通信;串行通信;异步串行通信接口的结构及原理;异步串行通信接口的特殊功能寄存器;异步串行通信接口的工作方式;串口的初始化;串口的基本发送程序;串口的基本接收程序;串口中断程序;串口的应用设计;异步串行通信电平及转换;基于UART的多机通信。重点:单片机的异步串行通信接口结构;单片机异步串行通信接口的工作方式;点对点方式的异步串行通信电路设计与软件编程。难点:单片机异步串行通信协议制定、数据收发冗错处理方法。教学形式:课堂讲授,课堂测试,课后作业(仿真),课程实验。教学方法:讲授法、讨论法、自主学习法、任务驱动法。 知识要求: (1)理解通信、串行通信、并行通信、同步通信、异步通信的概念与异同;(2)掌握单片机异步串行通信接口的结构及原理;(3)掌握单片机异步串行通信接口的特殊功能寄存器;(4)掌握单片机异步串行通信接口的工作方式;(5)掌握单片机异步串行通信接口的初始化编程方法;(6)掌握单片机异步串行通信接口的基本发送和接收的程序设计方法;(7)掌握单片机异步串行通信接口的点对点发送和接收的通信协议制定和软件编程方法;(8)掌握查询和中断方式下,单片机异步串行通信接口的程序设计方法;(9)掌握单片机异步串行通信接口的电平转化电路设计方法;(10)了解基于单片机异步串行通信接口的多机通信系统设计方法。能力要求: (11)针对不同的电平转换需求,具有点对点式单片机异步串行通信硬件系统的设计能力;(2)具有点对点式单片机异步串行通信软件系统的综合设计能力;(3)灵活运用单片机的异步串行功能,解决单片机可靠性信息传输问题的能力。
8.1 串行通信
8.2 51单片机的异步串行通信接口
8.3 51单片机的串行通信方式
8.4 51单片机的串口初始化与基本收发程序
8.5 51单片机异步串行通信的电平转换与接口设计
8.6 51单片机串口的点对点通信应用
8.7 51单片机串口的多机通信原理
8.8 51单片机串口的多机通信应用
单片机的数据采集及应用
课时目标:知识点:开关量的采集与应用;数字量的采集与应用;脉冲量的采集与应用;ADC的一般原理;ADC0809的引脚与内部结构;ADC0809的工作时序;ADC0809的接口电路与原理;ADC0809的软件编程;ADC0809的工程应用案例。重点:开关量的采集方法;数字量的采集方法;脉冲量(或者频率量)的采集方法;模拟量的采集方法。难点:用于模拟量采集的数模混合电路的供电电源电路设计、提高模拟量、脉冲量采集可靠性与精度的方法;单片机采用总线方式扩展ADC0809的微观解释。教学形式:课堂讲授,课堂讨论,课堂测试,课后作业(仿真),课程实验。教学方法:讲授法、讨论法、自主学习法、任务驱动法。 知识要求: (1)理解开关量、数字量、脉冲量与模拟量的概念;(2)掌握单片机采集开关量、数字量、脉冲量与模拟量的基本原理;(3)掌握单片机采集开关量、数字量的硬件电路设计与软件编程方法;(4)掌握单片机采集脉冲量的硬件电路设计与软件编程方法;(5)掌握模数转换芯片ADC0809的结构、工作原理与操作时序;(6)掌握单片机采用总线方式扩展ADC0809的硬件接口电路的设计方法;(7)在查询和中断方式下,掌握单片机采用总线方式扩展ADC0809的软件程序设计方法。能力要求: (1)针对不同的电平转换需求,具有开关量、数字量的采集电路和软件的设计能力;(2)针对不同的电平转换需求,具有脉冲量的采集电路和软件设计能力;(3)灵活运用ADC0809芯片,解决高时间分辨率的模拟量采集问题的能力。
9.1 51单片机的信号采集
9.2 开关量的采集
9.3 数字量的采集
9.4 基于外部计数器的脉冲量采集与应用
9.5 基于频率法和周期法的脉冲量的采集仿真
9.6 模拟量的采集应用
单片机的输出控制与编程
课时目标:知识点:开关量的输出与应用;数字量的输出与应;脉冲量的输出方法;步进电机的原理与接口电路;步进电机的驱动程序;舵机的原理与接口电路;舵机的驱动程序;DAC的原理;DAC0832的结构;DAC0832的输入缓冲特性与应用;DAC0832的输出与极性;DAC0832的接口电路;DAC0832的软件编程;DAC0832的应用。重点:开关量的输出方法;数字量的输出方法;脉冲量(或者频率量)的输出方法;模拟量的输出方法;应用开关量、数字量、脉冲量、模拟量控制设备的方法。难点:DAC0832的无缓冲、单缓冲、双缓冲工作方式,DAC0832的单极性与双极性输出,单片机采用总线方式扩展DAC0832的微观解释。教学形式:课堂讲授,课堂讨论,课堂测试,课后作业(仿真),课程实验。教学方法:讲授法、讨论法、自主学习法、任务驱动法。知识要求: (1)掌握单片机输出开关量、数字量、脉冲量与模拟量的基本原理;(3)掌握单片机输出开关量、数字量的硬件电路设计与软件编程方法;(4)结合单片机的定时器,掌握单片机输出脉冲量的硬件电路设计与软件编程方法;(5)掌握数模转换芯片DAC0832的结构、工作原理与操作时序;(6)在不同缓冲和极性输出方式下,掌握单片机采用总线方式扩展DAC0832的硬件接口电路的设计方法;(7)掌握单片机采用总线方式扩展DAC0832的软件程序设计方法。能力要求: (1)针对不同的设备驱动需求,具有开关量、数字量的输出电路和软件的设计能力;(2)针对不同的设备驱动需求,具有脉冲量的输出电路和软件设计能力;(3)灵活运用DAC0832芯片,解决不同形状模拟量信号的输出与信号变换的能力。
10.1 开关量的输出与控制应用——继电器
10.2 数字量的输出与控制应用——微型打印机
10.3 脉冲量的输出与控制应用——直流电机
10.4 脉冲量的输出与控制应用——步进电机
10.5 脉冲量的输出与控制应用——舵机
10.6 模拟量的输出与控制应用——DAC原理
10.7 模拟量的输出与控制应用——DAC应用
单片机的人机交互系统设计与应用
课时目标:知识点:独立式按键的接口电路;独立式按键的软件编程;独立式按键的应用;矩阵式按键的接口电路;矩阵式按键的软件编程;矩阵式按键的应用;字符型输出设备的接口电路及其软件编程;静态显示方式的数码管驱动;动态显示方式的数码管驱动;并口驱动方式的数码管;串口驱动方式的数码管;数码管的应用;字符型LCD1602及其硬件接口电路;字符型LCD1602的软件编程;字符型LCD1602的应用。重点:按键电路设计与软件编程;数码管的驱动电路设计与软件编程;字符型LCD的应用设计与编程。难点:按键、数码管同时驱动下,单片机软、硬件系统的无冲突设计方法。教学形式:课堂讲授,课堂讨论,课堂测试,课后作业(仿真),课程实验。教学方法:讲授法、讨论法、自主学习法、任务驱动法。 知识要求: (1)掌握单片机识别独立式、矩阵式按键的电路和软件设计方法;(2)掌握单片机驱动数码管的硬件电路设计与软件编程方法;(3)掌握单片机驱动字符型LCD的硬件电路设计与软件编程方法。能力要求: (1)针对不同的信息输入需求,具有按键电路和软件的设计能力;(2)针对不同的信息显示需求,具有数码管、LCD等输出电路和软件设计能力;(3)灵活运用按键、数码管、LCD等人机交互设备,解决不同信息获取与显示问题的能力。
11.1 单片机应用系统的输入和输出
11.2 独立式按键输入设备的接口设计与编程
11.3 矩阵式按键输入设备的接口设计与编程
11.4 LED显示设备的接口设计与编程
11.5 字符型LCD输出设备的接口设计与编程
11.6 点阵型LCD输出设备的接口设计与编程
11.7 人机交互输入输出设备的总线扩展与仿真
展开全部
预备知识

微机原理与接口技术、C语言程序设计基础、大学计算机

参考资料

[1]郑传涛、刘洋编著,单片机原理与工程应用,华中科技大学出版社,2020

[2] 马忠梅等编著,单片机的C语言应用程序设计(5版),北京航空航天大学出版社,2013

[3] 马忠梅等编著,单片机C语言Windows环境编程宝典》,北京航空航天大学出版社,2003

[4] 张友德主编,单片微型机原理、应用与实践(修订版),复旦大学出版社,1995

[5] 胡伟、季晓衡编著,单片机C程序设计及应用实例,人民邮电出版社,2003

吉林大学
4 位授课老师
郑传涛

郑传涛

教授

吴戈

吴戈

高级工程师

李春光

李春光

副教授

推荐课程

下载
下载

下载App