51单片机数码管动态显示

1、设计要求
在一个8位8段数码管上动态显示“01234567”、P2口用于数码管的位选通控制,P1用于段码输出
2、硬件设计
用proteus Isis 仿真,选择元器件,AT89C51、7SEG-MPX8-CC-BLUE,连接好电路图
3、程序设计
源程序:

/********************必要变量定义********************/
#include <reg52.h>
#include <intrins.h>
typedef	unsigned char u8;
typedef	unsigned int u16;
u8 code table[16] = {0xfc,0x60 ,0xda ,0xf2 ,0x66 ,0xb6 ,0xbe ,0xe0 ,
                0xfe ,0xf6 ,0xee ,0x3e ,0x9c ,0x7a ,0x9e ,0x8e };  //共阴数码管编码表
u8 code address[] = {0xfe ,0xfd ,0xfb ,0xf7 ,0xef ,0xdf,0xbf ,0x7f};//数码管位选择编码表
/***********************延时函数***********************/
void delay(u16 i)
{
    while(i--);
}
/**********************主程序************************/
void main()
{
   u8 m = 0;
    while(1)
    {
		if(m == 8) m = 0;
		P2 = address[m];
		P1 = table[m++];
		delay(500);	
     }
 } 

在这里插入图片描述

  • 4
    点赞
  • 63
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值