单片机实验报告
实 实 验 验 报 报 告
实验课程:
单片机原理及应用
班
级:
12 自动化 2 班
学
号:
姓
名:
教
师:
张
玲
成
绩:
实 验 日 期 :
年
月
日
实验名称:
实验 1-—计数显示器
一、 实验目得: 学习 Proteus 软件得使用,掌握单片机原理图得绘图方法。
二、 实验内容:
ﻩ1、绘制“计数显示器”电路原理图; 2、利用提供得hex 文件验证此电路得运行效果。
三、 实验要求:
提交得实验报告中应包括:1、绘图方法简述,要求说明元件与电源得选取、摆放及属性编辑,总线与标签得画法等内容;2、电路原理图; 3、仿真运行效果展示,要求就仿真文件加载方法及 3~4幅运行截图进行简要说明;4、实验小结,说明遇到得主要问题或实验 1 体会等. 参考电路原理图如下:
元件类别 电路符号 元件名称 Microprocessor ICs “U1" 80C51 Miscellaneous “X1”/12MHz CRYSTAL Capacitors “C1”~“C2"/1nF CAP Capacitors “C3”/22μF CAP—ELEC Resistors Packs “RP1"/7—100Ω RESPACK—7 Resistors “R1"/100Ω RES Optoelectronics “LED1”~“LED2” 7SEG--CAT-GRN Switches & Relays “BUT” BUTTON 1、 、及 编程思路及 C51 源程序:
2 、电路原理图:
:
3、仿真运行效果展示:
4 、实验小结 :
熟悉Proteus 软件,了解软件得结构组成与功能;学习 ISIS 模块得使用方法, 学会设置图纸、选元件、线画总线、修改属性等基本操作;学会可执行文件 加载及程序仿法;理解Proteus在单片机开发中得作用,完成单片机电路原 理图得绘制. 实验名称:
实验 2——LED 指示灯循环控制
一、
实验目得 熟悉μVision3 编译软件、掌握 C51编程与调试方法。
二、
实验内容 1、按照教材 P243 得图 A、34,绘制实验二电路原理图; 2、编写 C51 程序,实现 8 个 LED 灯依次点亮得功能: P0、0→P0、1→ P0、2→P0、3→ ┅ →P0、7→P0、6→P0、5→ ┅ →P0、0 得顺序,无限循环,间隔约50ms; 3、观察仿真结果,完成实验报告。
三、
实验要求 1、采用两种加载并运行可执行文件得方法,即proteus独立运行与prote
us + Keil 联合运行,体会其中得差异与意义; 2、练习采用单步、断点以及监视窗等手段进行程序调试得方法; 3、观察仿真结果,完成实验报告:绘制得电路原理图、编程思路分析及 C51源程序、调试过程简述,仿真运行效果以及实验小结。
1 、 电路原理图:
:
及 2、编程思路及 C51 源程序:
3 、仿真运行效果:
4 、实验小结 :
通过本次实验我熟悉 uVision3 编译软件了解软件得结构组成与功能学习 C51 语言得程序设计方法)学会在 uVision3中进行 C51 程序录入、编译、与 调试理解 Proteus 与 Keil 联合得仿真原理实现 LED 指示灯循环控制功能。
更好得将 C 语言与 C51 语言联系在了一起)学到得知识能准确得利用了出来。
实验名称:
实验3——指示灯与数码管得中断控制
一、
实 验目得 掌握外部中断得工作原理,学会中断程序设计. 二、 实验内容 1、按照教材帕图 A、53,绘制实验四电路原理图; 2、要求采用外部中断原理完成本次实验,其中按键 K1、K2 均设置为下降沿触发方式,自然优先级; 3、编写 C51 程序实现如下功能:开机后 D1灭灯,LED1黑屏,随后单击 K1→D1状态反转,单击 K2 →LED1 从 0 开始循环显示0~F 字符。
4、观察仿真结果,完成实验报告。
三、
实验要求 提交得实验报告中应包括:电路原理图,外部中断工作原理阐述(以 K1 为例说明中断响应过程),C51 源程序(含流程图与注释语句),运行效果(含运行截图
与说明),实验小结. 1 、电路原理图 :
2 、外部中断工作原理阐述:
持续按下 K1 则 D1 将“亮→灭→亮→灭→„→亮→灭如此循环,表明实现了 K1 对应于 D1 状态反转这个功能;持续按下持续按 K2 则数码显示管依次显 示 1-F,实现了 K2 对应于 0~F 间得数码管加一计数显示.
3、 、及 编程思路及 C51 源 源 程序:
4 、仿真运行效果:
5 、实验小结:
通过实验对 Protues 有了更多得了解,同时了解到中断系统在实际中得更好 应用。经过编程操作起来更加熟练能很快得完成绘图,编程时也得心应手, 能熟练得运用软件找出自己所编程中得语法问题及其她问题,并以改正。
实验名称:
实验4—- 电子秒表显示器
一、 实 实 验目得 掌握定时/计数器得中断法工作原理,熟悉 C51 编程与调试方法
二、 实验要求:
1、实验电路原理图如教材 P260 A、65 图所示.程序开始时显示“00”;当1s 产生时,秒计数加1;秒计数到 59 后,自动从“00”开始。
2、采用12MHz晶振频率,T0 定时方式 1、50ms 定时中断法编程(1s 需要经过 20 软循环)(流程图与参考程序模版如下所示). //定时中断方式实现得电子秒表
15( )件文头ﻩ(定义无符号字符型变量 t—-中断次数计数器,并赋初值0 (定义无符号字符型变量 second—-秒计数器,并赋初值 0 (定义位于 ROM 区得无符号字符型数组table-—显示字模) timer0()
(中断函数关键词) { ﻩ( )0T 闭关ﻩ (初值重装载 0x3cb0)
( )1增器数计数次断中ﻩ {)02==t(fiﻩﻩ
ﻩ
// 秒1于当相,次 02断中若ﻩ
;0=tﻩﻩﻩﻩﻩﻩﻩﻩ //中断次数计数器清零 ﻩ
;++dnocesﻩﻩ ﻩ // 零清器数计秒ﻩ
} ( )零清,06 到达值器数计秒若ﻩﻩ(
)值示显得 dnoces 量变出输别分口 2P与0Pﻩ( )0T动启ﻩﻩ} main(){
ﻩ
;]01/dnoces[elbat=0Pﻩﻩ // 值示显出输别分口 2P 与 0Pﻩ
;]01%dnoces[elbat=2Pﻩ (定义T0 定时方式 1—-TMOD) 05( )0LT与0HT——载加0bc3x0值初出溢 smﻩ( )AE,0TE——化始初断中ﻩ (启动 T0)
(死循环)
3 3 、编程思路及C1 51 源程序: :
4 、仿真运行效果:
5、实验小结 :
本次实验进行得比较顺利,根据指导材料中提供得流程图完成了源程序得编 写,成功生成了、hex文件,经过仿真运行达到了预期得实验结果.通过本次得 实验,我更加深入得了解到单片机定时/计数功能实现得机理,通过与单片机中 断功能得结合,可以完成更多得预期功能。但就是进过讨论我也发现,程序还就是存 在很大得缺陷,想要实现更加准确实现计时功能还需综合利用各种知识完善程 序。
上一篇:单片机实验报告1