Serial port communication
显示 更早的评论
I have an On-Board Diagnostics (OBDII) tool that I am trying to read the values from. This tool helps me trouble codes on a car's ECU. I can use hyperterminal to read the values through the USB. When I open the terminal with COM1, baud rate of 9600 and type in 03, it returns me some value.
How do I do the same in MATLAB? Is this it or do I need to do more?
s = serial('COM1'); fopen(s) fprintf(s,'03') out = fscanf(s)
Please suggest.
采纳的回答
更多回答(2 个)
Walter Roberson
2011-7-31
0 个投票
What terminator does the remote system need? fprintf(s,'03') is defined as fprintf(s,'%s\n','03') which sends 03 followed by whatever terminator is configured for the port. If that terminator does not match what the remote system is expecting, you could have difficulty.
Krishna Gummadi
2011-7-31
0 个投票
1 个评论
Walter Roberson
2011-7-31
You could set the terminator to carriage return, or you could use
fprintf(s,'%s\r', '03')
类别
在 帮助中心 和 File Exchange 中查找有关 MATLAB Support Packages 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!