各版本对比
MathWorks - Archived MathWorks Documentation - MathWorks 中国
基本原则还是使用最新版的,如果硬件资源有限可参考主要变化选择合适的版本 建议2020b以及以后版本
几个关键版本变化
MATLAB® 实时脚本和实时函数是交互式文档,它们在一个称为实时编辑器的环境中将 MATLAB 代码与格式化文本、方程和图像组合到一起。此外,实时脚本可存储输出,并将其显示在创建它的代码旁。
什么是实时脚本或实时函数?- MATLAB & Simulink- MathWorks 中国
串行端口接口有一组新的函数和属性。现有功能仍可运行,但推荐使用新的函数名称和属性。新接口提高了性能。
通过使用 serialportlist 查看计算机上所有串行端口的列表,来开始使用新接口。
list = serialportlistlist =
1×4 string array
"COM1" "COM3" "COM4" "COM8"然后,创建一个 serialport 对象,将数据写入设备,并从中读取数据。
s = serialport("COM8",115200);
write(s,1:5,"uint32")
read(s,5,"uint32");TCP/IP 客户端接口有一组新的函数和属性。
您仍可以使用现有函数执行以下操作:
现在,您可以使用新函数执行以下操作:
通过创建一个连接到 TCP/IP 回显服务器的 tcpclient 对象、向其写入数据和从中读取数据,开始使用 TCP/IP 客户端接口。
echotcpip("on",3030)
t = tcpclient("localhost",3030)
write(t,1:5,"uint8")
read(t,5);有关详细信息,请参阅 TCP/IP 通信。
串行端口接口:改进了性能
serialport 接口的性能优于 serial 接口。例如,在使用 9600 的默认 波特率 时,以下代码中使用 serialport 对象写入和读取数据的速度大约是使用 serial 对象写入和读取数据速度的 1.1 倍。
% s is a serial object
function timingTest(s,bytecount)
fwrite(s,1:bytecount,"uint8");
fread(s,bytecount,"uint8");
end% s is a serialport object
function timingTest(s,bytecount)
write(s,1:bytecount,"uint8");
read(s,bytecount,"uint8");
end不同波特率条件下大致执行时间如下:
s.BaudRate | ||||
9600 | 19200 | 56000 | 115200 | |
serial | 120 毫秒 | 68 毫秒 | 31 毫秒 | 23 毫秒 |
serialport | 109 毫秒 | 55 毫秒 | 21 毫秒 | 11 毫秒 |
代码是在运行 Windows 10 的 Intel(R) Xeon(R) CPU E5-1650 v4 @ 3.60 GHz 测试系统上使用 timeit 函数进行计时的:
bytecount = 100;
timeit(@()timingTest(s,bytecount))测试是使用串行环回连接器完成的。
有关详细信息,请参阅串行端口设备。
2021b 支持python3.9
2021a 支持3.8 停止支持3.6
2020b停止支持3.5
2019a MATLAB 现在除支持 CPython 2.7、3.5 和 3.6 之外,还支持 CPython 3.7。
2018b Python 接口:在 MATLAB 和 Python 之间传递多维数值或逻辑数组
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删