音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費注冊 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機 | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

請教高手:關(guān)于在中斷中調(diào)用函數(shù)??

作者:幽谷天蘭 欄目:單片機
請教高手:關(guān)于在中斷中調(diào)用函數(shù)??
子函數(shù)是:
void cunchu (unsigned LONG t1,unsigned LONG t2,uchar p)
{
       if (TMR1IF==1)
              {
                 t1=65535;
                 TMR1IF=0;
              }
         else t1=t1+ct.a;
       
         if (t1>noise)
              {
              if(t2>0)
                 {
                  if(n1%2==p)
                    {
                             if(t2<65535) time1[n1]=t2;
                          if(t2>=65535)time1[n1]=65535;
                             n1++;
                    }
                 t2=0;
                }
            }
        else
            {
                t2=t2+t1;
                  t1=0;
            }
}
中斷函數(shù)是:
void interrupt ccpp1 (void)
{   
    GIE=0;
    CCP1IF=0;
    。。。
    
      cunchu(h,L,0);
          
          。。。
          cunchu(L,h,0);
。。。
}
這樣調(diào)用是否存在問題????
子函數(shù)只在中斷中調(diào)用過,其他地方未使用過。
程序編譯通過,硬件調(diào)試無結(jié)果,如果不用調(diào)用函數(shù)的形式,而在中斷中直接做
的話,硬件調(diào)試結(jié)果正確。請大家?guī)兔,謝謝!
是不是中斷里的兩個調(diào)用出現(xiàn)了邏輯錯誤?關(guān)于h和L每次使用是不是都是個新值,上一次調(diào)用后得到的h和L不對下次調(diào)用影響?如果是那樣,不出結(jié)果就可想而知了


* - 本貼最后修改時間:2005-11-14 13:13:50 修改者:幽谷天蘭

2樓: >>參與討論
xieyuanbin
如果確實沒在其他地方調(diào)用,
那么懷疑堆棧溢出.

3樓: >>參與討論
rad.zhu
變量是否被重復(fù)使用
在中斷中調(diào)用其他函數(shù)有個很重要的問題是:變量的定義

你的t1,t2,以及P需要定義成volatile類型,

這是告訴編譯器這個變量不在優(yōu)化的范圍內(nèi),所分配的地址不能重復(fù)使用。

改過之后再測試吧。



參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
哪里可以買到PLCC44封裝的PIC16F877??
請教一個在PICC下C與匯編混合編程的絕對定位問題
PIC KIT板子
遇到麻煩,請求幫助
PIC16F688北京有現(xiàn)貨嗎?價格多少?
免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進(jìn)入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號