找回密码
 立即注册

QQ登录

只需一步,快速开始

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

单片机NT0中断计数程序

[复制链接]
跳转到指定楼层
楼主
ID:500398 发表于 2019-5-31 10:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int

uchar code DSY_CODE[]=
{
         0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x7f,0x6f,0x00
};
uchar Display_Buffer[3]={0,0,0};
uint Count = 0;
sbit Clear_Key = P3^6;

void Show_Count_ON_DSY()
{
         Display_Buffer[2] = Count / 100;
        Display_Buffer[1] = Count % 100 /10;
        Display_Buffer[0] = Count % 10;        
        if(Display_Buffer[2]==0)
        {
                 Display_Buffer[2] = 0x0a;
                if(Display_Buffer[1]==0)
                {
                         Display_Buffer[1]=0x0a;
                }
        }
        P0 = DSY_CODE[Display_Buffer[0]];
        P1 = DSY_CODE[Display_Buffer[1]];
        P2 = DSY_CODE[Display_Buffer[2]];
}

void main()
{
         P0 = 0xff;
        P1 = 0xff;
        P2 = 0xff;
        IE = 0x81;
        IT0 = 1;
        while(1)
        {
                 if(Clear_Key == 0)
                        Count = 0;
                Show_Count_NO_DSY();
        }
}

void EX_INT0() interrupt 0
{
         Count ++;
}

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

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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