標(biāo)題: 求助,程序15分鐘開關(guān)KEY1沒有變低電平,ERR-LED燈閃爍?哪里不對? [打印本頁]

作者: hjx5548    時間: 2024-1-3 06:30
標(biāo)題: 求助,程序15分鐘開關(guān)KEY1沒有變低電平,ERR-LED燈閃爍?哪里不對?

/******************************************************************************************
   下面代碼15分鐘開關(guān)KEY1沒有變低電平,ERR-LED燈閃爍?哪里不對?            
                              并且三個IO全部拉低                          JS_JDQ = 0;
                                                                                     DCF_JDQ = 0;
                                                                                    JR_JDQ = 0;

***********************************************************************************************/


#include <STC8H.h>


#define uchar unsigned char
#define uint unsigned int
      
sbit JR_JDQ = P3^3;
sbit JS_JDQ = P5^5;
sbit DCF_JDQ = P3^2;


sbit KEY1 = P3^0;
sbit ERR_LED = P5^4;
bit t0zd0b=0;
bit t1zd0b=0;


uchar count;
char sec,min;
bit flag;


uint  i=0,j=0;
uchar t0IntCnt = 0; //T0中斷計數(shù)變量
uint ledFlashCnt = 0;        //ERR_LED指示燈閃爍周期計數(shù)
uchar Flag2ms = 0;      //2MS到標(biāo)志
uchar u8Flag15min = 0;        //15分鐘到標(biāo)志




void TM0_init()  //5毫秒@11.0592MHz
{
        AUXR &= 0x7F;                        //定時器時鐘12T模式
        TMOD &= 0xF0;                        //設(shè)置定時器模式
        TMOD |= 0x01;                        //設(shè)置定時器模式
        TL0 = 0x00;                                //設(shè)置定時初始值
        TH0 = 0xEE;                                //設(shè)置定時初始值
        TF0 = 0;                                //清除TF0標(biāo)志
        TR0 = 1;                                //定時器0開始計時
        ET0 = 1;                                //使能定時器0中斷
        EA = 1;     
}


void Timer1_Init(void)                //250微秒@11.0592MHz
{
        AUXR &= 0xBF;                        //定時器時鐘12T模式
        TMOD &= 0x0F;                        //設(shè)置定時器模式
        TL1 = 0x1A;                                //設(shè)置定時初始值
        TH1 = 0xFF;                                //設(shè)置定時初始值
EA = 1;       //開總中斷
        TF1 = 0;                                //清除TF1標(biāo)志
        TR1 = 1;                                //定時器1開始計時
         ET1 = 1;      //開T0中斷     
}




/*
必須開啟T0中斷,延時函數(shù)才起作用
*/
void delay_1ms(void)
{
        uchar i = 4; //每次256us,1ms中斷4次
        while (i) {
                if (t1zd0b)
                {
                       t1zd0b = 0; //清除時間中斷標(biāo)志
                        --i;
                }
        }
}
void delay_ms(uint var)//延時單位為毫秒,最多延時65.535秒(65535mS)
{
        while (var--)
        {
                delay_1ms();
        }
}


#define d_s(s) delay_ms((s)*1000ul)//延時單位為秒


void IO_init()
{



    P3M0 = 0xe4; P3M1 = 0x00;


    P5M0 = 0x00; P5M1 = 0x00;

JR_JDQ = 0;
JS_JDQ = 0;
DCF_JDQ = 0;


// KEY1 = 0;
ERR_LED = 0;






}


void TM0_Isr() interrupt 1    //5毫秒
        {
    TL0 = 0x00;                                //設(shè)置定時初始值
        TH0 = 0xEE;                                //設(shè)置定時初始值
        flag=1;
        }
       
void TM1_Isr() interrupt 3


        {
                if(TF1)
                TF1=0;
                t1zd0b=1;ledFlashCnt ++;
        }       


