内容正文:
《单片机技术及应用》(高教版第四版) 教案
课 题
制作数字显示电压表(2)
课 型
理论
课 时
2
授课班级
授课时间
授课教师
教材分析
任务为 “数字显示电子温度表” 项目的基础实践章节,聚焦 “0~5V 数字电压表制作” 目标,系统涵盖电路设计(Protel 绘制原理图)、硬件搭建(元件焊接、电路搭接)、软件编程(Keil 补充 C51 代码)及仿真验证(Proteus 调试)全流程。教材采用 “操作步骤” 递进结构:从原理图绘制到程序编写(A/D 转换函数),结合元件清单、流程图及仿真图,将 A/D 转换理论(ADC0832 引脚功能、控制方法)与工程实践深度融合。作为温度表制作(任务二)的技术铺垫,本节是前序 “单片机基础” 的实践延伸,为后续传感器信号采集(如 LM35 温度测量)及多模块协同设计奠定基础,是培养学生电子测量系统综合开发能力的核心环节。
学情分析
学生已掌握 51 单片机基础操作(如 I/O 口控制、延时函数编写)及简单电路识图能力,但对 A/D 转换原理(模拟信号转数字信号)、ADC0832 芯片时序控制(CS/CLK/DI/DO 信号配合)及电路设计软件(Protel DXP 元件库调用、自制电位器)操作经验不足。部分学生能识别基础元件(如电阻、插座),但易因元件库查找(如 “Miscellaneous Connectors.IntLib”“TI Converter Analog to Digital.IntLib”)不熟练导致原理图绘制卡顿;编程中,A/D 转换函数的位操作(dat<<=1、dat|=DIO)及时序控制(CLK 脉冲边沿对齐)逻辑抽象,需结合流程图(图 7-7、7-8)辅助理解;焊接与仿真环节,元件检测(万用表使用)、Proteus 加载 HEX 文件等实操技能需通过 “演示 - 练习 - 纠错” 强化,避免因虚焊或代码错误(如数码管段码表缺失)导致显示异常。
学习目标
知识目标:
1. 学会绘制 A/D 转换模块电路原理图。
2. 掌握焊接 A/D 转换模块电路的方法。
3. 能够搭接数字显示电压表电路。
技能目标:
1. 学会绘制主函数和 A/D 转换函数流程图。
2. 编写实现数字显示电压表功能的程序。
3. 完成仿真调试程序,观察电压表显示效果。
4. 下载程序并验证数字显示电压表的功能。
情感目标:
强化数字化工具应用能力,熟练运用 AI 技术与行业软件提升学习和工作效率。
学习重难点
重点:
1. 绘制 A/D 转换模块电路原理图和流程图。
2. 编写数字显示电压表的程序。
3. 完成仿真调试和程序下载验证功能。
难点:
1. 理解 A/D 转换模块电路的工作原理和连接方式。
2. 调试程序以确保电压表准确显示电压值。
教学方法
案例分析、讲授法、小组讨论法
课前准备
1.查找相应网站资料,课堂演示使用。
2.学生课前预习。
教学媒体
电子课件、多媒体视频
教学过程
教学环节
教师活动设计
学生活动设计
设计意图
活动一:
创设情境
生成问题
【课程导入】
在电子测量领域,数字显示电压表是常用的测量工具。今天我们将利用串行 A/D 转换器 ADC0832、单片机最小系统和动态显示电路板制作一个量程为 0 - 5V 的数字显示电压表。
【新知识传授】
· 绘制 A/D 转换模块电路原理图
(1) 启动与新建文件
① 启动 Protel DXP 2004,新建一个电路原理图文件,文件名为 “A/D 转换模块电路原理图”。
(2) 查找与拖入元件
② 在元件库 “Miscellaneous Connectors.IntLib” 中查找 “Header 2”(1 个电源插座) 和 “Header 3”(1 个 I/O 口插座),拖入工作窗口。
③ 在元件库 “TI Converter Analog to Digital.IntLib” 中查找 ADC0832,拖入工作窗口。
(3) 绘制电路
(4) 保存文件
· 焊接 A/D 转换模块电路
(1) 元件选取与检测
① 根据 A/D 转换模块电路元件清单 (见表),选取元件,用万用表检测元件的好坏。
(2) 元件布局与插装
② 绘制元件布局图,在万能电路板上按布局图依次进行元件的排列、插装。
③ 按工艺要求焊接元件,背面用直径为 0.5 - 1mm 的导线连接,直到所有的元件连接并焊完为止。焊接顺序为按键 → 电阻 →I/O 口插座 → 电源插座 → 连接导线。
(3) 焊接元件
2.引导学生带着问题去课本寻找答案,明确本节课的学习内容。
3.展示本讲学习目标。
1. 接收并查看本节课堂任务书。
2. 了解学习目标,带着目标进行学习。
3. 观察生活中常见的多媒体信息形式,思考其背后的技术支撑。
4. 针对教师给出的问题,初步发表个人见解。
5. 目标明确:跟随教师引导,明确本节课学习目标。
1.以提问的方式导入课程,让学生带着问题有针对性的进行学习。
2.通过任务实施,调动学生积极性。
活动二:
调动思维
探究新知
【新知识传授】
· 搭接电路
根据数字显示电压表电路原理图,用最小系统电路板、数码动态显示电路板和 A/D 转换模块电路板,搭接数字显示电压表电路,如图所示。
· 绘制流程图
(1) 主函数流程图
① 启动流程图绘图软件 Diagram Designer,新建一个文件,文件名为 “数字显示电压表主函数.DDD”,设置图纸大小为 A4。
② 从右侧的标准框图符号库中拖取所需的框图符号,调整其大小和位置。
③ 在框图中输入文本。
④ 用指向线连接框图符号。
⑤ 保存该文件。
· 新建文件
· 拖取框图与输入文本
· 连接框图与保存文件
· A/D 转换函数流程图
(1) A/D 转换函数
2. 教师操作演示
3. 引导学生带着问题去课本寻找答案,明确本节课的学习内容。
1. 阅读探究:阅读课本相关内容,探究多媒体技术的产生背景。
2. 概念理解:理解多媒体、多媒体技术和多媒体系统的定义,并尝试用自己的话复述。
3. 要点记录:记录多媒体技术强调的要点,加深理解。
1. 了解学生现有知识储备。
2. 巩固练习。
活动三:
调动思维
探究新知
【新知识传授】
· 编程
(1) 新建工程与源程序文件
① 启动 Keil uVision2,新建一个工程文件 “数字显示电压表.uV2”。
② 新建一个 C51 源程序文件 “数字显示电压表.C”。
uchar A_D() {
uchar i, dat;
CS = 1; // 1个转换周期开始
CLK = 0; // 为第1个脉冲作准备
CS = 0; // CS置0,片选有效
DIO = 1;
CLK = 1;
CLK = 0;
DIO = 1; // DIO置1,规定的起始信号
CLK = 1; // 第1个脉冲
CLK = 0; // 第1个脉冲的下降沿,此前DIO必须是高电平
DIO = 1; // DIO置1,通道选择信号
CLK = 1; // 第2个脉冲,第2、3个脉冲下降沿之前,DIO必须
CLK = 0; // 发送输入两位数据用于选择通道,这里选通道CHO
DIO = 0; // DIO置0,选择通道0
CLK = 1; // 第3个脉冲
CLK = 0; // 第3个脉冲下降沿
DIO = 1; // 第3个脉冲下降沿之后,输入端DIO失去作用,应置1
CLK = 1; // 第4个脉冲
for (i = 0; i < 8; i++) { // 高位在前
CLK = 1;
CLK = 0;
dat <<= 1;
dat |= (uchar)DIO;
}
CS = 1; // 片选无效
return dat; // 返回读出的A/D转换数据}
该函数实现了 ADC0832 的 A/D 转换操作,通过控制时钟信号和数据信号选择通道并读取转换结果。
(2) 代码分析
· A_D 函数
· 延时函数
void delay(unsigned int k) {
unsigned int i, j;
for (i = 0; i < k; i++) {
for (j = 0; j < 125; j++) {;}
}}
该函数用于实现毫秒级的延时,在显示和其他操作中起到控制时间的作用。
· 显示子程序
void disp(void) {
uchar i, j;
for (i = 0; i <= 3; i++) {
P2 = POS[i];
j = buf[i];
if (i == 3) {
P0 = ① ; // 在第4位数码管的右下角加小数点
} else {
P0 = ② ; // 其他位正常显示
}
delay(4);
}}
该函数实现了数码管的动态显示,根据不同的位选择显示内容,并添加小数点。
· 主程序
void main(void) {
unsigned char AD_val;
unsigned int digital_v;
while (1) {
AD_val = A_D();
digital_v = ③ ;
buf[0] = digital_v % 10;
buf[1] = digital_v % 100 / 10;
buf[2] = digital_v % 1000 / 100;
buf[3] = digital_v / 1000;
disp();
}}
主程序循环调用 A/D 转换函数获取转换结果,计算电压值并更新显示缓冲区,最后调用显示子程序进行显示。
· 仿真调试程序
① 启动仿真软件 Proteus 7.4,新建一个仿真文件 (数字显示电压表.DSN)。
② 单击元件选择按钮 “P”,从元件库中选择需要的元件。
③ 根据电路原理图绘制仿真电路图 (省略复位和时钟电路,如图所示),添加电源和地端 (VCC、GND),修改元件标号和标称值。
④ 双击芯片 AT89S51,在弹出的对话框中加载 HEX 文件 (数字显示电压表.HEX),修改时钟频率为 12 MHz。
⑤ 单击仿真按钮,用鼠标修改 RP1 的值,观察数码管显示的电压值的变换,如图 所示。
⑥ 按 Ctrl + S 组合键保存该文件。
2. 教师操作演示
3. 引导学生带着问题去课本寻找答案,明确本节课的学习内容。
1. 应用列举
2. 影响分析
3. 创新思考
1. 引导学生主动思考,发散思维,参与课堂。
2. 培养学生发现问题,解决问题的能力。
3. 了解相关知识。
4. 辩论形式让学生参与并归纳总结。
活动四:
巩固练习
素质提升
【随堂检测】
1 编程时,A/D 转换函数中,通道选择信号对应的操作是( )
A. DIO=0
B. DIO=1
C. CS=0
D. CS=1
2 简述制作数字显示电压表中编程的步骤。
3 简述绘制 A/D 转换模块电路原理图的步骤
【分组讨论】
讨论如何优化数字显示电压表的电路设计,提高其稳定性。分析在实际应用中,数字显示电压表可能存在的安全隐患及解决办法。
1. 答案交流
2. 话题讨论
3. 效率分析
4. 挑战探讨
5. 总结汇报
知识检测与巩固
课堂小结
作业布置
课堂小结
作业布置
复习本节课内容,预习下节课内容。
板书设计
1. 绘制 A/D 转换模块电路原理图
2. 焊接 A/D 转换模块电路
3. 搭接电路
4. 绘制程序流程图
5. 编程
6. 仿真调试程序
教学反思
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$$