2016-02-08 33 views
0

我需要一隻手。我試圖弄清楚如何洗牌一些neopixel引腳。現在,我有一個功能可以攪動這些引腳,但我不知道如何定義這些引腳並啓動這些條。我有什麼,我都在這裏引擎收錄:如何在安裝之前調用函數?或者在安裝之前製作neopixels初始化程序? [arduino]

http://pastebin.com/kzAv95Yr

基本上什麼絆倒我是這樣的:

NeoPatterns Strip1(32, neoPixelPins[0], NEO_GRB + NEO_KHZ800, &StripComplete); 

我不能移動到這個設置功能。所以我不能在安裝shufflepins()後執行此操作,並且無法將Strip1.begin()等移出函數或移入循環()的開始位置。

所以。我怎樣才能做到這一點?我需要首先洗腳,然後定義我的小條,然後啓動它們。這需要可重用,因爲在遊戲結束時,它會重新洗牌所有的引腳並重新開始。

我經歷這有一個讀:Call a function before main

但是,如果有人可以給我個忙,我將不勝感激。我是C++新手。

參考的neopatterns類來自何處:https://learn.adafruit.com/multi-tasking-the-arduino-part-3/using-neopatterns

謝謝!

回答

0

你想洗牌的PIN號碼,但你想這樣做之前調用構造函數,是嗎?

更簡單一些,只需在設置中調用Adafruit_NeoPixel::setPin即可。所以你可以在構造函數中傳遞任何舊的PIN碼,然後改變它們。

我經歷這有一個讀:調用函數前主

不要走這條路,這是不必要的複雜。


你能在設置折騰一個例子彌補Adafruit_NeoPixel :: setPin?

事情是這樣的:

Strip1.begin(); 
    Strip2.begin(); 
    Strip3.begin(); 

    Strip1.setPin (3); // or whatever 
    Strip2.setPin (4); 
    Strip3.setPin (5); 

我只是給了一個簡單的例子,你可以做你的洗牌和東西所產生的銷插入這三個函數調用。現在您在製作Strip1/Strip2/Strip3之前無需擔心洗牌。

+0

是!而已。回覆:我想調用構造函數之前洗牌。您可以在安裝過程中爲Adafruit_NeoPixel :: setPin折騰一個例子嗎? –

相關問題