led流水灯 动态数码管 52单片机

#include "reg52.h"
#include<intrins.h>
void delay(int i)
{
	while(i--);
}
void main()
{
	char i;
	led=0xfe;
	delay(50000);
	while(1)
	{
		for(i=0;i<7;i++)
		{
			P2=_crol_(P2,1);
			delay(50000);
		}
		for(i=0;i<7;i++)
		{
			P2=_crled_(P2,1);
			delay(50000);
		}
	}
}

  

 1 #include "reg52.h"
 2 sbit LSA=P2^2;
 3 sbit LSB=P2^3;
 4 sbit LSC=P2^4;
 5 u8 code smgduan[17]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
 6                     0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};//显示0~F的值
 7 void delay(int i)
 8 {
 9     while(i--);
10 }
11 void DigDisplay()
12 {
13     char i;
14     for(i=0;i<8;i++)
15     {
16         switch(i)     //位选,选择点亮的数码管,
17         {
18             case(0):
19                 LSA=0;LSB=0;LSC=0; break;//显示第0位
20             case(1):
21                 LSA=1;LSB=0;LSC=0; break;//显示第1位
22             case(2):
23                 LSA=0;LSB=1;LSC=0; break;//显示第2位
24             case(3):
25                 LSA=1;LSB=1;LSC=0; break;//显示第3位
26             case(4):
27                 LSA=0;LSB=0;LSC=1; break;//显示第4位
28             case(5):
29                 LSA=1;LSB=0;LSC=1; break;//显示第5位
30             case(6):
31                 LSA=0;LSB=1;LSC=1; break;//显示第6位
32             case(7):
33                 LSA=1;LSB=1;LSC=1; break;//显示第7位
34         }
35         P0=smgduan[i];//发送段码
36         delay(100); //间隔一段时间扫描
37         P0=0x00;//消隐
38     }
39 }
40
41 void main()
42 {
43     while(1)
44     {
45         DigDisplay();  //数码管显示函数
46     }
47 }

原文地址:https://www.cnblogs.com/mawenqi-barry/p/9789088.html

时间: 2024-11-08 23:55:17

led流水灯 动态数码管 52单片机的相关文章

第一个FPGA工程—LED流水灯

这一章我们来实现第一个FPGA工程-LED流水灯.我们将通过流水灯例程向大家介绍一次完整的FPGA开发流程,从新建工程,代码设计,综合实现,管脚约束,下载FPGA程序.掌握本章内容,大家就算正式的开始入门FPGA开发了. 1.1.1.电路说明 1.1.2.新建工程 第一步:从开始菜单启动Quartus II 13.1(64 bit) ,如下图. 第二步:菜单栏选择File->New Project Wizard,新建工程. 第三步:弹出新建工程对话框,点击Next,下一步. 第三步:如下图,依次

LED流水灯(一)

7个寄存器 是R1-R16.(当然,里面有很多是分几个模式的,所以总共有37个)类似于单片机的R0-R7. GPXCON,GPXDAT等等是另外的寄存器,应该叫,特殊功能寄存器,类似于单片机的P0,P1,TCON,等等. GPXCON:是X管脚的控制寄存器,控制它们的模式,比如输出模式,输入模式……GPXDAT:是X管脚的数据寄存器,存储它们的数据, GPIO ,通用的输入输出,其引脚可供编程使用,对于简单的外部设备,比如控制一个LED 灯的亮灭,自然 只需要一位 信号就够了. 使用传统的 串行

嵌入式STM32程序编写基本流程(LED流水灯)

LED流水灯程序初始化流程 [cpp] view plain copy //1.定义结构体变量 GPIO_InitTypeDef GPIO_InitStructure; //2.开启GPIOC的外部时钟,不同的外设开启不同的时钟,IO口复用时两个时钟都要开启.stmf10x_rcc.h RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE); //3.设置要控制的GPIO管脚 GPIO_InitStructure.GPIO_Pin=GPIO_Pin

Linux下控制GPIO实现LED流水灯(DM8168)

首先加载驱动模块,应用程序通过调用API实现GPIO控制功能. 驱动程序: 1 /* 2 * fileName: led_gpio.c 3 * just for LED GPIO test 4 * GP1_14 -> HDD 5 * GP1_15 -> REC 6 * GP1_27 -> NC 7 * GP1_28 -> IR 8 */ 9 10 #include <linux/device.h> 11 #include <linux/fs.h> 12 #i

利用简单的有限状态机(FSM)来实现一个简单的LED流水灯

有限状态机,(英语:Finite-state machine, FSM),又称有限状态自动机,简称状态机,是表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型. 有限状态机是指输出取决于过去输入部分和当前输入部分的时序逻辑电路.一般来说,除了输入部分和输出部分外,有限状态机还含有一组具有"记忆"功能的寄存器,这些寄存器的功能是记忆有限状态机的内部状态,它们常被称为状态寄存器.在有限状态机中,状态寄存器的的下一个状态不仅与输入信号有关,而且还与该寄存器的当前状态有关,因此有限状

WLGK-51单片机接口技术基础实验 ——LED闪烁灯

WLGK-51单片机接口技术基础实验-LED闪烁灯 当我们开始接触单片机,首先接触的第一个实验就是LED灯的使用,类似于我们学习软件开始接触的第一个程序"HelloWorld",这个实验是带领我们走入"软硬件综合使用"的一个很好入门示例,51单片机是他的一个载体.下面小伙伴们,让我们一起来揭开LED的神秘面纱吧! 万立高科官网:www.wanligaoke.com 万立高科官方商城:http://www.wlgkbj.com 万立高科淘宝直销店铺:https://r

FPGA流水灯实验

源代码下载地址: http://pan.baidu.com/s/14H8D4 FPGA流水灯实验 花了几天通过流水灯实验把学习的verilogHDL的建模技巧总结了一下.写一份总结,给自己制定一套规范,方便以后查看和解决问题. 实现目标: 通过流水灯的实验实现了串行工作,流水线工作(时间并行),并行流水线工作(空间并行).串行工作是CPU的工作方式,也就是一个时间只能做一件事.通过verilogHDL完全可以模仿这种工作方式,也就是说通过CPU实现的算法和驱动程序完全可以转换成对应的verilo

一天:51单片机从入门到一个动态数码管显示数字控制

最近进的公司是一个做路由器的..很多嵌入式工程师.有个项目( 智能空调控制)是跟嵌入式工程师对接,我做APP+PHP..他做服务器.我们用MQTT(由于emqtt是用erlang写的,所以我也学了点erlang,后期有时间分享一下,这个语言很好,很强大.特别抽象).这个项目激发了我对嵌入式的兴趣,于是乎.开始从51单片机搞起了..所以就有了这篇文章...今天搞得东西挺多.我最近都是笔记形式,不想以前写的那么详细...因为学的东西太多,白天在公司搞项目,没时间写太具体... 今天学了什么呢? >k

数码管流水灯升级程序理解

1 /* 2 该程序的功能: 3 利用动态扫描和定时器1在数码管上显示出从765432开始, 4 以1/10秒的速度往下递减直至765398并保持显示此数,, 5 与此同时利用定时器0以500MS速度进行流水灯从上至下移动, 6 当数码管上数减到停止时,实验板上流水灯也停止然后全部开始闪烁, 7 3秒后(用T0定时)流水灯全部关闭.数码管上显示出"HELLO".到此保持住. 8 */ 9 #include <reg52.h> 10 #include <intrins.