網頁

將雲端開發平台Blynk的step工具數值發送至序列



今天要介紹的是step工具,這個工具的使用上就像是累計版的Slider拉桿工具一樣,稍微摸索一下是蠻好懂的。以下就來介紹一下這個工具的一些細節。



在step工具中可以選擇Digital與Virtual輸出,Digital輸出的部分沒有甚麼,在之前的工具都有介紹過,就只是直接改變數位腳的輸出大小而已。而我今天要做的是將step的數值透過Virtual輸出到序列中顯示。

首先可以在這裡下載到程式範例,接著把char auth、char ssid與char pass都修改成自己的參數,接著我再加上一行程式碼在裡面,注意我使用的是V0而非V1虛擬引腳,這可以自己選擇,只要APP跟程式中的虛擬引腳相同即可。

BLYNK_WRITE(V0)
{
  int pinValue = param.asInt();
  Serial.println(pinValue);
}

這個程式碼可以使得當blynk APP中的step發送數據到硬體時,將發送的數值列印在序列視窗中。我APP中的設定都沒有更動,讓我們看看會送出甚麼樣的數值。

我們可以發現到step輸出在序列中的數值是這樣的,跟按下運行後該工具右上角的數值完全相同,可以在0~1023之間發送。



而該工具下方有一些有趣的設定,首先是SEND STEP,這個選項開啟後會使得在發送時的數值是單純輸出STEP的正或負值。



意思就是這個模式只會單純輸出步階(STEP)的大小,然後加上正負號而已。



而LOOP VALUES則是當數值超過或低於最小值時,會從最大或最小開始輪迴,類似0在下去會變成1023,1023超過則會變成0這樣。最後ICONS的部分只是圖示上的差別,並不會影響數據的發送。

這個工具也可以傳送浮點數,只要把程式這樣改就好,而傳送時會以小數點後第二位傳送。

int pinValue = param.asInt();

改成

float pinValue = param.asFloat();

這個工具很適合用在溫度的調整或遙控器選台的功能,每按一次就進行一次的升降或加減。