版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《单片机技术及应用》工作页学习任务单片机控制数码管实现电子秒表一、项目目标知识目标:1)掌握数码管显示数字的工作原理;2)掌握数码管静态显示和动态显示原理3)掌握单片机的内部数据存储器结构;4)掌握数组和码表的编写;5)掌握段选程序的设计和编写;6)掌握位选程序的设计和编写;7)掌握显示程序的设计和编写;8)掌握延时动态数码管显示方法;9)掌握相应C语言指令的应用;技能目标:1)熟练使用KEIL软件的使用;2)熟练使用万利win3软件的使用;3)掌握AT89S52单片机程序的下载方法4)进一步巩固元器件的识别、元器件的焊接、元器件的组装与调试;能力目标:1)培养学生接受、加工、存储、运用信息的能力;2)培养学生分析问题、解决问题的能力、应用知识的能力;3)培养学生沟通、协调、协作及一定的社会能力;4)培养学生自我展示、自我推销的能力;二、项目描述与演示●项目描述随着电子技术及单片机技术发展,单片机应用领域越来越广泛,主要应用于控制领域,比如交通灯的控制,数字的显示等。本项目要求编写三种数字数码管程序,一种利用单片机控制八段LED数码管显示“01234567”8位数字,它包括两种显示电路(静态显示和动态显示),一种利用单片机控制数码管显示三位数相加,每秒加1,一种利用单片机控制数码管时钟显示,格式为时-分-秒,每两个数码管显示时分或者秒,具体如下:1、单片机控制八段LED数码管显示“01234567”62、系统上电后,加载程序运行,八段数码管LED7、LED6、LED5、LED4和LED2、LED1、LED0上分别显示为不显示、不显示、不显示、不显示、不显示、三位数的百位,十位和个位。三位数每秒加1,直到999后清0。●项目演示软件演示1:事先录制视频播放软件演示2:现场连接电路,演示实验现象三、项目分析分析一:八段LED数码管的工作原理八段LED数码管是一种常用的数字显示元件,将a,b,c,d,e,f,g,dp八只发光二极管做成条状,按下图进行排列而成,除了显示数字的七段之外还有一个小数点dp,实际为八段显示。通过七段发光段的不同组合,可以显示0~9,A~F等数字和字符。八段LED数码管可根据内部发光二极管的连接方式,可分为共阴极和共阳极两种。如下图所示。单片机控制七段LED数码管显示,需控制段选码,如果有多个数码管时,需控制位选码。如单片机控制8位数字数码管显示原理图所示。填写八段LED数码管显示数字和字符对应的十六进制数表分析二:74LS377是八D锁存器其引脚如下图所示。在74LS377片选CE为低电平时,选中该芯片,在CP为上升沿时能把输入信号锁入芯片中。74LS377的真值表分析三:硬件线路和段选位函数分析1、结合电路段选函数分析voidwriteDuan(ucharx) //写段码函数{ out0=x; //写入段码 _nop_(); LED_CS1=0; //数码管段选信号有效 LED_WR=0; //数码管写信号有效 _nop_(); LED_WR=1; //数码管写信号无效 LED_CS1=1; //数码管段选信号无效}2、结合电路位选函数分析voidwriteWei(ucharx) //写位码函数{ out0=x; //写入位码 _nop_(); LED_CS2=0; //数码管位选信号有效 LED_WR=0; //数码管写信号有效 _nop_(); LED_WR=1; //数码管写信号无效 LED_CS2=1; //数码管位选信号无效}3、结合电路显示函数分析voiddisplay() //显示函数(八位扫描方式){ uchari; ucharwei=0xfe; //位码赋初值选中第0个数码管 for(i=0;i<8;i++) { writeDuan(TAB[a[i]]); //根据显示缓冲区内容查TAB数组字模 writeWei(wei); //在相应的位显示 delayms(2); //显示2毫秒时间 writeWei(0xff); //熄灭所有位,消除重影 wei=(wei<<1)|0x01; //选中下一个数码管 }}四、项目实施1、学生根据电路图和程序理解和掌握电路和程序的原理和使用。2、学生分组讨论,交换心得体会3、对学生掌握情况,进行提问、考核。五、项目评估学习任务评价表评价项目评价内容配分评价标准得分程序编制、调试、运行理解八段数码管显示原理20分理解八段数码管显示原理,记忆共阳极八段数码管码表10分,并根据要求显示符号设计码表10分74LS377是八D锁存器10分能正确分析和理解377锁存器的使用原理得10分硬件线路和段选位函数分析20分看的懂数码管模块电路图5分结合电路图理解分析段选函数5分结合电路图理解分析位选函数5分结合电路图理解分析显示函数5分
任务一单片机控制8只数码管静态显示一、任务目标知识目标1)掌握八段LED数码管的显示工作原理;2)掌握74LS377以及硬件线路和段选位函数分析3)进一步巩固单片机的C语言指令:数组,断码表编写,子函数的编写。4)学会延时子程序的编写和for,while命令的的使用。能力目标1)培养学生接受、加工、存储、运用信息的能力;2)培养学生分析问题、解决问题的能力、应用知识的能力;3)培养学生沟通、协调、协作及一定的社会能力;4)培养学生自我展示、自我推销的能力;技能目标1)熟练使用KEIL软件的使用;2)熟练掌握万利win3软件的使用;3)熟练AT89X52硬件实施的下载方法;二、任务描述与演示●项目描述本例单片机P0口连接8只数码管,通过单片机编写单片机程序控制8只数码管静态显示01234567。●项目演示软件演示:1、录制视频演示2、现场演示现象三、任务分析1、硬件电路的设计2、软件流程图四、任务实施1、打开万利win3软件,新建项目,按照要求设置。并新建文件,编写程序。#include<at89x52.h> //包含89x52头文件#include<intrins.h> //包含intrins头文件#defineuintunsignedint //无符号整型定义#defineucharunsignedchar //无符号字符型定义#defineout0P0 //定义out0为P0口sbitLED_CS1=P1^0; //数码管段选信号端sbitLED_CS2=P1^1; //数码管位选信号端sbitLED_WR=P1^2; //数码管写信号端uchara[8]; //数码管八位显示缓冲区ucharcodeTAB[]={ //共阳极数码管字模 //0123456789 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90, //abcdef 0x88,0x83,0xc6,0xa1,0x86,0x8e, //熄灭- 0xff,0xbf };voiddelayms(uintx) //延时毫秒函数{ uchari; while(x--) for(i=0;i<123;i++);}voiddelayus(ucharx) //延时微秒函数{ while(--x);}voidwriteDuan(ucharx) //写段码函数{ out0=x; //写入段码 _nop_(); LED_CS1=0; //数码管段选信号有效 LED_WR=0; //数码管写信号有效 _nop_(); LED_WR=1; //数码管写信号无效 LED_CS1=1; //数码管段选信号无效}voidwriteWei(ucharx) //写位码函数{ out0=x; //写入位码 _nop_(); LED_CS2=0; //数码管位选信号有效 LED_WR=0; //数码管写信号有效 _nop_(); LED_WR=1; //数码管写信号无效 LED_CS2=1; //数码管位选信号无效}voiddisplay() //显示函数(八位扫描方式){ uchari; ucharwei=0xfe; //位码赋初值选中第0个数码管 for(i=0;i<8;i++) { writeDuan(TAB[a[i]]); //根据显示缓冲区内容查TAB数组字模 writeWei(wei); //在相应的位显示 delayms(2); //显示2毫秒时间 writeWei(0xff); //熄灭所有位,消除重影 wei=(wei<<1)|0x01; //选中下一个数码管 }}voidmain() //主函数{ uchari; for(i=0;i<8;i++) //给显示缓冲区赋值为01234567 a[i]=i; while(1) //循环显示 display();}2、运行程序,调试项目学一学1、数组的命令格式及其含义,例如:uchara[8];2、定义码表格式及其含义,例如:ucharcodeTAB[]={ //共阳极数码管字模 //0123456789 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90, //abcdef 0x88,0x83,0xc6,0xa1,0x86,0x8e, //熄灭- 0xff,0xbf };3、左移<<和或运算|指令知识扩展----还能怎么做显示你想象的数码管可以显示的符号(比如L和n、U等)。如何清晰的看到数码管是逐个显示的。程序一程序二五、任务评估评价项目评价内容配方评价标准得分程序编制、调试、运行指令学习10分正确理解所用指令的意义程序分析、设计20分能正确分析程序功能得10分能根据要求设计类似程序得10分程序调试与运行20分程序输入正确得5分符合项目要求得5分能修改程序并分析得10分
任务二单片机控制8位数码管动态显示一、任务目标知识目标1)掌握八段LED数码管的显示工作原理;2)掌握74LS377以及硬件线路和段选位函数分析3)进一步巩固单片机的C语言指令:数组,断码表编写,子函数的编写。4)学会延时子程序的编写和for,while命令的的使用。5)掌握动态数码管显示延时的方法能力目标1)培养学生接受、加工、存储、运用信息的能力;2)培养学生分析问题、解决问题的能力、应用知识的能力;3)培养学生沟通、协调、协作及一定的社会能力;4)培养学生自我展示、自我推销的能力;技能目标1)熟练使用KEIL软件的使用;2)熟练掌握万利win3软件的使用;3)熟练AT89X52硬件实施的下载方法;二、任务描述与演示●项目描述本例单片机P0口连接8只数码管,通过单片机编写单片机程序控制8只数码管静态显示。使用YL-236或者YL2296型单片机实训考核装置中显示模块中的数码管显示器,模拟一个电子秒表。具体要求:右边三位数码管能实现0~999秒的循环计数。当秒数值计满999,秒数值清零,然后反复循环。●项目演示软件演示:1、录制视频演示2、现场演示现象三、任务分析1、硬件电路的设计2、程序的设计(1)设计原理 软件延时计时,主要通过循环语句来实现,确定循环的次数非常关键。 设置循环次数为58次,由于每位数码管延时2×12/11.0592mS,58次调用显示函数所花时间为58×8×2×12/11.0592=1006.9mS,接近1秒。(2)任务2-2-2的程序流程图四、任务实施1、打开万利win3软件,新建项目,按照要求设置。并新建文件,编写程序。#include<at89x52.h> //调用89x52头文件#include<intrins.h> //调用intrins头文件#defineuintunsignedint //无符号整型定义#defineucharunsignedchar //无符号字符型定义#defineout0P0 //定义out0为P0口sbitLED_CS1=P1^0; //数码管段选信号端sbitLED_CS2=P1^1; //数码管位选信号端sbitLED_WR=P1^2; //数码管写信号端uchara[8]; //数码管八位显示缓冲区ucharcodeTAB[]={ //共阳极数码管字模 //0123456789 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90, //abcdef 0x88,0x83,0xc6,0xa1,0x86,0x8e, //熄灭- 0xff,0xbf };voiddelayms(uintx) //延时毫秒函数{ uchari; while(x--) for(i=0;i<123;i++);}voiddelayus(ucharx) //延时微秒函数{ while(--x);}voidwriteDuan(ucharx) //写段码函数{ out0=x; //写入段码 _nop_(); LED_CS1=0; //数码管段选信号有效 LED_WR=0; //数码管写信号有效 _nop_(); LED_WR=1; //数码管写信号无效 LED_CS1=1; //数码管段选信号无效}voidwriteWei(ucharx) //写位码函数{ out0=x; //写入位码 _nop_(); LED_CS2=0; //数码管位选信号有效 LED_WR=0; //数码管写信号有效 _nop_(); LED_WR=1; //数码管写信号无效 LED_CS2=1; //数码管位选信号无效}voiddisplay() //显示函数(八位扫描方式){ uchari; ucharwei=0xfe; //位码赋初值选中第0个数码管 for(i=0;i<8;i++) { writeDuan(TAB[a[i]]); //根据显示缓冲区内容查TAB数组字模 writeWei(wei); //在相应的位显示 delayms(2); //显示2毫秒时间 writeWei(0xff); //熄灭所有位,消除重影 wei=(wei<<1)|0x01; //选中下一个数码管 }}voidmain() //主函数{
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 彩灯控制器课程设计前言
- 程序设计课程设计系统
- 基于生物特征身份认证系统设计教程课程设计
- 基于日志审计的异常行为检测评估课程设计
- 抹灰工岗位抹灰作业考试试卷及答案
- 测量放大电路课程设计
- 密室逃脱 NPC 培训技师考试试卷及答案
- 媒介投放助理岗位业务考试试卷及答案
- 公司员工考勤奖惩制度
- 商业密码改造方案范本
- 《团队协作与沟通技巧》课件
- 眼镜片材料的选择-眼镜片材料
- 专业实践(艺术考察)-雕塑 教学大纲
- 河南师范大学《语文学科课程与教学论》2023-2024学年第一学期期末试卷
- DBJ50∕T-043-2024 工程勘察标准
- DZ∕T 0206-2020 矿产地质勘查规范 高岭土、叶蜡石、耐火粘土(正式版)
- 行政法与行政诉讼法案例教程 课件 殷兴东 第1-4章 行政法的基本原理-行政复议
- 北京大学医学部生物物理学系课件
- 生物统计附试验设计第一章绪论
- (完整版)幼儿园园本课程实施方案
- 乳房的解剖与发育
评论
0/150
提交评论