怎样在matlab中读取串口

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样在matlab中读取串口相关的知识,希望对你有一定的参考价值。

s=serial('com1');//设置串口
set(s,'BaudRate',9600,'StopBits',1,'Parity','none','DataBits',8,'InputBufferSize',255);
//串口的一些设置,注意,'none'有引号,有些值如InputBufferSize只能在串口关闭时才能设置,
//所以不建议先打开串口
fopen(s)//打开串口
fwrite(s,100);//打100(十进制)写入串口也可以是一维数组,可以用示波器测com的第3个引脚
a=fread(s);
//读出串口数据,由于matlab是顺序执行的,所以这里读不到100,
//程序会卡在这里直到读到数据为止,好像是存完buffer吧,这里忘了。
//自己从com的第2个引脚给数据试试看就清楚了
fclose(s);//关闭串口
参考技术A matlab对底层硬件支持较差,我也做这个,虽然我无法帮你解决问题,我给你个建议,如果你有c基础或者c++,你可以使用vc++写个接口的再给数据传递该matlab引擎计算,或者直接建立一个mfc工程,用混合编程,解决问题,效果非常好,还有你可以在百度搜一下matlab2008又可以下载的破解版,对硬件支持有所改观。你试下!祝你好运!

怎样用matlab做histogram

给你一个例子,例如:

x=-5:0.1:5

y=randn(1000,1)

hist(y,x)

参考技术A

可查看hist函数

doc hist

>> data = [0,2,9,2,5,8,7,3,1,9,4,3,5,8,10,0,1,2,9,5,10];

>> hist(data)

参考技术B MATLAB

命令:I=imread('bmp格式的图像');

a=rgb2gray(b);

imhist(a);

VB,imhist也行

要有C语言用for(i=0;i<256;i++)

m_count[i]=0;


for(i=0;i<m_Height;i++)
for(j=0;j<m_Width;j++)

lpSrc=(unsigned char*)m_lpDIBBits+((m_Width*8+31)/32*4)*i+j;
m_count[*lpSrc]++;

以上是关于怎样在matlab中读取串口的主要内容,如果未能解决你的问题,请参考以下文章

MATLAB串口数据读取问题

matlab串口接收数据的问题

matlab读串口数据问题

MATLAB如何保存串口读入的数据?

MATLAB调用串口

c#从串口读取数据怎样读一个就清空缓存