找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1138|回复: 0
打印 上一主题 下一主题
收起左侧

利用单片进行0~20的计数程序

[复制链接]
跳转到指定楼层
楼主

可以实现0~20计数功能显示

#include<reg51.h>
#define LED_SEGMENT P0
sbit led1 = P2^0;
sbit led0 = P2^1;
#define ON 1
#define OFF 0
unsigned char code display_code[10]={0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90};
unsigned char code display_position[4]={0X01,0X02,0X04,0X08};
unsigned char display_buff[4];
unsigned int counter;

void delay_ms(unsigned int ms)
{
unsigned char k;
while(ms--)
           {
           for(k=0;k<123;k++);
           }
}

void display_process()
{
display_buff[0]=counter/10;
display_buff[1]=counter%10;
}

void LED_display()
{
    LED_SEGMENT=display_code[display_buff[0]];
    led1 = 1;
    delay_ms(2);
    led1 = 0;
    LED_SEGMENT=display_code[display_buff[1]];
    led0 = 1;
    delay_ms(2);
    led0 = 0;
}
void int0_counter()interrupt 0 using 1
{
          counter++;
          if(counter==21)
          counter=0;
}

void main()
{
          P3=0XFF;
          counter=0;
          EX0=1;
          IT0=1;
          EA=1;
          while(1)
          {
           display_process();
           LED_display();
          }
}
   

评分

参与人数 1黑币 +10 收起 理由
admin + 10 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表