下载此文档

单片机流水灯实验总结.doc


文档分类:高等教育 | 页数:约35页 举报非法文档有奖
1/35
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/35 下载此文档
文档列表 文档介绍
单片机流水灯实验总结单片机实现流水灯实验 51 单片机中流水灯实验流水灯程序单片机流水灯从左向右篇一:单片机实验报告——流水灯电子信息工程学系实验报告课程名称: 单片机原理及接口实验项目名称: 实验 2 流水灯实验时间: 2011-10-21 班级: 电信 092 姓名:蔡松亮学号: 910706247 一、实验目的: 进一步熟悉 keil 仿真软件、 proteus 仿真软件的使用。了解并熟悉单片机 I/O 口和 LED 灯的电路结构, 学会构建简单的流水灯电路。掌握 C51 中单片机 I/O 口的编程方法和使用 I/O 口进行输入输出的注意事项。二、实验原理: MCS-51 系列单片机有四组 8 位并行 I/O 口,记作 P0 、 P1 、 P2和 P3 。每组 I/O 口内部都有 8 位数据输入缓冲器、8 位数据输出锁存器及数据输出驱动等电路。四组并行 I/O 端口即可以按字节操作, 又可以按位操作。当系统没有扩展外部器件时, I/O 端口用作双向输入输出口; 当系统作外部扩展时, 使用 P0 、 P2 口作系统地址和数据总线、 P3 口有第二功能, 与 MCS-51 的内部功能器件配合使用。以 P1 口为例,内部结构如下图所示: 图 P1 口的位结构作输出时: 输出 0时,将0 输出到内部总线上, 在写锁存器信号控制下写入锁存器,锁存器的反向输出端输出 1 ,下面的场效应管导通, 输出引脚成低电平。输出 1时, 下面的场效应管截止, 上面的上拉电阻使输出为 1。作输入时: P1端口引脚信号通过一个输入三态缓冲器接入内部总线, 再读引脚信号控制下,引脚电平出现在内部总线上。 I/O 口的注意事项,如果单片机内部有程序存贮器,不需要扩展外部存贮器和 I/O 接口,单片机的四个口均可作 I/O 口使用; 四个口在作输入口使用时, 均应先对其写“1”, 以避免误读; P0 口作 I/O 口使用时应外接 10K 的上拉电阻,其它口则可不必; P2 可某几根线作地址使用时, 剩下的线不能作 I/O 口线使用; P3 口的某些口线作第二功能时,剩下的口线可以单独作 I/O 口线使用。三、实验环境: 硬件: PC 机, 基本配置 CPU PII 以上, 内存 2G 软件: keil 2, Proteus 四、实验内容及过程:1 、用 Proteus 画流水灯电路图流程: 1)、运行 Proteus 仿真软件, 单击 pick from libraries, 打开搜索元器件窗口,如图 1 所示: 图1 打开搜索元器件窗口 2) 、搜索添加元器件,如图 2 所示: 图2 搜索添加元器件窗口 3) 、添加元器件,修改元器件的参数,绘制流水灯原理图, 元器件参数为 c1=c2=20pf 、 c3=10uf ; R1=R2=R3=R4=R5=R6=R7=R8=470 欧姆、 R9=10k 欧姆;晶振=12M;VCC=5V 。总电路图如图 3 所示: 图3 流水灯电路原理图 2 、用 keil 建项目流程: 1) 、运行 keil 2 软件,启动后,点击 Project 菜单新建项目, 新建项目后,选择为 AT89C51 的仿真单片机的型号,单击 File 选择 New 新建程序文件,保存后,右击 Source Group 1 添加入程序文件。 2)、编写程序, 右击 Target 1 打开设置输出 HEX 窗口, 如图 4 所示: 图4 打开设置输出 HEX 窗口 3)、设置输出 HEX 文件, 勾选上 Output 下的 Create HEX Fi:, 单击确定保存,运行程序得到 HEX 文件, 如图 5 所示: 图5 设置输出 HEX 文件 3 、实验内容: 1)、8个 LED 灯从最高位依次点亮, 每次只亮一盏灯, 依此循环。新建 keil 文件,编写程序,程序如下: #include <> #include <> #define uint unsigned int #define uchar unsigned char void defay(uint z){ uint x,y; for(x=100;x>0;x--) for(y=z;y>0;y--); } uchar temp; void main() { temp=0xfe; P2=temp; while(1) { temp=_crol_(temp,1); defay(500); P2=temp; }}2) 、编写程序使 8个 LED 灯从两边向中间循环点亮。编写程序,程序如下: uchar temp,m,n; uint i; void main() { m=0xfe; n=0x7f; while(1) { P

单片机流水灯实验总结 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数35
  • 收藏数0 收藏
  • 顶次数0
  • 上传人raojun00001
  • 文件大小87 KB
  • 时间2017-04-23
最近更新