|
如果serial receive勾选enable blocking mode,simulink与arduino可正常收发数据。但是如果不勾选,则无法正常收发数据,通过LED灯控制验证可知此时Arduino程序不在运行。同时,自己也用串口助手Arduino进行了控制,收发均正常。
一、阻塞模式下,0 1控制Arduino板载LED灯亮灭
int ledPin=13;
char YY;
void setup() {
pinMode(ledPin,OUTPUT);
Serial.begin(9600);
}
void loop() {
while(Serial.available()>0){
YY=char(Serial.read());
Serial.write(YY);
if (YY==0x00){
digitalWrite(ledPin,HIGH);
}
else{
//else if(YY==0x01){
digitalWrite(ledPin,LOW);
}
}
}
二、非阻塞模式下arduino程序是否运行验证
int ledPin=13;
void setup()
{
pinMode(ledPin,OUTPUT);
Serial.begin(9600);
digitalWrite(ledPin,LOW);
}
void loop()
{
digitalWrite(ledPin,LOW);
}
|
|