现在我们已经介绍了基本的文件输入输出(更详细的文件操作稍后会讲),接下来我们可以进入下一步。

在**“基本读写数据”**一节中,我们的数据已经是电子表格的形式。那么这些数据是如何进入电子表格的?又该如何将它发送到其他地方?接下来的部分将尝试回答这个问题。

数据传输和接收的方法有很多。我甚至听说过一种叫 easternetinternet 的新潮东西,不过在这里我们假设你在一间没有网络连接的大学实验室里(别笑,我经历过这种情况太多次了)。在这种情况下,我们可以使用电脑的**串口(serial port)**进行通信,该接口采用 RS-232 物理层协议。虽然该协议传输速度很慢(通常不超过 9600 比特/秒),但实现非常简单,因此在嵌入式设备中仍然广泛使用。


MATLAB 串口通信的基本流程如下:

1. 创建串口对象

使用 serial 函数创建一个串口对象:

object = serial(port, 'PropertyName', propertyValue);

示例: 创建一个名为 serialOne 的串口对象:

serialOne = serial('COM1', 'BaudRate', 9600);

(熟悉 C 语言的同学可能会觉得这很像创建句柄:实际上这就是 MATLAB 的句柄创建方式)

在大多数电脑中,串口的命名为 COM 加一个数字,通常是 1 到 4(取决于你的机器配置)。这也包括 DB-9、DB-25 等常见 DB 类型的串口连接器。


2. 打开串口对象

电脑识别了串口对象后,你必须用 fopen 命令将其打开:

fopen(serialOne);

3. 向串口写入数据

例如发送一个文本文件名:

fprintf(serialOne, 'textFile.txt');

4. 关闭串口对象

操作完成后务必关闭串口对象,以释放资源:

fclose(serialOne);

完整示例:

serialOne = serial('COM1', 'BaudRate', 9600);  % 创建串口对象
fopen(serialOne);                              % 打开串口
fprintf(serialOne, 'textFile.txt');            % 向串口发送数据
fclose(serialOne);                             % 关闭串口

进一步阅读

  • 推荐关键词:Serial Programming(串口编程),了解更多关于串口通信的实现细节与高级功能。

最后修改: 2025年04月16日 星期三 11:25