void main()
{             
         
                TM0_init();Timer1_Init(); delay_1ms();
    IO_init();
    ERR_LED = 1;d_s(1); ERR_LED = 0;JS_JDQ = 1;d_s(1);  DCF_JDQ = 1;
    while (1)
                {
                                                                        if(KEY1 == 1 )     //缺水時
                                                                        {       
                                                                                d_s(1);
                                                                                JS_JDQ = 1;
                                                                               
                                                                                d_s(1);
                                                                                DCF_JDQ = 1;
                                                                                d_s(7);
                                                                                JR_JDQ = 0;
                                                                               
                if(flag)
                {
                        flag=0;
                        if(++count >= 200)
                        {
                                count = 0;
                                sec++;
                                if(sec >= 60)
                                {
                                        sec = 0;
                                        min++;
                                        if(min >= 15)
//                                         min=0;
                                 u8Flag15min = 1;
                                }
                                                                                                                               
                        }
                 JS_JDQ = 0;
                                                        DCF_JDQ = 0;
                                                        JR_JDQ = 0;
                                                                                               
                                                }
                                                                else        //15分鐘到,執(zhí)行LED閃爍   3、如果第一個動作水位一直不能到,
                                                            //也就是開關(guān)一直斷開高電平,則故障燈閃爍,
                                                                                                        //加水加熱電磁閥燈全部熄滅。
                                {
                                        if (ledFlashCnt>=200) //200*5=1000ms
                                        {
                                                ledFlashCnt = 0;
                                                 ERR_LED = 1;
                                        }
                                }
                                    }
                                                               
                                else if(KEY1==0)    //b、第二步只要水位到了,也就是開關(guān)接通低電平,延時一秒
                                            //加熱燈點亮,延時五秒后,電磁閥燈熄滅,又過一秒,加水燈熄滅。
                                {
                      u8Flag15min = 0;
                                                                                  ERR_LED = 0;
                                                                                        DCF_JDQ = 0;
                                                                                        d_s(1);
                                                                                        JS_JDQ = 0;
                                                                       
                                                                                        d_s(2);
                                                                                        JR_JDQ = 1;                                                                                                                                               


                                                                        }
                                                                }                                                               
               
}


       
       



作者: hjx5548    時間: 2024-1-3 07:08
/******************************************************************************************
電加熱蒸汽鍋爐全自動控制板說明
1、按上圖所示接線;
2、上電后,供水設(shè)備工作(加水指示燈亮),報警設(shè)備工作;
3、水位信號到(水位指示燈亮),供水設(shè)備延時1秒停止工作(加水指示燈熄滅),加熱設(shè)
備延時2秒工作(加熱指示燈亮)。
4、水位信號斷開(水位指示燈熄滅),加水設(shè)備延時啟動(延時時間用撥碼開關(guān)可以調(diào)節(jié),
詳細說明見后),加熱設(shè)備延時10 秒停止。水位信號接通保持時,加熱設(shè)備不停止工作。
加熱設(shè)備也可以通過手動按鈕控制開啟或停止。
4位撥碼開關(guān)都在數(shù)字這邊時,水位信號斷開時,加水設(shè)備啟動(不延時),
“4”位往上撥,延時1秒;
“3”位往上撥,延時2秒;
“2”位往上撥,延時4秒;
“1”位往上撥,延時8秒;
也可以多種組合,如:“2”、“3”和“4”位往上撥,延時7秒。同理。
***********************************************************************************************/


#include <STC8H.h>


#define uchar unsigned char
#define uint unsigned int
      
sbit JR_JDQ = P3^3;
sbit JS_JDQ = P5^5;
sbit DCF_JDQ = P3^2;


sbit KEY1 = P3^0;
sbit ERR_LED = P5^4;
bit t0zd0b=0;
bit t1zd0b=0;


uchar count;
char sec,min;
bit flag;


uint  i=0,j=0;
uchar t0IntCnt = 0; //T0中斷計數(shù)變量
uint ledFlashCnt = 0;        //ERR_LED指示燈閃爍周期計數(shù)
uchar Flag2ms = 0;      //2MS到標(biāo)志
uchar u8Flag15min = 0;        //15分鐘到標(biāo)志




void TM0_init()  //5毫秒@11.0592MHz
{
        AUXR &= 0x7F;                        //定時器時鐘12T模式
        TMOD &= 0xF0;                        //設(shè)置定時器模式
        TMOD |= 0x01;                        //設(shè)置定時器模式
        TL0 = 0x00;                                //設(shè)置定時初始值
        TH0 = 0xEE;                                //設(shè)置定時初始值
        TF0 = 0;                                //清除TF0標(biāo)志
        TR0 = 1;                                //定時器0開始計時
        ET0 = 1;                                //使能定時器0中斷
        EA = 1;     
}


