0

我开始学习一些使用 RaspberryPi 的硬件编程,并正在构建一个 node.js 框架,以便更轻松地编写程序来控制我的 Pi 上的 I/O(从 GPIO 开始)。

我正在使用 jasmine-node 进行测试。

现在当我的代码说类似

上 = 函数(){
   gpio.open(pin,"输出",function(err){    
        this.getVal();
        gpio.write(pin,1,function(err){
            console.log(pin + '现在应该打开');
            gpio.close(pin);
        });
    });
}

我实际上查看了 RaspberryPi 并检查了“pin”上的 LED 是否确实打开了。这不完全是自动化测试。

有关如何存根诸如 GPIO、I2C 等的任何建议等。

为了澄清,我希望在不连接到 RaspberryPi 的情况下测试 RaspberryPi 代码。

4

1 回答 1

0

使用此代码它将闪烁 LED。它是为 pin 18 设置的,因此请确保在运行脚本之前执行 gpio-admin export 18。请注意,我还添加了 process.on('SIGINT') 这将允许您使用 ctrl + c 来停止程序,这将关闭 pin。停止您的程序后,建议您取消导出该引脚,然后运行 ​​gpio-admin unexport 18

var gpio = require("pi-gpio");
var status = 0;
var timerId =0;
gpio.open(18, "output", function(err) {        // Open pin 18 for output
timerId =setInterval(function(){
gpio.read(18,function(err,value){
    console.log(value);

gpio.write(18, 1, function() {            // Set pin 18 high (1)


});


});
setTimeout(function(){
    gpio.read(18,function(err,value){
            console.log(value);
            gpio.write(18,0,function(){

            });
    });
},500);
},1000);
});
process.on('SIGINT', function() {
console.log('Got SIGINT.');
gpio.close(18);                       // Now close pin 18
clearTimeout(timerId);
});
于 2014-01-18T21:41:27.957 回答