网站首页 教学队伍 课程介绍 课程建设 教学资料 课程评价 教学录像
课程建设
教学方法
教学环节
课程特色
课程创新点
教学环节 您现在的位置:网站首页 > 课程建设 > 教学环节

        课程主要围绕Intel 8051单片机来讲解,基于“做中学、学中做”的教学理念,精心设计了9个教学模块来贯穿整门课程,它们分别是汇编语言程序设计、I/O程序设计、外部中断程序设计、定时/计数器程序设计、串行口程序设计、键盘显示程序设计、D/A程序设计、A/D程序设计和数字钟。其中,前8个模块属于基础型教学,最后一个属于综合型设计。基础型模块中分别设计了基本任务和扩展任务,基本任务是由教师引导学生一步步来完成,边讲边做,边做边解释现象,而扩展任务由学生独立完成,教师从旁指导和监督,并适时给予总结点评。

        【模块1 汇编语言程序设计】基本任务:1) 两个单字节数据的求和;2) 两个双字节数据的求和;3) 两个多字节数据的求和。扩展任务:将内部数据存储器从30H单元开始的16个字节数据逐个复制到外部数据存储器从1030H地址开始的16个存储单元中。所覆盖的知识点包括:a) 8051单片机的存储器结构;b) 利用Keil来查看8051单片机的程序存储器ROM、数据存储器RAM、特殊功能寄存器SFR以及外部数据存储器;c) 使用Keil软件进行程序的单步调试、断点调试、执行到光标所在行和全速执行;d) 单片机各SFR的初始值;e) 8051指令集;f) 汇编程序的顺序结构、分支结构和循环结构;g) 单片机的开发过程。

        【模块2 I/O程序设计】基本任务:将LAB8000实验箱上的8051的P1口连接8个LED灯,编程实现对灯的全亮与全灭的控制。扩展任务:a) 控制8个LED灯实现显示不同的亮灭方案;b) P0口外接LAB8000实验箱上的8个开关,根据开关的状态,控制8个LED灯的亮灭,形成流水灯效果。所覆盖的知识点包括:a) 8051的4个并行I/O接口的内部结构;b) 子程序的设计和调用;c) 子程序的进入和退出过程;d) 延时时间的计算;e) 使用Keil查看程序的执行时间;f) 通过Keil将程序加载到硬件仿真器。

        【模块3 外部中断程序设计】基本任务:将外部中断0设置为下降沿触发,通过外部单脉冲信号向8051的产生外部中断0请求,对中断进行累加计数,并将计数结果显示到与P1口相连的LED灯上。扩展任务:通过外部单脉冲信号向8051的产生外部中断1请求,中断服务程序统计中断次数并将数值显示到与P1相连的8个LED灯上,要求将外部中断1分别设置为下降沿触发方式和低电平触发方式,然后观察现象。所覆盖的知识点包括:a) 8051中断系统的结构;b) 8051外部中断的两种触发方式;c) 外部中断的响应过程和退出过程;d) 低电平触发方式下外部中断的撤消。

        【模块4 定时/计数器程序设计】基本任务:采用轮询TF0的方式,利用定时器0控制与P1.0相连的LED灯每秒闪烁一次。扩展任务:(1)采 用定时器中断0,实现与基本任务相同的功能。(2)统计8051定时/计数中断的次数并将计数值显示到与P1相连的8个LED灯上,并与案例3的扩展任务中的计数作对比。所覆盖的知识点包括:a) 定时器和计数器的区别;b) 不同工作方式下的最大定时/计数能力;c) 计算和设置定时/计数器的初值;d) 定时器中断的响应过程和退出过程;e) 读取定时/计数器的计数值。

        【模块5 串行口程序设计】基本任务:采用轮询TI和RI的方式,接收从计算机端的串口调试助手发来的字节数据,将其显示到与P1相连的8个LED上的同时,再将该字节数据回送给计算机端的串口调试助手。扩展任务:采用串行口中断的方式,实现与基本任务相同的功能。所覆盖的知识点包括:a) 接收SBUF和发送SBUF的使用;b) 串行口中断的执行过程;c) 轮询方式实现字节数据的发送和接收;d) 中断方式实现字节数据的发送和接收;e) MAX232的作用;f) 串口调试助手的配置和使用。

        【模块6 键盘显示程序设计】 基本任务:将30H~32H存放的3个压缩BCD码数据显示到LAB8000实验箱上的6个数码管上。扩展任务:在LAB8000实验箱的矩阵键盘上按下一个键,要求将按键的键值显示到一个数码管上。所覆盖的知识点包括:a) 8051外部扩展I/O设备;b) 数码管的段码显示和位选控制;c) 扫描法(编程扫描和定时扫描)识别矩阵键盘的按键。d) 查表指令的使用。

        【模块7 DAC程序设计】 基本任务:利用DAC0832产生一个锯齿波。扩展任务:利用DAC0832产生一个三角波。所覆盖的知识点包括:a) 数模转换的基本原理;b) DAC0832的内部原理和使用方法;c) LAB8000实验箱上DAC0832的使能信号。

        【模块8 ADC程序设计】 基本任务:采用延时法,实现对LAB8000实验箱上的电位器的输出进行实时的模数转换,并将结果显示到与P1口相连的8个LED灯上。扩展任务:采用轮询EOC输出的方法,实现与基本任务相同的功能。所覆盖的知识点包括:a) 模数转换的基本原理;b) ADC0809的内部原理和使用方法;c) LAB8000实验箱上ADC0809的使能信号;d) 确保ADC0809模数转换完成的三种方法:延时法、轮询EOC、EOC中断。

        【模块9 数字钟的实现】 8051单片机综合应用的案例,任务是利用单片机实现24小时制的数字钟功能,起始时间通过计算机端的串口调试助手向单片机设定。该模块是对前面几个基础型模块的综合应用,教师可以给出部分关键代码作为引导,由学生独立完成。该环节可以作为对学生的工程实践能力的考核。

Copyright © 沈阳航空航天大学 国际教育学院 技术支持:永信云