簡體   English   中英

BeagleBone Black-for循環中的b.pinMode

[英]BeagleBone Black - b.pinMode in for loop

我最近獲得了BBB,並且一直在進行實驗,但是發現有時我的程序仍在后台運行,因此某些數字輸出仍然設置為高電平。 我決定嘗試通過編寫一種復位程序來解決此問題,該程序將循環訪問並將所有引腳設置為b.LOW 我的代碼如下:

var b = require("bonescript");

var port = "P8_0";

for(var i = 0; i < 46; i++){
    var j = i + 1;
    port = port.substring(0, 3) + j;
    b.pinMode(port, b.OUTPUT);
    b.digitalWrite(port, b.LOW);
}

這就是有趣的地方。 我收到以下錯誤:

/usr/lib/node_modules/bonescript/index.js:195
    throw('Invalid pin object for pinMode: ' + pin);
                                            ^
Invalid pin object for pinMode: [object Object]

根據我在設置引腳模式方面所看到的情況,這里唯一的問題是pinModefor循環內,而Cloud9不喜歡這樣。

好吧,當我輸入問題時,我腦子里打了一個腦波。 代碼不起作用的原因是因為您不能從引腳1開始。引腳1和2被保留,因為2接地,而1用於其他引腳。 因此,如果我們將代碼更改為此:

var b = require("bonescript");

var port = "P8_0";

for(var i = 2; i < 46; i++){
    var j = i + 1;
    port = port.substring(0, 3) + j;
    b.pinMode(port, b.OUTPUT);
    b.digitalWrite(port, b.LOW);
}

完全正常。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM