亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

標題: 單片機對兩路開關信號先后順序計數問題,編程思想如何設計? [打印本頁]

作者: fancunwu    時間: 2017-12-6 23:13
標題: 單片機對兩路開關信號先后順序計數問題,編程思想如何設計?
基本要求是這樣的
1、開關1先閉合之后開關2閉合,計數器加1。
2、開關2先閉合之后開關1閉合,計數器減1.
請問用51單片機如何實現,主要是編程思想,望高手解惑,謝謝。



作者: ahshmj    時間: 2017-12-7 08:29
這個是非常簡單的“if”判斷語句,按條件轉向。是最基礎的。自己再熟悉熟悉“if”語句吧。
作者: HC6800-ES-V2.0    時間: 2017-12-7 09:34
你這個問題,就是一個判斷的問題。
我的經驗是這樣的:
第一、分析現象可能性。你有兩個開關,相當于二進制兩位,共四種情況
1、開關1沒閉合,開關2沒閉合,00
2、開關1閉合,開關2沒閉合,   01
3、開關1沒閉合,開關2閉合,   10
4、開關1閉合,開關2閉合,      11
第二:結合你的要求,以上的情況分為兩組,一個先,一個后。
第三:編程設計:兩組判斷(你的開關閉合先后時間差有沒有規定?),每組類似,如:
判斷開關1是否閉合?沒閉合則跳出判斷;閉合,則等待一會(延時),判斷開關2是否閉合?沒閉合,一直等待(看你的先后時間差的規定),或者跳出判斷;閉合,則+1;

寫到這里,我發現問題了!!!!!
如果兩開關已經閉合,例如:我先斷開開關1,此時算不算開關2閉合了?再閉合開關1,是不是可以認為是先閉合開關2,后閉合開關1,結果為—1呢?

所以,你給的條件是不夠的!!!!!邏輯不夠判斷哦。

體會一下我的思考過程,算不算編程思想的一種體現呢?
但愿對你有幫助。
作者: fancunwu    時間: 2017-12-8 11:05
while(KEY_SET==1)//
  {
    n_n_1=0;
    ls_js=sys_time1;
    while(KEY_UP==1&&KEY_DOWN==1&&n_n_1<10)
    {
     
      delay_1(2);
      n_n_1++;
      if(KEY_UP==0&&KEY_DOWN==1&&sys_time1<80)
      {
        sys_time1++;
      
      }
      if(KEY_UP==1&&KEY_DOWN==0&&sys_time1>10)
      {
        sys_time1--;

}
    }
  
    if(ls_js!=sys_time1)
    {
      zh_time1(sys_time1);
      lcd_TIME_CS_SCC();
    }
    write_com(0x0d);
    write_com(0x80+11);
   }
作者: zs0050    時間: 2017-12-8 13:51
明確你說的閉合是一個動作,還是一種結果。
作者: zs0050    時間: 2017-12-8 13:55
首先明確你說的閉合是一個動作還是一個結果。如果是一個動作,那么通過條件判斷先后判斷開關狀態就可以,如果是結果,那么可能有2樓的疑惑。
就是說,你指的閉合是上升沿、下降沿,還是電平觸發。這個確定了,自然就可以實現了。
作者: fancunwu    時間: 2017-12-8 14:06
先按A按鍵,再按B按鍵,數碼管計數加1;先按B按鍵,再按A按鍵,數碼管計數減1;  if(keyA==0&&keyB==0)    I++;     if(keyB==0&&keyA==0)    I--;  




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