<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

使用按鈕依次切換8個輸出且可控制輸出通道

冬至子 ? 來源:呆萌的長頸鹿 ? 作者:三十而惑 ? 2023-12-04 15:52 ? 次閱讀

本案例使用按鈕依次切換8個輸出且可控制輸出通道,比如控制指示燈,可以輸入序號來點亮該序號指示燈,連接時鐘信號可以實現跑馬燈效果。點擊正向按鈕則正序依次切換指示燈,如此反復。點擊反向按鈕則逆序依次切換指示燈。

功能介紹

圖片

  • 如果EN為FALSE,則所有輸出均為FALSE。輸入EN必須為TRUE,在E = TRUE時只有一個輸出Qn為TRUE。
  • 當E = TRUE時,使用輸入UP從輸出Qn切換到Qn +1,而輸入DN將輸出Qn切換到Qn-1。
  • 當E = TRUE時,可以由SET輸入和輸入IN值選擇主動輸出Q0..Q7。如SET=TRUE,IN=5將輸出Q5=TRUE,而所有其他輸出都設置為FALSE。
  • 當E = TRUE時,輸入RST=TRUE將輸出Q0設置為TRUE,而所有其他輸出都設置為FALSE。
  • 當E = TRUE時,狀態輸出總是顯示當前選擇了哪個輸出Qn;當E=FALSE時,狀態輸出保持不變,E再次變為TRUE時,Qn再次輸出。

SELECT_8源代碼

SELECT_8實現的是選擇器的功能,內部調用一個取模函數INC,詳見下面介紹取模運算(INC)以及其代碼。

圖片

圖片

圖片

01

取模運算(INC)

取模是除以兩個數字時查找余數的操作。因此,當你問“什么是2 mod 2?”時,你是在問 “當你把 2 除以 2 時,余數是多少?”

圖片

SELECT_8源代碼

FUNCTION_BLOCK "SELECT_8"
TITLE = 'SELECT_8'
{ S7_Optimized_Access := 'TRUE' }
VERSION : 0.1
   VAR_INPUT 
      E : Bool;
      SET : Bool;
      IN : Int;
      UP : Bool;
      DN : Bool;
      RST : Bool;
   END_VAR




   VAR_OUTPUT 
      Q0 : Bool;
      Q1 : Bool;
      Q2 : Bool;
      Q3 : Bool;
      Q4 : Bool;
      Q5 : Bool;
      Q6 : Bool;
      Q7 : Bool;
      STATE : Int;
   END_VAR




   VAR 
      last_up : Bool;
      last_dn : Bool;
   END_VAR








BEGIN


IF #RST THEN
  #STATE := 0;
ELSIF #SET THEN
  #STATE := #IN;
ELSIF #UP AND NOT #last_up THEN
  #STATE := "INC"(X := #STATE, D := 1, M := 7);
ELSIF #DN AND NOT #last_dn THEN
  #STATE := "INC"(X := #STATE, D := -1, M := 7);
END_IF;
#last_up := #UP;
#last_dn := #DN;


#Q0 := FALSE;
#Q1 := FALSE;
#Q2 := FALSE;
#Q3 := FALSE;
#Q4 := FALSE;
#Q5 := FALSE;
#Q6 := FALSE;
#Q7 := FALSE;


IF #E THEN
  CASE #STATE OF
    0:
      #Q0 := TRUE;
    1:
      #Q1 := TRUE;
    2:
      #Q2 := TRUE;
    3:
      #Q3 := TRUE;
    4:
      #Q4 := TRUE;
    5:
      #Q5 := TRUE;
    6:
      #Q6 := TRUE;
    7:
      #Q7 := TRUE;
  END_CASE;
END_IF;




END_FUNCTION_BLOCK

INC源代碼

FUNCTION "INC" : Int
{ S7_Optimized_Access := 'TRUE' }
VERSION : 0.1
   VAR_INPUT 
      X : Int;
      D : Int;
      M : Int;
   END_VAR








BEGIN


#INC := (#X + #D + #M + 1) MOD (#M + 1);
END_FUNCTION
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 指示燈
    +關注

    關注

    3

    文章

    403

    瀏覽量

    28065
  • 跑馬燈
    +關注

    關注

    5

    文章

    117

    瀏覽量

    34477
  • RST
    RST
    +關注

    關注

    0

    文章

    30

    瀏覽量

    7331
  • 時鐘信號
    +關注

    關注

    4

    文章

    387

    瀏覽量

    28199
  • 選擇器
    +關注

    關注

    0

    文章

    105

    瀏覽量

    14364