void Timer1_Init(void)                //250微秒@11.0592MHz
{
        AUXR &= 0xBF;                        //定時器時鐘12T模式
        TMOD &= 0x0F;                        //設(shè)置定時器模式
        TL1 = 0x1A;                                //設(shè)置定時初始值
        TH1 = 0xFF;                                //設(shè)置定時初始值
EA = 1;       //開總中斷
        TF1 = 0;                                //清除TF1標(biāo)志
        TR1 = 1;                                //定時器1開始計時
         ET1 = 1;      //開T0中斷     
}




/*
必須開啟T0中斷,延時函數(shù)才起作用
*/
void delay_1ms(void)
{
        uchar i = 4; //每次256us,1ms中斷4次
        while (i) {
                if (t1zd0b)
                {
                       t1zd0b = 0; //清除時間中斷標(biāo)志
                        --i;
                }
        }
}
void delay_ms(uint var)//延時單位為毫秒,最多延時65.535秒(65535mS)
{
        while (var--)
        {
                delay_1ms();
        }
}


#define d_s(s) delay_ms((s)*1000ul)//延時單位為秒


void IO_init()
                {                 
                                P3M0 = 0xe4; P3M1 = 0x00;
                                P5M0 = 0x00; P5M1 = 0x00;
                 
                        ERR_LED = 1;
                        d_s(1);//延時1秒                       
                        JS_JDQ = 1;
                        ERR_LED = 0;
      d_s(2);//延時2秒
                       
                        DCF_JDQ = 1;
                        d_s(1);//延時1秒
                       
                        JR_JDQ = 0;   
                }


void TM0_Isr() interrupt 1    //250毫秒
        {
   if(TF0)        //定時器 0 上溢中斷
        {  
                TF0 = 0;
                t0zd0b = 1;
                t0IntCnt++;
                if(t0IntCnt>=8)        //8*250 = 2ms
                {
                        t0IntCnt = 0;
                        Flag2ms=1;
                        ledFlashCnt ++;
                }       
        }
        }
       
void TM1_Isr() interrupt 3


        {
                if(TF1)
                TF1=0;
                t1zd0b=1;
        }       


void main()
{             
         
                TM0_init();Timer1_Init();
    IO_init();
    delay_ms(80);
    while (1)
     {
                                                                if(KEY1 == 1 )     //缺水時
                                                                        {       
                                                                                DCF_JDQ = 1;
                                                                                d_s(1);//延時1秒
                                                                                JS_JDQ = 1;
                                                                                d_s(3);//延時1秒
                                                                                DCF_JDQ = 0;
                                                                         
                                                                                JR_JDQ = 0;
                                                                                               
                                                                                if(flag)
                                                                                                {
                                                                                                                                flag=0;
                                                                                                                                if(++count >= 200)    //200*5=1000ms
                                                                                                                                {
                                                                                                                                                                count = 0;
                                                                                                                                                                sec++;
                                                                                                                                                                if(sec >= 60)
                                                                                                                                                                {
                                                                                                                                                                                                sec = 0;
                                                                                                                                                                                                min++;
                                                                                                                                                                if(min >= 1)
                                                          min=0;
                                                                                                                                                                u8Flag15min = 1;
                                                                                                                                                                }                                                                                                               
                                                                                                                                }
                                                                                                 JS_JDQ = 0;
                                                                                                 DCF_JDQ = 0;
                                                                                                 JR_JDQ = 0;
                                                                                                                                //break;                                                                                               
                                                                                                }
                                                                         else        //15分鐘到,執(zhí)行LED閃爍   3、如果第一個動作水位一直不能到,
                                                                                                                //也就是開關(guān)一直斷開高電平,則故障燈閃爍,
                                                                                                                        //加水加熱電磁閥燈全部熄滅。
                                                                                                {
                                                                                                        if (ledFlashCnt>=200) //200*5=1000ms
                                                                                                        {
                                                                                                                ledFlashCnt = 0;
                                                                                                                ERR_LED = 1;
                                                                                                        }
                                                                                                }
                                        }
                                                               
                                     else if(KEY1==0)    //b、第二步只要水位到了,也就是開關(guān)接通低電平,延時一秒
                                            //加熱燈點亮,延時五秒后,電磁閥燈熄滅,又過一秒,加水燈熄滅。
                                           {
                      u8Flag15min = 0;
                                                                                  ERR_LED = 0;
                                                                                        DCF_JDQ = 0;
                                                                                        d_s(1);
                                                                                        JS_JDQ = 0;
                                                                       
                                                                                        d_s(2);
                                                                                        JR_JDQ = 1;                                                                                                                                               
                                                                         }
                        }                                                                             
}










       



