ICode9

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

3 数码管静态显示

2022-01-30 17:58:00  阅读:181  来源: 互联网

标签:P2 case 显示 静态 unsigned break 数码管 0x1f


1 Y6C控制锁存器,进一步控制段选(低电平有效)

2 Y7C控制锁存器,进一步控制位选(高电平有效)

3 数码管为共阳极数码管

实现功能:

8段数码管分别依次显示0—F的内容,以及从0到F分别由8个数码管依次显示。

#include "reg52.h"
unsigned char code display_duan[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};

void delay(unsigned int t)
{
while(t--);
}
void InitHC138(unsigned char n)
{
 switch(n)
 {
  case 4:
  P2=(P2&0x1f)|0x80;
  break;
  case 5:
  P2=(P2&0x1f)|0xa0;
  break;
  case 6:
  P2=(P2&0x1f)|0xc0;
  break;
  case 7:
  P2=(P2&0x1f)|0xe0;
  break;
  }
}
void display(unsigned int pos,unsigned int num)
{
 InitHC138(6);
 P0=0x01<<pos;
 InitHC138(7);
 P0=display_duan[num];
}
void main()
{
 while(1)
{ 
int i,j=0;
for(i=0;i<=15;i++)
{
 for(j=0;j<=7;j++)
	{
	  display(j,i);
      delay(60000);
	}
}
for(j=0;j<=7;j++)
{
 for(i=0;i<=15;i++)
	{
	  display(j,i);
      delay(60000);
	}
}
delay(60000);
delay(60000);

}
}

标签:P2,case,显示,静态,unsigned,break,数码管,0x1f
来源: https://blog.csdn.net/qq_46504078/article/details/122736949

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

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

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

ICode9版权所有