收藏 人收藏

    評論

    相關推薦

    STM32定時器DMA輸出通道和雙通道輸出切換出現異常的原因?

    STM32定時器DMA輸出通道和雙通道輸出切換出現異常
    發表于 03-26 06:44

    控制按鈕切換相關

    單片機連接3按鈕,怎么編寫程序控制1按鈕切換選中兩
    發表于 04-04 14:29

    關于stm32 6pwm通道輸出

    請問一下,我希望有6pwm輸出通道,比如1,2,3,4,5,6,頻率相同,占空比50;但是我是每隔100ms選擇其中的兩,任意兩,由其
    發表于 04-11 17:22

    布爾按鈕控制數字輸出

    怎么設計VI使得上下左右停四按鈕分別控制常數12345的輸出
    發表于 05-08 18:51

    用于PLC的低側柵8通道24V低側數字輸出模塊

    接口。此設計具有尺寸小的特點,能夠在所有 8 通道上提供 0.5A 而不影響熱管理。主要特色高密度 8 通道 24V 低側數字
    發表于 12-13 14:20

    通道依次自動測試0-5v希望給點意見

    通道依次自動測試,測試輸出端Led指示燈或電壓顯示模塊顯示。有那么一點思緒,不過全給否了。往大神給點意見。
    發表于 01-15 16:08

    請問該芯片是否可以控制單通道輸出?

    8通道DA芯片tlv5610,輸出第一通道同時,第二通道
    發表于 06-12 06:14

    AD7124-8 AD采集的通道隨機切換,怎么才能按順序切換通道?

    AD7124-8 采用8全差分輸入,全功率,AD采集的通道隨機切換,有時候兩
    發表于 12-07 08:17

    關于變頻器的輸出切換問題探討——兼論水泵群軟起停控制方案

    關于變頻器的輸出切換問題探討——兼論水泵群軟起停控制方案 摘要:針
    發表于 07-15 09:47 ?1153次閱讀

    凌力爾特發表雙組輸出降壓切換穩壓器--LT3992

    凌力爾特(Linear Technology)發表完整的雙組輸出降壓切換穩壓器--LT3992,此元件可從每通道提供3安培(A)連續輸出電流;3~60伏特(V)輸入電壓范圍
    發表于 04-20 08:53 ?476次閱讀

    mcgs按鈕怎么切換畫面

    第一個在執行Sleep時,窗口0里是不能運行任何東西的,比如按鈕之類的都不能好使了。所以我不喜歡用。而第二種就不會影響窗口里的東西,我一般是用第二個,然后窗口0里面在放一個按鈕,切換窗口,這樣用兩種方式
    的頭像 發表于 02-09 09:54 ?2.7w次閱讀
    mcgs<b class='flag-5'>按鈕</b>怎么<b class='flag-5'>切換</b>畫面

    電機控制器的4種輸出模式

    作用,松手無作用; ?自鎖:按下有作用,松手后依然有作用; ?互鎖:一般有兩個按鈕(比如A和B)控制輸出,當按下A鍵,松手后輸出依然有效;當按下B鍵,斷開與A相關的
    發表于 10-15 16:42 ?3615次閱讀

    溫控器可控硅觸發輸出控制溫度

    智能溫控儀可控硅觸發輸出,分為可控硅(SCR)過零觸發輸出和SCR移相觸發輸出。可控硅一般選
    的頭像 發表于 10-24 09:43 ?6454次閱讀

    使用按鈕式數字電位計設計可調電壓輸出

    本文介紹一種完整的解決方案,其中可通過按鈕式數字電位計簡單高效地控制高達20 V的電壓。完整的解決方案代表可調電源,可用于需要可調電壓輸出的各種應用。圖1所示為具有可變輸出功率的相應開
    的頭像 發表于 02-15 12:02 ?1538次閱讀
    使用<b class='flag-5'>按鈕</b>式數字電位計設計可調電壓<b class='flag-5'>輸出</b>

    按鈕開/關電源控制

    本應用筆記給出了一個單按鈕電源控制電路。該設計由一個由按鈕、去抖動器和觸發器組成的開/關控制電路組成。該電路通過控制LDO來
    的頭像 發表于 06-25 11:21 ?659次閱讀
    單<b class='flag-5'>按鈕</b>開/關電源<b class='flag-5'>控制</b>
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>