matlab串口实时波形显示

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

作者:GG

功能:实现matalb与PC外设通讯

本例:串口232与外设单片机51通讯。实时监控51数据并且实时图形显示

时间:2011—9—16

简介:实现该功能使用M脚本文件和函数文件。

第一个文件连接串口和打开串口,设置了串口的一些参数和触发事件。连接串口COM5。有关该方面的知识请自行百度I/O文字流。

第二个文件是时间回调函数,相当于其他语言中例如C语言的中断函数

第三文件是关闭串口和清除列连接。并且清除中间TXT中介文件内容

下面是源文件

第一个:

clear all

s=serial('COM5');%打开串口

s.BytesAvailableFcnMode='byte';%设置事件触发为接受触发

s.InputBufferSize=5000;%设置接受缓冲区大小为5000个字节

s.BytesAvailableFcnCount=10;%每次接受到50个数据时候触发事件

s.BaudRate=19200;%设置通讯波特率

s.BytesAvailableFcn=@my_callback;%指向触发事件函数

fopen(s);%打开串口

第二个

function my_callback(obj,event)

out=fread(obj,10,'uint8');%串口处读出50个数据

fid=fopen('G1.txt','a+');%打开文件并且追加

fprintf(fid,'%3d',out);

fclose(fid);

speed=textread('G1.txt','%u');

plot(speed);

disp('save ok!');

end

第三个

fclose(s);%关闭串口

delete(s);%删除串口变量

clear all;

fid=fopen('G1.txt','w');%清除中间文件txt

a=[];

fprintf(fid,'%s',a);

fclose(fid);

clear all;%清除所以变量

相关文档
最新文档