2012年2月19日 星期日

Data Flow Programming #2

A + B = Sum

承上篇,這次我們來做個簡單的算術,來寫一支計算 A + B = Sum 的程式。

首先,建立一個 Blank VI,切到 Front Panel,在 Front Panel 工作區域上的任何位置點滑鼠右鍵打開 Controls Palette,然後點選 Numeric 以叫出 Numeric Palette:

2012-01-17 23h55_01

在 Front Panel 上放兩個 Numeric Control 和一個 Numeric Indicator:

2012-01-18 00h00_26

把三個物件的 Labels 改成 A, B 和 Sum:

2012-01-18 00h01_37

這時候 Block Diagram 會出現三個對應的 Terminals:

2012-01-18 00h03_03

在 Block Diagram 工作區域上的任何位置點滑鼠右鍵打開 Functions Palette,點選 Numeric 以叫出 Numeric Palette:

image

在 Block Diagram 上放一個 Add 的 Function:

2012-01-18 00h05_58

然後為 A, B 和 Sum 這三個 Terminals 進行接線,如下圖:

2012-01-18 00h06_49

這樣程式就寫完了。

執行程式

當你按 Run 鈕執行這支程式的時候,A 和 B 的數值就會經由接線傳遞到 Add 的 Function 進行加法運算,加總後,接著總合會經由接線傳遞到 Sum 物件上。

所以,比如現在我們在 A 和 B 上輸入數值,例如 30 和 20:

2012-01-18 00h10_24

執行這支程式後,Sum 就會變成 50:

2012-01-18 00h11_14

後記

你可以用數學符號替這支程式裝飾一下,像這樣:

2012-01-18 00h12_14
▲ 我的美感不好,GUI 設計看起來不是很美觀,請見諒!

要怎麼在 Front Panel 上增加 + 和 = 這兩符號呢? 方法是叫出 Controls Palette 後,點選 Decorations:

image
Decorations > Label

在 Front Panel 上放兩個 Label,接著用鍵盤在兩個 Labels 上分別輸入 + 符號和 = 符號,然後再把字型放大就可以了。我用的是 36 號字型。

動動腦

利用 PushButton 和 Round LED 設計一個求 X And Y = ? 的程式,可以參考下圖製作 GUI 介面:

image

這支程式的邏輯必須控制只有在 X 和 Y 都是 true 時 LED 才可以亮(也就是 X 和 Y 兩個按鈕都被按下時),而 X 和 Y 的其它狀態組合下 LED 都不可以亮:

2012-01-19 18h19_15 

提醒:And function 可以在 Functions Palette > Boolean 裏找到,而箭頭符號則可以在 Controls Palette  > Decorations 裏找到。

0 意見: