欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 請問這個C語言程序里為什么bb%38==0是1秒鐘? [打印本頁]

作者: 409406709    時間: 2021-4-15 19:39
標(biāo)題: 請問這個C語言程序里為什么bb%38==0是1秒鐘?
void  main(  void  )
{  
while(1)
        {
   bb++;
            if(ks==1)
                          {         
                               if(bb%38==0) //1秒鐘
                                    {
                                                  miao++;
                                                  if(miao>=60)
                                                  {
                                                            miao=0;
                                                          fen++;
                                                          if(fen>=100)fen=0;
                                                          if((fen==shijian)&&dang>=1)
                                                          {
                                                                          yuyin();
                                                                        for(i=0;i<5;i++)
                                                                        {
                                                                                led=0;
                                                                                delay_ms(50);
                                                                                led=1;
                                                                                delay_ms(50);
                                                                        }
                                                                        led=1;
                                                                        fen=0;
                                                                        miao=0;
                                                                        ks=0;
                                                          }
                                                  }        

                                         }


作者: aygc    時間: 2021-4-15 19:39
是不是這樣理解,單片機(jī)程序跑一圈所用的時間來定時的,這個時間雖然不太準(zhǔn),但是不占用定時器,在要求不高的地方實(shí)際上也不錯
作者: wulin    時間: 2021-4-16 07:29
如果主循環(huán)周期=0.0263157894736842秒,if(bb%38==0)bb能整除38即1秒鐘。不過這段代碼不嚴(yán)謹(jǐn),明顯出于某習(xí)作。
作者: cn_zhx    時間: 2021-4-16 16:11
和單片機(jī)的時鐘頻率以及運(yùn)算速度有關(guān)系。
作者: 409406709    時間: 2021-4-16 22:43
wulin 發(fā)表于 2021-4-16 07:29
如果主循環(huán)周期=0.0263157894736842秒,if(bb%38==0)bb能整除38即1秒鐘。不過這段代碼不嚴(yán)謹(jǐn),明顯出于某習(xí) ...

請問一下什么叫主循環(huán)周期?是說0.0263157894736842秒晶振就震蕩一次,然后bb就+1嗎?
這個主循環(huán)周期是測試出來的嗎?
作者: 409406709    時間: 2021-4-16 22:44
cn_zhx 發(fā)表于 2021-4-16 16:11
和單片機(jī)的時鐘頻率以及運(yùn)算速度有關(guān)系。

可以再說詳細(xì)一點(diǎn)么,這個時鐘頻率是由外部晶振決定的嗎?謝謝
作者: 409406709    時間: 2021-4-17 11:43
aygc 發(fā)表于 2021-4-17 10:57
是不是這樣理解,單片機(jī)程序跑一圈所用的時間來定時的,這個時間雖然不太準(zhǔn),但是不占用定時器,在要求不高 ...

應(yīng)該是,不過想再請問一下這個單片機(jī)程序跑一圈的時間是固定的,還是自己設(shè)定的?是由外部晶振電路決定的么?是不是要通過測試測出單片機(jī)程序跑一圈的時間?是不是單片機(jī)程序跑一圈,bb就自加1?
作者: MV-BP1X    時間: 2021-4-17 11:43
跟你的指令周期和執(zhí)行的代碼量有關(guān)系,計(jì)時的話可以開個定時器來實(shí)現(xiàn)
作者: a4732710    時間: 2021-4-17 11:44
if(bb%38==0)意思就是bb=0或者38或者76或者……反正能被3整除的數(shù)這個如果就成立。
作者: aygc    時間: 2021-4-19 11:42
409406709 發(fā)表于 2021-4-17 11:43
應(yīng)該是,不過想再請問一下這個單片機(jī)程序跑一圈的時間是固定的,還是自己設(shè)定的?是由外部晶振電路決定的 ...

我是這樣理解的,單片機(jī)程序要正常持續(xù)工作,肯定在循環(huán)執(zhí)行指令代碼,不會停下來,他這個定時方式只能用在對時間要求不高的地方,比如指示燈閃頻等,如果單片機(jī)相應(yīng)外部中斷等預(yù)料外的操作,整個單片機(jī)跑一圈的時間肯定是有差異的。
作者: aygc    時間: 2021-4-19 11:52
a4732710 發(fā)表于 2021-4-17 11:44
if(bb%38==0)意思就是bb=0或者38或者76或者……反正能被3整除的數(shù)這個如果就成立。

請教一下他這個值為什么這樣確定的?




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