这是我的第一个问题,所以我尽力解释它。 我的目标是通过我的网站处理收集一个号码并将其发送到我的arduino。我试图在数字1进入时将我的指示灯打开,或在数字0进入时将其关闭。
到目前为止,我设法从我的网站收集号码。 当我用arduino串行监视器向arduino发送一个数字时,arduino代码也可以工作。
无效的部分是从处理到arduino的号码发送。领导只是闪烁一次。
这是我的处理代码:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="buy" style="text-align:center;">
<span style="margin-right:3px;font-size:14px;" class="Lite_Price">$20.00</span>
<input type="hidden" maxlength="2" name="qty" class="quantity-wrp itemqty" value="1">
<input type="hidden" name="prod_id" class="prod_id" value="151">
<input type="hidden" name="code" class="code" value="152PM">
<input type="button" value="Promo product" id="promo_button_1">
</div>
<div class="buy" style="text-align:center;">
<span style="margin-right:3px;font-size:14px;" class="Lite_Price">$20.00</span>
<input type="hidden" maxlength="2" name="qty" class="quantity-wrp itemqty" value="2">
<input type="hidden" name="prod_id" class="prod_id" value="252">
<input type="hidden" name="code" class="code" value="255PM">
<input type="button" value="Promo product" id="promo_button_2">
</div>
这是我的arduino代码:
import processing.serial.*;
Serial ComPort;
String input[];
void setup(){
String portName = Serial.list() [0];
ComPort = new Serial(this, portName, 9600);
ComPort.bufferUntil('\n');
input = loadStrings("website-adresse");
if(input.length != 0){
String s_current = input[0];
int current = Integer.parseInt(s_current);
println(current);
delay(2000);
ComPort.write(current);
}
}
我刚接触编程,我的英语不太好,所以我为此道歉。
感谢您的帮助
问候Jenni
答案 0 :(得分:2)
主要问题是在0 (0x00)
上发送值1 (0x01)
和ComPort
,但您期望'0' (0x30)
和'1' (0x31)
。
如果您将案例更改为期望0
和1
而不是'0'
和'1'
,那么它将起作用(但这些值在串行监视器中不起作用,除非你有两种变体)