任务二 单片机控制LED 单向流水彩灯 (3)(教案)-《单片机技术及应用(第4版)》(高等教育出版社) 同步精品课堂
2025-08-19
|
8页
|
72人阅读
|
1人下载
精品
内容正文:
《单片机技术及应用(第4版)》
(高等教育出版社)教案
课 题
单片机控制LED 单向流水彩灯 (3)
课 型
理论
课 时
2
授课班级
授课时间
授课教师
教材分析
本节为 “LED 流水彩灯” 项目的进阶优化章节,聚焦 “单向流水灯程序优化” 核心任务,系统讲解三种优化方法(循环移位函数、for 循环结构、位操作 + 选择结构)的实现逻辑,涵盖 C51 头文件函数(INTRINS.H 的_crol_)、循环程序结构(for/while 执行流程 )、位操作(左移 / 或运算)及选择结构(if/if-else 逻辑)。教材采用 “问题提出(改变速度 / 方向)→方法探究(三种优化)→实践验证” 递进结构,通过移位示意图、流程图及代码示例(如循环左移函数调用),将抽象的程序优化与具体 LED 控制需求深度融合。作为衔接 “基础流水灯实现” 与 “复杂花样控制” 的关键环节,为后续学习双向流水、多模式切换等任务提供编程优化技术支撑,是培养学生单片机程序设计逻辑与代码优化能力的核心章节。
学情分析
学生已掌握单片机控制单 LED 闪烁的基础操作(如 Keil 编程、Proteus 仿真)及 C 语言基础语法,但对多 LED 流水控制的位运算(如循环左移函数_crol_)、循环结构(for/while 语句)及程序优化逻辑(如通过移位函数简化代码)理解较浅;部分学生能完成简单流程图绘制,但对 “循环左移流程图”与优化代码的对应关系(如移位次数与 LED 状态变化)认知模糊;多软件协同操作(Diagram Designer 流程图绘制→Keil 编程→Proteus 仿真)易因步骤遗漏(如头文件 INTRINS.H 未包含)导致调试失败。需通过循环移位示意图、流程图实例及 “优化 - 仿真 - 对比” 实践,强化程序优化意识与逻辑编程能力,突破循环结构应用与位运算优化的认知瓶颈。
学习目标
知识目标:
1. 掌握改变彩灯流水速度和方向的方法。
2. 学会使用不同方法优化控制 LED 单向流水的程序。
技能目标:
1. 理解循环移位函数、循环程序结构和位操作与选择程序结构在流水灯程序中的应用。
2. 能够绘制相应的程序流程图并编写优化后的程序代码。
情感目标:
掌握本专业核心知识与技能,具备自主学习和知识迁移能力,形成终身学习习惯。
学习重难点
重点:
1. 三种优化程序方法的编程思路。
2. 循环移位函数、for 语句、while 语句、基本 if 语句和 if…else… 语句的使用。
3. 绘制优化程序对应的流程图。
难点:
1. 灵活运用不同方法优化程序以实现特定功能。
2. 理解位操作和选择程序结构实现流水效果的原理。
教学方法
案例分析、讲授法、小组讨论法
课前准备
1.查找相应网站资料,课堂演示使用。
2.学生课前预习。
教学媒体
电子课件、多媒体视频
教学过程
教学环节
教师活动设计
学生活动设计
设计意图
活动一:
创设情境
生成问题
【课程导入】
在之前我们已经学会了单片机控制 LED 单向流水彩灯的基本实现方法,现在我们来进一步探讨如何改变彩灯的流水速度和方向,以及思考程序是否可以优化。
【新知识传授】
· 方法 1—— 用头文件中的循环移位函数优化程序
(1) 编程思路
C51 内置头文件 INTRINS.H 中的函数_crol_可以完成循环左移操作(向左移动 1 位,最高位数据移至最低位处),因此可以更简洁地完成流水显示操作。如图所示。
(2) 绘制流程图
① 启动流程图绘图软件 Diagram Designer,设置图纸大小为 A4。
② 从右侧的标准框图符号库中拖取所需的框图符号,调整其大小和位置。③ 在框图中输入文本。
④ 用指向线连接框图符号。
⑤ 保存该程序流程图(文件名为 “循环左移函数实现的流水灯.DDD”)。
2.引导学生带着问题去课本寻找答案,明确本节课的学习内容。
3.展示本讲学习目标。
1. 接收并查看本节课堂任务书。
2. 了解学习目标,带着目标进行学习。
3. 观察生活中常见的多媒体信息形式,思考其背后的技术支撑。
4. 针对教师给出的问题,初步发表个人见解。
5. 目标明确:跟随教师引导,明确本节课学习目标。
1.以提问的方式导入课程,让学生带着问题有针对性的进行学习。
2.通过任务实施,调动学生积极性。
活动二:
调动思维
探究新知
【新知识传授】
· 方法 2—— 用 for 循环程序结构优化程序
(1) 编程思路
用位操作和循环程序结构实现流水显示效果。用 for 语句控制移位的次数,移完 8 次后重新赋值。
for 语句可以使程序按指定的次数重复执行一个语句组。
(2) 知识准备——for 语句
首先在初始化表达式中设置循环变量的初始值,然后求解条件表达式的值,如果其值为 “真”,则执行 for 后面的语句;如果为 “假”,则跳过 for 循环语句;如果条件表达式为 “真”,则在执行完指定的语句组之后,执行增量表达式。
· while 语句
while 语句的执行过程如图所示:
首先判断条件表达式是否为 “真”,若为 “真”,则执行循环体中的语句组;否则,跳出循环体,执行后面的操作。
(3) 绘制流程图
① 启动流程图绘图软件 Diagram Designer,设置图纸大小为 A4。
② 从右侧的标准框图符号库中拖取所需的框图符号,调整其大小和位置。
③ 在框图中输入文本。
④ 用指向线连接框图符号。
⑤ 保存该程序流程图(文件名为 “循环左移函数实现的流水灯.DDD”)。
2. 教师操作演示
3. 引导学生带着问题去课本寻找答案,明确本节课的学习内容。
1. 阅读探究:阅读课本相关内容,探究多媒体技术的产生背景。
2. 概念理解:理解多媒体、多媒体技术和多媒体系统的定义,并尝试用自己的话复述。
3. 要点记录:记录多媒体技术强调的要点,加深理解。
1. 了解学生现有知识储备。
2. 巩固练习。
活动三:
调动思维
探究新知
【新知识传授】
· 方法 3—— 位操作和选择程序结构实现
·
(1) 编程思路
① P1 口输出一个 8 位二进制数 11111110,将 LED1 点亮。
② 延时一段时间,使用位操作中的左移命令左移 1 位(高位溢出,低位补 0)
③ 使用或运算将最低位置 1,然后继续进行延时和位运算操作,如图所示。
④ 延时结束后,使用 if 语句判断 P1 口数据是否为 01111111(即最高位是否为低电平),如果为 01111111 说明已经完成了 7 次移位操作,此时将 P1 口数据重置为 11111110(最低位为低电平)。
(2) 绘制流程图
① 启动流程图绘图软件 Diagram Designer,设置图纸大小为 A4。
② 从右侧的标准框图符号库中拖取所需的框图符号,调整其大小和位置。
③ 在框图中输入文本。
④ 用指向线连接框图符号。
2. 教师操作演示
3. 引导学生带着问题去课本寻找答案,明确本节课的学习内容。
1. 应用列举
2. 影响分析
3. 创新思考
1. 引导学生主动思考,发散思维,参与课堂。
2. 培养学生发现问题,解决问题的能力。
3. 了解相关知识。
4. 辩论形式让学生参与并归纳总结。
活动四:
巩固练习
素质提升
【随堂检测】
1 C51 内置头文件 INTRINS.H 中的_crol_函数有什么作用?
2 for 语句的执行过程是怎样的?
3 在方法 3 中,使用位操作左移后为什么要进行或运算?
4 while 语句的执行过程是怎样的?
5 阐述使用位操作和选择程序结构实现流水显示的具体操作流程。
6 说明 for 语句的执行过程。
【分组讨论】
分组讨论,讨论三种优化方法各自的优缺点和适用场景。思考如何进一步优化程序以实现更多样化的流水效果。
1. 答案交流
2. 话题讨论
3. 效率分析
4. 挑战探讨
5. 总结汇报
知识检测与巩固
课堂小结
作业布置
课堂小结
作业布置
复习本节课内容,预习下节课内容。
板书设计
1. 方法 1—— 用头文件中的循环移位函数优化程序
2. 方法 2—— 用 for 循环程序结构优化程序
3. 方法 3—— 位操作和选择程序结构实现
教学反思
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$$
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。