Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2007-04-24, 17:36   #1
中少
普通会员
 
中少 的头像
 
注册日期: 2007-04-23
年龄: 40
帖子: 56
声望力: 22
中少 是一个将要出名的人中少 是一个将要出名的人
默认 【求助】求一个带gui界面的matlab串口通信演示程序

RT。
最近正在学习这方面的东西。需要一个程序学习一下!!哪位大哥有帮忙介绍一下!!十分感谢了!!!
下面是编写的一个
串口接受的程序,但是却不能完成接收的功能。个人认为是不时 receivedata这个函数的调用时出错了!!
那位高手帮忙解决一下!!
%首先检验是打开串口操作还是关闭操作

%打开操作
if(strcmp(get(hObject,'string') , 'Open Serial Port'))
%建立一个serial object,并设置其参数(接收的终止符号为\n)
try
handles.serial = serial(handles.com,'BaudRate',handles.baud_rate,'DataBits',handles.dataBits,...
'Parity',handles.verifiedBits,'StopBits',handles.stopBit,'FlowControl',...
handles.flowControl,'terminator',char(13));
set(handles.serial,'OutputBufferSize',512000);
set(handles.serial,'InputBufferSize',512000);
handles.serial.BytesAvailableFcnMode = 'terminator';
%当接受到数据后如果碰到结束符\n就读入,调用receiveData函数
handles.serial.BytesAvailableFcn={'receiveData',handles};
guidata(hObject,handles);

%打开串口

fopen(handles.serial);
set(hObject,'String','Close Serial Port','foreGroundColor',[67/255,64/255,119/255]);
str = ['Serial Port ', handles.com , ' opened sucessfully!'];
set(handles.text3,'String',str,'fontweight','bold');
set(handles.pushbutton4,'enable','on');
set(handles.pushbutton5,'enable','on');
set(handles.pushbutton6,'enable','on');
catch
%进行出错处理
errmsg = lasterr;
errordlg([errmsg,char(10),' Can''t Open Serial Port : ',handles.com, char(10),' Please choose another Port!'],'Serial Port Open Error');
rethrow(lasterror);
end
%关闭串口操作
else

fclose(handles.serial);
set(hObject,'String','Open Serial Port','foreGroundColor',[1,0,0.5]);
str = ['Serial Port ', handles.com , ' closed sucessfully!'];
set(handles.text3,'String',str,'fontweight','bold');
set(handles.pushbutton4,'enable','off');
set(handles.pushbutton5,'enable','off');
set(handles.pushbutton6,'enable','off');
end
中少 当前离线   回复时引用此帖
旧 2007-04-24, 17:40   #2
中少
普通会员
 
中少 的头像
 
注册日期: 2007-04-23
年龄: 40
帖子: 56
声望力: 22
中少 是一个将要出名的人中少 是一个将要出名的人
默认

如果有好的建议,可以给我发短信。我会将全部的程序给你,一遍一起解决!!!
中少 当前离线   回复时引用此帖
旧 2008-06-06, 09:59   #3
foxselina
初级会员
 
注册日期: 2008-05-23
年龄: 42
帖子: 9
声望力: 0
foxselina 正向着好的方向发展
默认

在发送的时候依然会有:
??? Error using ==> serial.fprintf
A timeout occurred during the write operation.
这样的错误提示,实在不知道是什么没有写完就到了传输时间。
__________________
FATE? HAH! YOU ARE MINE....
foxselina 当前离线   回复时引用此帖
旧 2008-10-19, 10:07   #4
lihaili
初级会员
 
注册日期: 2008-10-19
年龄: 47
帖子: 3
声望力: 0
lihaili 正向着好的方向发展
默认 回复: 【求助】求一个带gui界面的matlab串口通信演示程序

正在找这方面资料,学习了
lihaili 当前离线   回复时引用此帖
旧 2009-09-10, 16:52   #5
lsajohn
初级会员
 
注册日期: 2009-03-27
年龄: 39
帖子: 1
声望力: 0
lsajohn 正向着好的方向发展
默认 回复: 【求助】求一个带gui界面的matlab串口通信演示程序

这个程序我倒是有了,请问原创是你吗?
我也碰到类似的问题,我觉得这里根本就没有调用到函数receivedata。我采用按钮进行接收,是可以接收到和显示数据的。但是估计以后接收实时数据时就只能采用中断方式了。不知道你现在问题解决没。
我的邮箱[email protected],有时间可以交流一下
lsajohn 当前离线   回复时引用此帖
旧 2010-08-25, 23:25   #6
sword030030
初级会员
 
注册日期: 2010-08-25
年龄: 38
帖子: 1
声望力: 0
sword030030 正向着好的方向发展
默认 回复: 【求助】求一个带gui界面的matlab串口通信演示程序

我也正在学,谢谢楼主了。
sword030030 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 06:13


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.