51_蓝桥杯_数码管静态显示

一 电路

二 数码管静态显示工作原理

三 代码

代码1 实现第一个数码管显示数字6的功能

复制代码
#include "reg52.h"

unsigned char code SMG_Duanma[18] = 
  {0xc0,0xf9.0xa4,0x99,0x92,0x82,0xf8,
   0x80,0x90,0x88,0x80,0xc0,0x86,0x8e,
   0xbf,0x7f};

void Delay(unsignde int t)
{
  while(t--);
  while(t--);
}//实现延时功能的函数
 
void InitHC138(unsigned char n)
{
 switch (n)
 { 
   case 4;
      HC138_C = 1;
      HC138_B = 0;
      HC138_A = 0;//输出Y4
   break;
   case 5;
      HC138_C = 1;
      HC138_B = 0;
      HC138_A = 1;//输出Y5
   break;
case 4;
      HC138_C = 1;
      HC138_B = 1;
      HC138_A = 0;//输出Y6
   break;
   case 5;
      HC138_C = 1;
      HC138_B = 1;
      HC138_A = 1;//输出Y7
   break;
 }
}

void shumaguan()
{
  InitHC138(6);
  P0 = 0x01;
  InitHC138(7);
  P0 = 0x82;
}//实现第一个数码管,显示数字6的函数功能

void main()
{
  shumaguan();
  while(1)
 {

 }
}

代码2:实现数码管由数字0显示到数字9,并逐个进行。然后,数码管的内容,由0到f循环显示的功能。

复制代码
#include "reg52.h"

unsigned char code SMG_Duanma[18] = 
  {0xc0,0xf9.0xa4,0x99,0x92,0x82,0xf8,
   0x80,0x90,0x88,0x80,0xc0,0x86,0x8e,
   0xbf,0x7f};

void Delay(unsignde int t)
{
  while(t--);
  while(t--);
}//实现延时功能的函数
 
void InitHC138(unsigned char n)
{
 switch (n)
 { 
   case 4;
      HC138_C = 1;
      HC138_B = 0;
      HC138_A = 0;//输出Y4
   break;
   case 5;
      HC138_C = 1;
      HC138_B = 0;
      HC138_A = 1;//输出Y5
   break;
case 4;
      HC138_C = 1;
      HC138_B = 1;
      HC138_A = 0;//输出Y6
   break;
   case 5;
      HC138_C = 1;
      HC138_B = 1;
      HC138_A = 1;//输出Y7
   break;
 }
}

void shumaguan_bit(unsigned char dat, unsigned pos)
{
  InitHC138(6);
  P0 = 0x01<<pos;//数码管的位置
  InitHC138(7);
  P0 = dat;//数码管的内容
}

void shumaguan()
{
  unsigned char i;
  for(i = 0 ; i < 8; i++)
  {
    for(j = 0; j < 10 ; j++)
    {
     shumaguan_bit(SMG_Duanma[j],i);
     Delay(60000);
    }
  }//实现了数码管由数字0显示到数字9,并逐个进行的功能
 for(j = 0; j < 16 ; j++)
 {
  InitHC138(6);
  P0 = 0xff;//数码管全选
  InitHC138(7);
  P0 = SMG_Duanma[j];//数码管的内容,由0到f循环显示
 }
}

void main()
{
  while(1)
 {
   shumaguan();
 }
}
相关推荐
Y40900115 分钟前
C语言转Java语言,相同与相异之处
java·c语言·开发语言·笔记
棐木8 小时前
【C语言】动态内存管理
c语言·free·malloc·realloc·calloc·动态内存
浮生带你学Java9 小时前
2025Java面试题及答案整理( 2025年 7 月最新版,持续更新)
java·开发语言·数据库·面试·职场和发展
机器视觉知识推荐、就业指导10 小时前
STC89C52系列单片机简介
单片机·嵌入式硬件·51单片机
墨染点香11 小时前
LeetCode Hot100【5. 最长回文子串】
算法·leetcode·职场和发展
沧海一笑-dj12 小时前
【嵌入式】51单片机学习笔记-Keil5软件安装教程
51单片机·嵌入式·keil·keil5·51·keil安装·keil5软件
学习菌子12 小时前
第12章:【系统架构设计师】系统架构设计-数据流风格
系统架构·软考高级·系统架构设计师·数据流风格·架构风格
Ashlee_code12 小时前
美联储降息趋缓叠加能源需求下调,泰国证券交易所新一代交易系统架构方案——高合规、强韧性、本地化的跨境金融基础设施解决方案
java·算法·金融·架构·系统架构·区块链·需求分析
屁股割了还要学12 小时前
【C语言进阶】内存函数
c语言·开发语言·学习·算法·青少年编程
耳总是一颗苹果12 小时前
C语言---自定义类型(上)(结构体类型)
c语言·开发语言