首页 > 其他分享 >迷你实例__C51_数码管

迷你实例__C51_数码管

时间:2022-11-18 11:46:34浏览次数:52  
标签:__ case P0 C51 int P2 number break 数码管

#include <REGX52.H>


void Delay(int xms)
{
	while(xms--){
		unsigned char j;
		j = 278;
		while (--j);

	}
}

void smgca(locating,number){
		P0 = 0xFF;
		switch(locating)
		{
			case 1:P2=0x01;break;
			case 2:P2=0x02;break;
			case 3:P2=0x04;break;
			case 4:P2=0x08;break;
			case 5:P2=0x10;break;
			case 6:P2=0x20;break;
			case 7:P2=0x40;break;
			case 8:P2=0x80;break;
		}
	  switch(number)
		{
			case 0:P0 = 0xC0;break;
			case 1:P0 = 0xF9;break;
			case 2:P0 = 0xA4;break;
			case 3:P0 = 0xB0;break;
			case 4:P0 = 0x99;break;
			case 5:P0 = 0x92;break;
			case 6:P0 = 0x82;break;
			case 7:P0 = 0xF8;break;
			case 8:P0 = 0x80;break;
			case 9:P0 = 0x90;break;
}

		Delay(3);
		
}
void main(){
	int i;
	while(1){	
		for(i = 1;i<10;i++){
			smgca(i,i);
		}
	}
}           

#include <REGX52.H>



unsigned char g_number[10]={
	0xC0,
	0xF9,
	0xA4,
	0xB0,
	0x99,
	0x92,
	0x82,
	0xF8,
	0x80,
	0x90
};
unsigned char g_local[8]={
	0x01,
	0x02,
	0x04,
	0x08,
	0x10,
	0x20,
	0x40,
	0x80,
};


void main(){
	int i=0;
	int l=0;
	int nu[6];
	int n=0;

	unsigned int count=0;

	while(1){	
		for(i = 1;i<999999;i++){  	

			nu[0]=i%10;
			nu[1]=i/10%10;
			nu[2]=i/100%10;
			nu[3]=i/1000%10;
			nu[4]=i/10000%10;
			nu[5]=i/100000%10; 

			count+=1;

			if (count>2){
				count=0;
			}
			if(count==1){				

				P0 = 0xFF;
				P2= g_local[l];
				n=nu[5-l];
				P0= g_number[n];

				l+=1;  
			}
			if(l>=6){
				l=0;
			}

		}
	}
}

标签:__,case,P0,C51,int,P2,number,break,数码管
From: https://www.cnblogs.com/zdjvimrc/p/16902704.html

相关文章

  • Echarts横向柱状图,带标题
    效果图:   首先安装echarts,看官网安装文档即可然后要用的文件引入一下import*asechartsfrom'echarts';我用的vue3,setup放标签里的     代码如......
  • Python-统计执行时间
    方法一:importdatetimeimporttimestarttime=datetime.datetime.now()print(starttime.strftime("%Y-%m-%d%H:%M:%S"))time.sleep(2)endtime=datetime.datet......
  • ES之数据迁移
     应用背景数据量过大,索引分片数量不足,导致数据入库较慢的情况,需要扩大分片的数量。数据的mapping需要修改,但是大量的数据已经导入到索引中了,重新导入数据到新的索引......
  • 多组合少继承
    继承:强调类与类之间的关系组合:强调对象和对象之间的关系清楚python支持多继承,从而涉及到一些MRO的点,这里不做赘述,在实际工作过程中,我们经常会使用继承来实现代......
  • C# Dapper 的使用,帮助类
    一、什么是DapperDapper是一款轻量级ORM工具(Github)。如果你在小的项目中,使用EntityFramework、NHibernate来处理大数据访问及关系映射,未免有点杀鸡用牛刀。你又觉得......
  • [C++]-日志记录库SPDLog简介[通俗易懂]
    文章目录spdlog库日志记录槽sink日志记录器logger输出格式pattern对齐方式截断字符串格式化fmtFormatSpecificationspdlog使用异常处理logger基......
  • c#写LOG文件
              DateTimedt=DateTime.Now;           stringfilename=dt.ToString("yyyy-MM-dd")+"_log.txt";           stringp......
  • ubuntu双系统+NVIDIA+cuda驱动安装+bios grub一条龙踩坑
    目录ubuntu双系统+NVIDIA+cuda驱动+grub一条龙踩坑ubuntu+windows双系统时间设置修改启动时默认进入的系统ubuntu内部NVIDIA驱动+cuda系统启动时和安装cuda时可能遇到的坑u......
  • JavaScript_语法_特殊语法与JavaScript_语法_流程控制语句
    JavaScript_语法_特殊语法JS特殊语法:1.语句以;结尾,如果一行只有一语句则;可以省略(不建议)2.变量的定义使用var关键字,也可以不使用......
  • TortoiseGit安装与配置
    1、TortoiseGit下载页面:https://tortoisegit.org/download/2、安装(1)点击安装程序弹出安装向导界面:(2)安装过程中可修改安装目录,其余保持默认即可(3)安装语言包双击打开,......