找回密码
 立即注册

QQ登录

只需一步,快速开始

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

51时钟高端写法(无按键)

[复制链接]
跳转到指定楼层
楼主
ID:108644 发表于 2016-4-25 10:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar code wu[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};    // 数码管位选
uchar code du[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff,0xbf}; //数码管段选
uchar buf[]={0,0,11,0,0,11,0,0};  //控制时钟显示
uint num;
/******** 显示函数 *********/

void main()
{
   uchar num1,num2,num3;   //时钟 秒 分 时
   ET0=1;    //中断初始化
   TR0=1;
   TMOD=0x01;
   TH0=(65536-1000)/256;  
   TL0=(65536-1000)%256;
   EA=1;
   TR0=1;

  buf[0]=num3/10;  //显示
  buf[1]=num3%10;
  buf[3]=num2/10;
  buf[4]=num2%10;
  buf[6]=num1/10;
  buf[7]=num1%10;
   while(1)
    {
    if(num>50)
    {
     num1++;
   num=0;
    }
    if(num1>59)
     {
       num2++;
       num1=0;
     }
    if(num2>59)
     {
       num3++;
    num2=0;
     }
    if(num3>23)
     {
       num3=0;
     }
}  
}
/******** 中断函数  *********/
void time() interrupt 1
{
static char cnt=0;
num++;
TH0=(65536-1000)/256;
TL0=(65536-1000)%256;
if(++cnt>7) cnt=0;  //动态扫描
P0=du[10];
P1=wu[cnt];
P0=du[buf[cnt]];  
}


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

使用道具 举报

沙发
ID:438799 发表于 2018-12-4 20:09 | 只看该作者
这是c语言ma
回复

使用道具 举报

板凳
ID:438799 发表于 2018-12-4 20:10 | 只看该作者
Build target 'Target 1'
Target has no object modules
Target not created
我的keil显示这个
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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