2015-05-25 88 views
0

我從MATLAB發送1到Arduino。當我從teraterm終端軟件發送1時,我的Arduino代碼完美工作。但是,當我使用此代碼從MATLAB發送1時,arduino TX lite閃爍但無法獲得1輸出。無法從MATLAB發送數據(1)到Arduino

s = serial('COM7','BaudRate',9600); 
fopen(s) 
fprintf(s,'1'); 
fclose(s) 
+0

嘗試指定格式(fprintf中)[http://www.mathworks.com/help/matlab/ref/serial.fprintf.html]壓制'\如果不是預期的,則在字符串的末尾加上'n'。如果它始終是單個字符,則使用'%c'格式。 – eventHandler

+0

此問題的任何更新?您是否檢查過串行使用的奇偶校驗和其他參數? – hyprfrcb

回答

1

此代碼的問題在於您沒有給出Delay來處理代碼。

根據我的計算:fopen(string)命令需要0.8754秒的處理時間。

所以加1秒延時就可以了。 .. 修改後的代碼:

clear all 
clc 
s=serial('COM7','BaudRate',9600); 
fopen(s); 
pause(1); 
fprintf(s,1); 
fclose(s); 
相關問題