ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

2021-04-16

2021-04-16 20:57:11  阅读:184  来源: 互联网

标签:case LSB LSC 04 16 LSA break 数码管 2021


数码管进阶应用

让8个数码管依次先单独显示0-9 ,然后在让8个数码管一起显示0-F。
同样还是在B站小蜜蜂老师那里的题,因为开发板的不一样所以显示方式也有所不同】

小蜜蜂老师单片机

我开发板实现的功能,通过138译码器来全部同时打开8个数码管的时候一直有问题,只能通过缩小延时来显示8个数码管同时亮的假象。希望各位博客大佬帮忙指正一下。在这里插入图片描述



#include "reg52.h"

typedef unsigned char u8;
typedef unsigned int u16;

//通过以下三个引脚来控制138译码器控制数码管的选择
sbit  LSA = P2^2;  
sbit  LSB = P2^3; 
sbit  LSC = P2^4;

	//共阴极
u8 code smg_duan[17]={
	0x3f,0x06,0x5b,0x4f,0x66,
	0x6d,0x7d,0x07,0x7f,0x6f,
	0x77,0x7c,0x39,0x5e,0x79,0x71};
	
void delay_smg(u16 t)
{
	while(t--);
	
}



void delay(u16 t)
{
	while(t--);
	
}


//数码管显示函数

void DigDisplay( u8 dat , u8 pos)
{
	u8 i;
	for(i=0;i<8;i++)
	{
		
			switch(pos)	 //传入pos进行数码管的选择
			{
				case(0):
					LSA=1;LSB=1;LSC=1; break;第7位
				case(1):
					LSA=0;LSB=1;LSC=1; break;//第六位
				case(2):
					LSA=1;LSB=0;LSC=1; break;//ÏÔʾµÚ5λ
				case(3):
					LSA=0;LSB=0;LSC=1; break;//ÏÔʾµÚ4λ
				case(4):
					LSA=1;LSB=1;LSC=0; break;//ÏÔʾµÚ3λ 
				case(5):
					LSA=0;LSB=1;LSC=0; break;//ÏÔʾµÚ2λ 
				case(6):
					LSA=1;LSB=0;LSC=0; break;//ÏÔʾµÚ1λ 
				case(7):
					LSA=0;LSB=0;LSC=0; break;//ÏÔʾµÚ0λ	
			}
			P0=dat;//将数码管断传入P0口
			delay(3000); //¼ä¸ôÒ»¶Îʱ¼äɨÃè	
			P0=0x00;//消影
		}
}

//最终数码管显示
void smg_result()
{
		u8 i,j,k ;
		for( i = 0;i< 8 ;i++)
		{
			for( j = 0 ; j< 10 ;j++)
			{
				DigDisplay(smg_duan[j] ,i);
				delay(200);
			}
		}
		
		delay(200);
			for( j = 0 ; j< 10 ;j++)
			{
				for( i = 0 ;i <8 ;i++)
				{
					DigDisplay(smg_duan[j] ,i);
				}
			}
}

void main()
{
	
	while(1)
	{
		smg_result();
	}
	
}

每天记录学习过程,一起进步(加油)!

标签:case,LSB,LSC,04,16,LSA,break,数码管,2021
来源: https://blog.csdn.net/boybs/article/details/115771149

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有