51单片机静态数码管显示

1、设计要求

用一个共阳极数码管循环显示数值“0~F”,显示变换时间为1s,由P1口输出要显示的数值

2、硬件设计

使用proteus Isis仿真,选择元器件,AT89C51、7SEG-COM-AN-GRN、RESPACK8

3、软件设计

源程序:

#include 
#include 

typedef	unsigned char u8;
typedef	unsigned int u16;

u8  smgduan[16] = {0x3f ,0x06 ,0x5b ,0x4f ,0x66 ,0x6d ,0x7d ,0x07 ,
                0x7f ,0x6f ,0x77 ,0x7c ,0x39 ,0x5e ,0x79 ,0x71 };  //共阴
 
void delay(u16 i)
 {
    u8 a,b;
    for( ;k>0 ;k--)
      for(b=142 ; b>0 ;b--)
        for(a=2 ;a>0 ;a--);
  }
 void main()
 {
	//u16 i;
	P1 = ~smgduan[0];
	//delay(1000);
    while(1)
   {
		 for(i=0;i<10;i++)  // 静态数码管数字动态输出
		 {
		   P1= ~smgduan[i];
		   delay(1000);
		 }
   }
  }

51单片机静态数码管显示_第1张图片

你可能感兴趣的:(51单片机静态数码管显示)