首页 MATLAB与51单片机通信

MATLAB与51单片机通信

举报
开通vip

MATLAB与51单片机通信 桂电二院科协出品,版权所有,转载不究。 maswell_xiao@foxmail.com MATLAB 与 51 单片机通信通信 本文介绍 MATLAB 与 51 单片机进行简单的数据通信。首先介绍几个 MATLAB 关于串口 的几个小函数。 1. serial函数,该函数用来创建一个串口对象,格式为 obj = serial('port') obj = serial('port','PropertyName',PropertyValue,...) ...

MATLAB与51单片机通信
桂电二院科协出品,版权所有,转载不究。 maswell_xiao@foxmail.com MATLAB 与 51 单片机通信通信 本文介绍 MATLAB 与 51 单片机进行简单的数据通信。首先介绍几个 MATLAB 关于串口 的几个小函数。 1. serial函数,该函数用来创建一个串口对象,格式为 obj = serial('port') obj = serial('port','PropertyName',PropertyValue,...) serial函数括号内为串口名,用单引号引起。该函数返回串口对象 s。可以 将之当一个“文件”使用。当然可以用该函数设置该串口的波特率,格式为 s = serial('COM1','BaudRate',4800); s = serial('COM1','baudrate',4800); s = serial('COM1','BAUD',4800); 以上三种格式等价,都可以设置串口 1 的波特率为 4800。 2. fopen 函数,打开串口对象,格式为 fileID = fopen(filename) fileID = fopen(filename, permission) fileID = fopen(filename, permission, machineformat) fileID = fopen(filename, permission, machineformat, encoding) [fileID, message] = fopen(filename, ...) fIDs = fopen('all') [filename, permission, machineformat, encoding] = fopen(fileID) 如同文件一样打开串口对象。该函数返回串口 ID,如果串口无法打开,则返 回-1。 3. fread 函数,读取串口数据,格式为 A = fread(fileID) A = fread(fileID, sizeA) A = fread(fileID, sizeA, precision) A = fread(fileID, sizeA, precision, skip) A = fread(fileID, sizeA, precision, skip, machineformat) [A, count] = fread(...) 该函数执行是等待一段时间,如果没有接收到数据,该函数自动结束。 4. fclose 函数,关闭串口对象,格式为 桂电二院科协出品,版权所有,转载不究。 maswell_xiao@foxmail.com fclose(fileID) fclose('all') status = fclose(...) 在串口中使用该函数 fclose(s),关闭串口对象。当成功关闭该串口时,函数返回状态 0, 否则返回状态-1. 5. free 函数,解除 Matlab 对串口对象的控制。格式为 free(s) 释放 s 指向的内存空间。 6. delete 函数,删除对象 s,格式为 delete('fileName1', 'filename2', ...) delete(h) delete(handle_array) delete fileName 当使用 serial 函数创建一个串口对象而不用时要用该函数删除对象 s。这个与 fclose 不 同的是,fclose 仅仅是关闭串口对象暂时不用,delete 函数是直接删除,若使用 delete 函数删除对象还想再用时就要用 serial 函数重新创建串口对象用 fopen 打开对象。而 fclose 不用再创建对象。当使用 MATLAB 占用串口时,其他软件不能使用该串口,如串 口小助手。 7. clear 函数,从工作空间中删除对象 s,格式为 clear clear name clear name1 name2 name3 ... clear global name clear -regexp expr1 expr2 ... clear global -regexp expr1 expr2 ... clear keyword clear('name1','name2','name3',...) 在串口中可以这样用 clear(s)。clear 函数从工作空间删除变量,并释放系统内存。 桂电二院科协出品,版权所有,转载不究。 maswell_xiao@foxmail.com 先给 51 单片机写个小程序让之发送、接收数据。 /************************************************************************** author : maswell xiao email : maswell_xiao@foxmail.com frist date : 5/4/2012 15:13 **************************************************************************/ #include #include #define uchar unsigned char #define uint unsigned int #define BufferLength 32 uchar Buffer[BufferLength]={0}; bit flag=1; bit SendByte(uchar byte) { SBUF=byte; while(TI==0); TI=0; return 1; } bit SendString(uchar *pString) { uint i,length; length=strlen(pString);//#include for(i=0;i
本文档为【MATLAB与51单片机通信】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_331486
暂无简介~
格式:pdf
大小:451KB
软件:PDF阅读器
页数:6
分类:互联网
上传时间:2013-09-12
浏览量:36