单片机原理数码管动态显示实验-单片机原理-实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
宁德师范学院计算机系
实验报告
(2014— 2015学年 第2学期)
实验名称
数码管动态显示实验 业计算机科学与技术(非师范) 2012
指导教师 实验日期学号 B47 姓名 王秋
课程名称
单片机原理
杨烈君
实验目的:
实验要求:
1. 在Proteus 软件中画好51单片机最小核心电路,包括复位电路和晶振电路
2. 在电路中增加八位 7段数码管(共阳/共阴自选),将P2 口作数据输出口与 7段数码管数据 引脚相连,P3引脚输出位选控制信号
实现类似时钟的效果,如“ 13-23-25 ” 13时23分25秒 扩展要求: 结合LED 显示,实现带数码显示的交通灯
实验设备(环境):
1 .计算机
2. Proteus ISIS 7 Professional
3. Keil 应用程序 实验内容:
数码管动态显示技术要求实现:
1•动态显示法,实现数码管分别显示数字
1-8 ; 2 •实现指定数值的显示 (可使用缓存数值)
(); 3 .实现类似时钟的效果,如“
13-23-25 ” 13时23分25秒;
4 •实现时钟的自动计时; 扩展要求: 结合LED 显示,实现带数码显示的交通灯;
1. 巩固Proteus 软件和Keil 软件的使用方法
2. 学习端口输入输出的高级应用
3. 掌握7段数码管的连接方式和动态显示法
4. 掌握查表程序和延时等子程序的设计
3. 在Keil 软件中编写程序,采用动态显示法,实现数码管分别显示数字
1-8 4. 实现指定数值的显示
(可使用缓存数值)
5.
6. 实现时钟的自动计时
7. 应用程序
实验步骤、实验结果及分析:
1实验步骤:
1、使用Proteus ISIS 7 Professional 应用程序,建立一个.DSN文件
2、在“库”下拉菜单中,选中“拾取元件”(快捷键P),分别选择以下元件:AT89C51CAPCA P-ELEC CRYSTAL RES PACK-8
3、构建仿真电路:
连接图
显示1-8
显示
显示时间时钟自动计时
连接图
红绿灯效果图1 红绿灯效果图2
4、 创建一个 Keil 应用程序:新建一个工程项目文件;为工程选择目标器件( AT89C52);为工程 项目创建源程序文件并输入程序代码;保存创建的源程序项目文件;把源程序文件添加到项目中。
5、 把用户程序经过编译后生成的 2实验程序 < 流程图>
:开始、
V
P2=~Ledco de[i]
i++
I
调用延时 函数
HEX 文件添加到仿真电路中的处理器中(编辑元件7文件路径) —♦
P3=1<
定义数组
Ledcode[]
N
<开始J
于电路中采用共阳极的数码管,所以当 P2端口相应的引脚为 0时,对应的数码管段点亮。程 序中预设了数字0-9的段码。由于是让八个数码管显示不同的数值,所以要用扫描的方式来实现。 在实验中,预设的数字段码表存放在数组 LedCode 中,由于段码表是固定的,因此存储类型可
设为code.在Proteus 软件中按照要求画出电路,再利用 Keil 软件按需要实现的功能编写
c 程序, 生成Hex 文件,把Hex 文件导到Proteus 软件中进行仿真。
心得体会:
实验数码管显示程序的编程方法
根据要使用的数码管的具体位置来确定扫描初值和扫描方向。
查表将要显示的数据转换为能使数码管正确显示相对应的段码。
指导教师评语:
1、 完成所有规定的实验内容,实验步骤正确,结果正确;
2、 完成绝大部分规定的实验内容,实验步骤正确,结果正确;
3、 完成大部分规定的实验内容,实验步骤正确,结果正确;
评定等级:A (优秀)B (良好)C (中等)D (及格)E (不及格)
成绩评定
教师签字
备注:
注:1、报告内的项目或设置,可根据实际情况加以补充和调整
2 、教师批改学生实验报告应在学生提交实验报告 10日内
因此可定义扫描函数,接到单片机的
P3 口。
1)
先准备好要显示的数据,放入相应的显示存储单元中。 2)
3)
根据使用数码管的个数来确定扫描的位数。 4)
5)
分时送段码和位码,数码管开始循环显示。