单片机数据用matlab处理程序设计,单片机串口论文,关于基于单片机MATLAB实现信号的波形显示相关参考文献资料-免费论文范文...

导读:该文是关于单片机串口论文范文,为你的论文写作提供相关论文资料参考。

(温州医科大学 信息与工程学院,浙江 温州 325035)

【摘 要】本文介绍了基于单片机与MATLAB实现信号的波形显示的方法.由单片机将外部信号模拟量转换为数字量,经单片机串口发送给计算机上的MATLAB实时分析显示.利用MATLAB强大的数据处理功能,能迅速处理采集到的波形数据,实时显示.本方法具有实时显示待测信号的波形,进行图像保存及捕捉波形幅值突变点等明显优点.

【关键词】单片机;MATLAB;波形显示

引言控制工程中的大量的数据采集系统通常是微处理器(单片机)系统,其处理、分析数据的能力相对较低,一般是将这些数据传送到PC机,由相应的应用软件系统进行处理、分析和形成图表、打印,因此,两类系统必须要实现通信.实现方法和应用平台很多.MATLAB是主要面对科学计算、可视化以及交互式程序设计的高科技计算环境.它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,代表了当今国际科学计算软件的先进水平,成为计算机辅助设计和分析、算法研究和应用开发的基本工具和首选平台.本文讨论应用MATLAB的GUI界面功能,实现PC机与STC系列单片机的串行通信.

1. 工作原理

模拟信号在时间上是连续的,所以在将模拟信号转换成数字信号时[1],必须对输入的模拟信号进行采样,然后将这些采样值转换成数字量输出.本模块利用单片机内部集成的AD采集的电信号模拟量转化成数字量,然后把数据打包用串口传给计算机上的MATLAB处理.

工作原理如图1所示.

6ffde11b9b24ff0f737a28741940bc36.png

2. 系统设计

2..1 单片机采集模块

本系统采用的单片机芯片STC12c5a60s2是STC生产的单时钟/机器周期(1T)的单片机,内部集成的A/D转换共8路,10位精度ADC,转换速度可达250K/S(每秒钟25万次),A/D转换口在P1口,有8路10位高速A/D转换器,速度可达到250KHz(25万次/秒).上电复位后P1口为弱上拉型IO口[2],用户可以通过软件设置将8路中的任何一路设置为A/D转换.该单片机的ADC是逐次比较型ADC.主次比较型ADC由一个比较器和D/A转换器构成,通过逐次比较逻辑,从最高位(MSB)开始,顺序地对每一输入电压与内置D/A转换器输出进行比较,经过多次比较,使转换所得的数字量逐次逼近输入模拟量对应值,具有速度高,功耗低等优点.本设计以软件设计为主.程序设计流程如图2所示.

程序开始后,单片机首先运行主程序,进行系统初始化操作.定时/计数器0中断进行定时采样,每当定时时间到,调用模数转换子程序进行信号采样并将其转换为数字量,再将采样得到的数字量传送给的串口.

2..2 单片机与PC机通信模块

51单片机有一个全双工的串行通讯口,所以单片机和计算机之间可以方便地进行通讯.进行串行通讯时要满足一定的条件,比如计算机的串口是RS232电平的,而单片机的串口是论文范文L电平的,两者之间必须有一个电平转换电路,我们采用了专用芯片MAX232进行转换,我们采用了三线制连接串口,也就是说和计算机的9针串口只连接其中的3根线:第5脚的GND、第2脚的RXD、第3脚的TXD.电路如图3所示,MAX232的第10脚和单片机的11脚连接,第9脚和单片机的10脚连接,第15脚和单片机的20脚连接.

7ea58353b538dbd620fca9ec0fce09ed.png

2..3 MATLAB设计模块

该模块由MATLAB波形显示处理,GUI界面的整体布局设计,MATLAB对串口的控制,程序设计四部分构成.

2..3.1 MATLAB波形显示处理

GUIDE是一个专用于GUI程序设计的向导设计器.利用MATLAB软件中GUI模块可以方便地设计出基于对话框的图形用户界面,它提供了诸如编辑框、按钮、滚动条等图形对象,通过对这些图形对象属性编辑器编写程序,设计出界面友好、操作方便的系统软件.采集到的电压信号通过单片机编码与电脑连接,利用MATLAB GUI界面显示电压波形并捕捉突变点,向下位机发出反馈讯号.PC机配置的RS232标准串行接口COM和单片机的串口连接,使用三线制(收、发、地)实现数据传递[3],用MAX232作为单片机与PC机间的电平转化芯片.

2..3.2 GUI界面的整体布局设计

通过MATLAB的GUI界面设计程序界面和功能,程序包括程序、COM口选择、波特率选择、数据位选择,停止位选择,打开串口、关闭串口,保存图像,捕捉阈值变化并标记.

2..3.3 MATLAB对串口的控制[4]

首先要创建串行口设备对象,这里用到的主要函数是serial().定义串口设备对象的通信属性,主要有波特率、异步串行帧格式(包括数据位、停止位等)和输出输入缓冲的大小等.波特率选择115200,COM口根据情况选择,数据长度默认为8位,停止位为1位,输入缓冲区大小为1M.用函数fopen()打开串口对象.进行MATLAB串行读写操作,主要用到的函数有fwrite( )等.关闭串口对象,用到的是fclose()等函数.

单片机串口通信:JC6-1 单片机串口通讯概念及控制寄存器介绍

2..3.4 程序的运行

进入MATLAB的GUI界面,打开程序,选择波特率和COM口,打开串口,图表就会开始实时显示串口接收的数据的波形,,当波形的阈值突然发生变化,超过我们设定的值,串口就会关闭,停止接收数据,波形停止,同时有红线标记突变点,蜂鸣器发出响声,此时的图像记录就是波形突变时的图像,然后在保存图像,就会弹出保存图片路径窗口,选择保存位置,就能保存此时的图像.关闭串口,停止接收数据,波形停止.关闭窗口,退出程序.

软件捕捉波形幅值突变点样例(正弦波为例)如图4所示.

3. 结束语

本设计结合单片机和MATLAB的优势,制成了一套上位机描绘接收信号波形的简易装置.实验证明了其完全可行性,也非常灵活.该装置具有稳定可靠、编程简单、方便易行、根据需要处理数据、实时显示结果等明显优点,并且能够根据实际需要修改参数实

c8c4405040424eb083c6014b20c2bee8.png

【参考文献】

[1]李广弟.单片机基础[M].北京:北京航空航天大学出版社,2001.

[2]吴金戎.8051单片机实践与应用[M].北京:清华大学出版社,2005.

[3]王爱玲.MATLABR2007图像处理技术与应用[M].电子工业出版社,2008.

[4]兰红莉.基于MATLAB的PC机与单片机串行通信实现[J].计算机应用与软件,2006,23(6):73-76.

[责任编辑:丁艳]

单片机串口范文

单片机串口通信参考文献总结:

关于单片机串口方面的论文题目、论文提纲、单片机串口论文开题报告、文献综述、参考文献的相关大学硕士和本科毕业论文。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值