作者: hjx5548    時間: 2024-1-3 07:08
看下面的代碼
作者: MYJ918    時間: 2024-1-3 10:02
代碼沒問題的話是不是硬件有問題呢?
作者: hjx5548    時間: 2024-1-3 17:47
MYJ918 發(fā)表于 2024-1-3 10:02
代碼沒問題的話是不是硬件有問題呢?

硬件沒有問題的,不知道代碼問題出在哪里?
作者: lkc8210    時間: 2024-1-4 11:25
這個flag在哪里置1?


作者: hjx5548    時間: 2024-1-5 22:25
lkc8210 發(fā)表于 2024-1-4 11:25
這個flag在哪里置1?

#include <STC8H.h>


#define uchar unsigned char
#define uint unsigned int
      
sbit JR_JDQ = P3^3;
sbit JS_JDQ = P5^5;

sbit KEY1 = P3^2;
sbit ERR_LED = P5^4;
bit t0zd0b=0;
bit t1zd0b=0;

uchar count;
char sec,min;

uint  i=0,j=0;
uchar t0IntCnt = 0; //T0中斷計數(shù)變量
uint ledFlashCnt = 0;        //ERR_LED指示燈閃爍周期計數(shù)
uchar Flag2ms = 0;      //2MS到標(biāo)志
uchar u8Flag6min = 0;        //15分鐘到標(biāo)志

void TM0_init()  //5毫秒@11.0592MHz
{
        AUXR &= 0x7F;                        //定時器時鐘12T模式
        TMOD &= 0xF0;                        //設(shè)置定時器模式
        TMOD |= 0x01;                        //設(shè)置定時器模式
              TL0 = 0x00;                                //設(shè)置定時初始值
              TH0 = 0x28;                                //設(shè)置定時初始值
        TF0 = 0;                                //清除TF0標(biāo)志
        TR0 = 1;                                //定時器0開始計時
        ET0 = 1;                                //使能定時器0中斷
//        EA = 1;     
}


void Timer1_Init(void)                //250微秒@11.0592MHz
{
        AUXR &= 0xBF;                        //定時器時鐘12T模式
        TMOD &= 0x0F;                        //設(shè)置定時器模式
        TL1 = 0x1A;                                //設(shè)置定時初始值
        TH1 = 0xFF;                                //設(shè)置定時初始值              
        TF1 = 0;                                //清除TF1標(biāo)志
        TR1 = 1;                                //定時器1開始計時
         ET1 = 1;      //開T0中斷     
//               EA = 1;       //開總中斷
}

/*
必須開啟T0中斷,延時函數(shù)才起作用
*/
void delay_1ms(void)
{
        uchar i = 4; //每次256us,1ms中斷4次
        while (i) {
                if (t1zd0b)
                {
                       t1zd0b = 0; //清除時間中斷標(biāo)志
                        --i;
                }
        }
}
void delay_ms(uint var)//延時單位為毫秒,最多延時65.535秒(65535mS)
{
        while (var--)
        {
                delay_1ms();
        }
}


#define d_s(s) delay_ms((s)*1000ul)//延時單位為秒


void IO_init()
                {                 
                                P3M0 = 0x08; P3M1 = 0x00;
                                P5M0 = 0x30; P5M1 = 0x00;
                        ERR_LED = 0;
                        JS_JDQ = 1;
                        JR_JDQ = 0;                       
                }


void TM0_Isr() interrupt 1    //5毫秒
        {    //ERR_LED ^= 1;                            //測試是否進入中斷
           if(TF0)        //定時器 0 上溢中斷
        {  
                TF0 = 0;
                t0zd0b = 1;
                t0IntCnt++;
                if(t0IntCnt>=8)        //8*250 = 2ms
                {
                        t0IntCnt = 0;
                        Flag2ms=1;
                        ledFlashCnt ++;
                }      
        }
        }
      
void TM1_Isr() interrupt 3            //250毫秒
        {       //  ERR_LED ^= 1;                        //測試是否進入中斷
                if(TF1)
                TF1=0;
                t1zd0b=1;
        }      


