找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2247|回復: 0
收起左側

向傳統(tǒng)說再見

[復制鏈接]
ID:83710 發(fā)表于 2015-6-23 18:42 | 顯示全部樓層 |閱讀模式
第一次用了與傳統(tǒng)程序架構不同的方法,感覺不大適應,但是這是必須學的,只是一小步也有新高度!

#include<os.h>
void InitTimer0(void)
{
    TMOD = 0x01;
    TH0 = 0x0FC;
    TL0 = 0x66;
    EA = 1;
    ET0 = 1;
    TR0 = 1;
}
void Timer0Interrupt(void) interrupt 1
{ unsigned char i;
    TH0 = 0x0FC;
    TL0 = 0x66;
         for(i=0;i<2;i++){if(task_delay[ i])task_delay[ i]--;}
}
void task0_xs()//數(shù)碼顯示任務
{
  static unsigned char start;
    switch (start)
    {
case 0:  task_delay[0]=2; //2ms
start=1;
        P0=0xff;
        d1=1;
     d2=0;
     break;
case 1: task_delay[0]=2; //2ms
start=0;
        P0=0xff;
        d1=0;
      d2=1;
      break;

  }
}
void task1_jp()//鍵盤掃描任務
{ task_delay[1]=50; //50ms
   if(j1==0)
   {P0=0x99;}
   if(j2==0)
   {P0=0x00;}


}
void main(void)
{
   unsigned char i;

    InitTimer0();
    task_delay[0]=2; //2ms
    task_delay[1]=50; //50ms
while(1)
{
   for(i=0;i<2;i++){
   
                 if(task_delay[0]==0){task0_xs(); }      
        if(task_delay[1]==0){task1_jp();}
        break;      
      

       }





}
}


回復

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網(wǎng)

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