3015|3

67

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

改程序 C语言 keil 8051单片机 6mhz [复制链接]

#include
#include
#include
unsigned char hour;   
unsigned char minite;
unsigned char second;
unsigned char second20;
//unsigned char time;
//void delay( unsigned char time);
unsigned char display_buff[6];
unsigned char code display_code[32]=
  {
   0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07,
   0x7f, 0x6f, 0x77, 0x7c, 0x39, 0x5e ,0x79, 0x71,
   0x3d, 0x76, 0x38, 0x54, 0x5c, 0x73, 0x3e, 0x6e,
   0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80
  };
//延时子程序//
void delay(unsigned char time)
{
    unsigned char i,j;
    for(i=0;i<=time;i++)
    {for(j=0;j<=140;j++)
        {
        }
     
    }
}
//数码管显示程序//
void display (void)
{
  unsigned char i;
  P2=0xfe;
P0=0;
   for(i=0;i<6;i++)
     {
      P0=display_buff;
      delay(2);
      P0=0;
      P2=_col_(P2,1);
     }
}
  //定时 计数中断服务子程序//
//定时每隔50ms中断一次,据 秒 分 小时的进制关系
//设定条件判断用 second minite hour分别代表 秒 分 小时
void time0_ISR(void)interrupt 1 using 0
{
   TH0=0x3C;
   TL0=0x0B0;
   second20++;
   if (second20==20)
   {
            second20=0;
                second++;
                if(second==60)
                {
                        second=0;
                        minite++;
                        if(minite==60)
                        {
                                minite=0;
                                hour++;
                                if(hour==24)
                                {
                                        hour=0;                               
                                }               
                        }               
                }
   }
}
//系统初始化程序//
void init(void)
{
         TMOD=0x01;
         TH0=0x3C;
         TL0=0x0B0;
         TF0=0;
         TR0=1;
         hour=12;
         minite=0;
         second=0;
         second20=0;
         ET0=1;
         EA=1;
}
   //主程序//
void main(void)
{
         init();
         while(1)
         {//display respectively
                 display_buff[5]=display_code[hour/10];
          display_buff[4]=display_code[hour%10]/0x80;
          display_buff[3]=display_code[minite/10];
          display_buff[2]=display_code[minite%10]/0x80;
          display_buff[1]=display_code[second/10];
      display_buff[0]=display_code[second%10];
          display();
         }



}
此帖出自编程基础论坛

最新回复

这是一个人么? 莫名其妙的帖子啊~~  详情 回复 发表于 2011-12-12 09:25
点赞 关注
 

回复
举报

77

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
楼主的问题是什么?编译通不过还是其他问题?
此帖出自编程基础论坛
 
 
 

回复

83

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
   好了  已经调好了
此帖出自编程基础论坛
 
 
 

回复

7815

帖子

56

TA的资源

裸片初长成(中级)

4
 
这是一个人么?
莫名其妙的帖子啊~~
此帖出自编程基础论坛
 
个人签名

强者为尊,弱者,死无葬身之地

 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表