单片机:流水灯实验 您所在的位置:网站首页 单片机实验程序调试 单片机:流水灯实验

单片机:流水灯实验

2023-11-12 07:39| 来源: 网络整理| 查看: 265

一、 实验目的

(一) 熟悉单片机最小系统; (二) 熟悉开发板上单片机 I/O 口与 LED 灯的电路连接, 学会读原理 图; (三) 掌握 keil C 软件的使用、 程序的调试; (四) 通过编程控制 8 个 LED 灯循环点亮, 熟悉单片机 I/O 口的输出 控制; (五) 掌握点亮 LED 灯的控制方法。

二、 主要仪器设备及耗材

(一) 电脑一台; (二) 单片机开发板一套。 三、 实验原理 根据所学的单片机知识及电路知识, 采用 C 语言编程实现单片机 I/O 口输出控制 8 个 LED 灯循环点亮。单片机最小系统如图 1.1 所示, 8 个 LED 灯由单片机 P2 口控制, 其电路原理图如图 1.2 所示。 在这里插入图片描述 在这里插入图片描述

四、 实验内容及步骤

(一) 实验内容 采用三种方法编程控制 8 个 LED 灯间隔 500ms 循环点亮。 方法 1: 采用特殊功能位声明的方式使 8 个 LED 灯间隔 500ms 循环点第 4 页 共 58 页 亮; 方法 2: 采用调用函数(总线) 的方式使 8 个 LED 灯间隔 500ms 循环 点亮; 方法 3: 采用数组(总线) 的方式使 8 个 LED 灯间隔 500ms 循环点亮。 (二) 实验步骤 1.根据电路原理图编写 C 程序, 调试并烧写入单片机;

#include #include //方法2:采用调用函数(总线)的方式使8个LED灯间隔500ms循环点亮; sbit temp = P2; code char led[] = {0xfe, 0xfd, 0xfb, 0xf7, 0xef, 0xef, 0xdf, 0xbf, 0x7f, 0x7e, 0xbd, 0xdb, 0xe7, 0xdb, 0xdb, 0xe7, 0x7e, 0x00}; void delay(unsigned int ms) { int i; while(ms--) { for(i=110; i>0; i--); } } void main() { //自己调用方法 ...... } void method_1()方法1:采用特殊功能位声明的方式使8个LED灯间隔500ms循环点亮; } while(1) { P2 = 0xfe; delay(500); P2 = 0xfd; delay(500); P2 = 0xfb;// 1111 1011 delay(500); P2 = 0xf7; //1111 0111 delay(500); P2 = 0xef; //1110 1111 delay(500); P2 = 0xdf; delay(500); P2 = 0xbf; delay(500); P2 = 0x7f; delay(500); } } void method_2()//方法2:采用调用函数(总线)的方式使8个LED灯间隔500ms循环点亮;即左移或右移的方式 { while(1) { temp = _cror_(temp,1); delay(500); } } void method_3()//方法3:花式流水灯 { int i; while(1) { for(i=0; i


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有