void main()
{                     
    TM0_init();
          Timer1_Init();
           EA = 1;       //開總中斷
    IO_init();
    delay_ms(80);
    while (1)
     {
                                                        if(KEY1 == 1 )     //缺水時
                         {                                                                                                                                                                                                                                                                                                                                              
                                                        ERR_LED = 1;
                                                        JS_JDQ = 1;                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       
                                                        JR_JDQ = 0;               
                                                         
                                                        if(u8Flag6min)
                                                        {
//                                                        t0zd0b=0;                               
                                                          if(++count >= 200)    //200*5=1000ms
                                                                {
                                                                        count = 0;
                                                                        sec++;
                                                                        if(sec >= 60)
                                                                                {
                                                                                sec = 0;       
                                                                                min++;
                                                                                if(min >=2)       //6分鐘
                                                                                min=0;
                                                                                u8Flag6min = 1;
                                                                                }                                                                                                               
                                                                 }                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                         }
                                                         else        //6分鐘到,執(zhí)行LED閃爍   3、如果第一個動作水位一直不能到,
                                                                                                                                                                                //也就是開關(guān)一直斷開高電平,則故障燈閃爍,
                                                                                                                                                                        //加水加熱燈全部熄滅。
                                                                                 
                                                                        {                                                       
                                                                                                JS_JDQ = 0;                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       
                                                                  JR_JDQ = 0;       
                                                                                                        if (ledFlashCnt>=200) //200*5=1000ms
                                                                                                                                {
                                                                                                                                ledFlashCnt = 0;
                                                                                                                                        ERR_LED ^= 1;
                                                                                                                                }                                                                                                                                                               
                                                                        }
               }
                                                               
               else //if(KEY1==0)                                            
                     {
                        u8Flag6min = 0;
                        ERR_LED = 0;                                                                                                      
                         JS_JDQ = 0;
                          d_s(1);
                           JR_JDQ = 1;                                                                                                                                               
                                                                                 }
      }                                                                             
}

這樣也是不行?

作者: hjx5548    時間: 2024-1-5 22:26
lkc8210 發(fā)表于 2024-1-4 11:25
這個flag在哪里置1?

/******************************************************************************************
電加熱蒸汽鍋爐全自動控制板說明
1、按上圖所示接線;
2、上電后,供水設(shè)備工作(加水指示燈亮),報警設(shè)備工作;
3、水位信號到(水位指示燈亮),供水設(shè)備延時1秒停止工作(加水指示燈熄滅),加熱設(shè)
備延時2秒工作(加熱指示燈亮)。
4、水位信號斷開(水位指示燈熄滅),加水設(shè)備延時啟動(延時時間用撥碼開關(guān)可以調(diào)節(jié),
詳細說明見后),加熱設(shè)備延時10 秒停止。水位信號接通保持時,加熱設(shè)備不停止工作。
加熱設(shè)備也可以通過手動按鈕控制開啟或停止。
4位撥碼開關(guān)都在數(shù)字這邊時,水位信號斷開時,加水設(shè)備啟動(不延時),
“4”位往上撥,延時1秒;
“3”位往上撥,延時2秒;
“2”位往上撥,延時4秒;
“1”位往上撥,延時8秒;
也可以多種組合,如:“2”、“3”和“4”位往上撥,延時7秒。同理。
***********************************************************************************************/


#include <STC8H.h>


#define uchar unsigned char
#define uint unsigned int
      
sbit JR_JDQ = P3^3;
sbit JS_JDQ = P5^5;

sbit KEY1 = P3^2;
sbit ERR_LED = P5^4;
bit t0zd0b=0;
bit t1zd0b=0;

uchar count;
char sec,min;

uint  i=0,j=0;
uchar t0IntCnt = 0; //T0中斷計數(shù)變量
uint ledFlashCnt = 0;        //ERR_LED指示燈閃爍周期計數(shù)
uchar Flag2ms = 0;      //2MS到標(biāo)志
uchar u8Flag6min = 0;        //15分鐘到標(biāo)志

void TM0_init()  //5毫秒@11.0592MHz
{
        AUXR &= 0x7F;                        //定時器時鐘12T模式
        TMOD &= 0xF0;                        //設(shè)置定時器模式
        TMOD |= 0x01;                        //設(shè)置定時器模式
              TL0 = 0x00;                                //設(shè)置定時初始值
              TH0 = 0x28;                                //設(shè)置定時初始值
        TF0 = 0;                                //清除TF0標(biāo)志
        TR0 = 1;                                //定時器0開始計時
        ET0 = 1;                                //使能定時器0中斷
//        EA = 1;     
}


