动态数码管显示程序74HC573

小编自己写的,很简单,不做解释了,仅供参考.

.h文件,放到自己工程下稍作修改就可以用.

#ifndef __SMG_573_H__

#define __SMG_573_H__

#include <reg51.h>

#define uchar unsigned char

#define uint unsigned int

//段选信号和位选信号的锁存器控制

sbit dula=P2^6;  //段选信号的锁存器控制

sbit wela=P2^7;  //位选信号的锁存器控制

//数码管各位的码表

unsigned char code SMG_wei[]={0x00,0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};

//0-f的码表,共阴数码管,16为O,17为C,18为.,19为-;      

unsigned char code SMG_duan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x63,0x39,0x80,0x40};

//延时函数   

void delay_SMG_573(unsigned int i)

{

 unsigned int m,n;

 for(m=i;m>0;m--)

  for(n=90;n>0;n--);

}

//数码管显示,注意wei取值1--8,duan取值0--15

void SMG_573(uchar wei,uchar duan)

{

   P0=SMG_wei[wei];   

   wela=1;

   wela=0;

 

   P0=SMG_duan[duan];  

   dula=1;

   dula=0;

   delay_SMG_573(2); 

   //时间间隔短,这是关键(所谓的同时显示,只是间隔较短而已,利用人眼的余辉效应,觉得每个数码管都一直在亮)。

}

#endif

  • UC3846控制芯片工作原理控制图 逆变焊机原理与用途
  • 数字万用表电阻档测试二极管正反向没有阻值(使用万用表测量二极管的正向电阻,为什么各档)
  • 学单片机需要学数电模电吗(学单片机要先学数电模电吗)
  • 电工怎么选择适合自己用的万用表(电工初学者买什么样的万用表好)
  • 单片机需要同时运行多个任务怎么办(单片机怎么同时执行多个任务)
  • 电机保护的方案取决于负载的机械特性
  • 绝缘电阻表正负搭接不复零位是怎么回事
  • 短路怎么用万用表查