找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3521|回復: 1
收起左側

幫忙看看程序,實在無語了~~~~

[復制鏈接]
ID:39385 發(fā)表于 2012-4-28 11:30 | 顯示全部樓層 |閱讀模式

#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit dula=P2^6;        //數選
sbit wela=P2^7;       //位選
sbit led1=P1^0;        //led燈
uchar code table[]={
                    0x3f,0x06,0x5b,0x4f,
      0x66,0x6d,0x7d,0x07,
      0x7f,0x6f,0x77,0x7c,
      0x39,0x5e,0x79,0x71
                   };
uchar num,num1,num2,shi,ge;
/*==========================延時函數=================================*/
void delayms(uint k)
{
  uint i,j;
    for(i=k;i>=0;i--)
  for(j=110;j>=0;j--);
}
      
/*===========================數碼管動態(tài)顯示函數======================*/      
void display(uchar shi,uchar ge)
{
 dula=1;
 P0=table[shi];
 dula=0;
 P0=0xff;                          //  消影
 wela=1;
 P0=0xfe;
 wela=0;///////
delayms(5);

 dula=1;
 P0=table[ge];
 dula=0;
 P0=0xff;
 wela=1;
 P0=0xfd;
 wela=0;
delayms(5);
}

 

 

 

/*=================T0中斷函數================*/
/*=========二極管200毫秒閃爍==========*/
void T0_time()interrupt 1
 {
   TH0=(65536-45872)/256;                             //(65536-50/(12*(1/11.0592)))
   TL0=(65536-45872)%256;        //重裝初值(uint)(65536-50/(12*(1/11.0592)))
   num1++;
   if(num1==4)
           {
     num1=0;
       led1=~led1;
     }
 }


/*=============T1中斷函數===================*/
 /*===============數碼管59秒循環(huán)計時==========*/
 void T1_time()interrupt 3
 {
   TH1=(65536-45872)/256;
   TL1=(65536-45872)%256;        //重裝初值
   num2++;
   if(num2==20)
   {
 num2=0;
      num++;
  if(num==60)
           num=0;
         ge=num%10;
   shi=num/10;
    } ;
  //////////////////////////
 }

 /*============main============*/
 void main()
 {
   TMOD=0x11;
   TH0=(65536-45872)/256;
   TL0=(65536-45872)%256;
   TH1=(65536-45872)/256;
   TL1=(65536-45872)%256;
   EA=1;
   ET0=1;
   ET1=1;
   TR0=1;
   TR1=1;
    while(1)
 {
   display(shi,ge); 
 }
 } 
 
 
 /*顯示程序花費的時間是多少,中斷程序執(zhí)行的時間是多少,有可能沖突了。!*/ 
 /*不知道是什么原因使得中斷一直在執(zhí)行,跳不出去了。。。。。。。。。。。。。!*/               

[此貼子已經被作者于2012-4-28 11:31:40編輯過]
回復

使用道具 舉報

ID:35775 發(fā)表于 2012-4-28 12:27 | 顯示全部樓層
先關TR0和TR1(TR0=0,TR1=0)賦完初值后在開,試試~
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表