void Timer1_Init(void)                //250微秒@11.0592MHz
{
        AUXR &= 0xBF;                        //定時器時鐘12T模式
        TMOD &= 0x0F;                        //設(shè)置定時器模式
        TL1 = 0x1A;                                //設(shè)置定時初始值
        TH1 = 0xFF;                                //設(shè)置定時初始值              
        TF1 = 0;                                //清除TF1標(biāo)志
        TR1 = 1;                                //定時器1開始計時
         ET1 = 1;      //開T0中斷     
//               EA = 1;       //開總中斷
}

/*
必須開啟T0中斷,延時函數(shù)才起作用
*/
void delay_1ms(void)
{
        uchar i = 4; //每次256us,1ms中斷4次
        while (i) {
                if (t1zd0b)
                {
                       t1zd0b = 0; //清除時間中斷標(biāo)志
                        --i;
                }
        }
}
void delay_ms(uint var)//延時單位為毫秒,最多延時65.535秒(65535mS)
{
        while (var--)
        {
                delay_1ms();
        }
}


#define d_s(s) delay_ms((s)*1000ul)//延時單位為秒


void IO_init()
                {                 
                                P3M0 = 0x08; P3M1 = 0x00;
                                P5M0 = 0x30; P5M1 = 0x00;
                        ERR_LED = 0;
                        JS_JDQ = 1;
                        JR_JDQ = 0;                       
                }


void TM0_Isr() interrupt 1    //5毫秒
        {    //ERR_LED ^= 1;                            //測試是否進入中斷
           if(TF0)        //定時器 0 上溢中斷
        {  
                TF0 = 0;
                t0zd0b = 1;
                t0IntCnt++;
                if(t0IntCnt>=8)        //8*250 = 2ms
                {
                        t0IntCnt = 0;
                        Flag2ms=1;
                        ledFlashCnt ++;
                }      
        }
        }
      
void TM1_Isr() interrupt 3            //250毫秒
        {       //  ERR_LED ^= 1;                        //測試是否進入中斷
                if(TF1)
                TF1=0;
                t1zd0b=1;
        }      


void main()
{                     
    TM0_init();
          Timer1_Init();
           EA = 1;       //開總中斷
    IO_init();
    delay_ms(80);
    while (1)
     {
                                                        if(KEY1 == 1 )     //缺水時
                         {                                                                                                                                                                                                                                                                                                                                              
                                                        ERR_LED = 1;
                                                        JS_JDQ = 1;                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       
                                                        JR_JDQ = 0;               
                                                         
                                                        if(t0zd0b)
                                                        {
                                                        t0zd0b=0;                               
                                                          if(++count >= 200)    //200*5=1000ms
                                                                {
                                                                        count = 0;
                                                                        sec++;
                                                                        if(sec >= 60)
                                                                                {
                                                                                sec = 0;       
                                                                                min++;
                                                                                if(min >=2)       //6分鐘
                                                                                min=0;
                                                                                u8Flag6min = 1;
                                                                                }                                                                                                               
                                                                 }                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                         }
                                                         else        //6分鐘到,執(zhí)行LED閃爍   3、如果第一個動作水位一直不能到,
                                                                                                                                                                                //也就是開關(guān)一直斷開高電平,則故障燈閃爍,
                                                                                                                                                                        //加水加熱燈全部熄滅。
                                                                                 
                                                                        {                                                       
                                                                                                JS_JDQ = 0;                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       
                                                                  JR_JDQ = 0;       
                                                                                                        if (ledFlashCnt>=200) //200*5=1000ms
                                                                                                                                {
                                                                                                                                ledFlashCnt = 0;
                                                                                                                                        ERR_LED ^= 1;
                                                                                                                                }                                                                                                                                                               
                                                                        }
               }
                                                               
               else //if(KEY1==0)                                            
                     {
                        u8Flag6min = 0;
                        ERR_LED = 0;                                                                                                      
                         JS_JDQ = 0;
                          d_s(1);
                           JR_JDQ = 1;                                                                                                                                               
                                                                                 }
      }                                                                             
}

















作者: lkc8210    時間: 2024-1-7 23:06
28行為啥要用模式1?
30行的初始值哪來的?






這兩個if永不為真









歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1