现如今大多数的设备都是通过仪器设备而不是通过人力耗时耗力地去进行监测了,自动化的普及解放了大量的劳动力。那今天就讲一下我自己制作的一个自动采集单片机发送数据给pc机的小项目吧。其中需要大家自己准备的材料仅有hc32f005小开发板一块,烧录程序用的cp2102模块一个。
其中电脑数据采集界面使用labview开发,单片机使用的是华大的hc32f005,其内核为cortex-m0(由于疫情期间外国cpu疯狂涨价,所以尝试使用了国产芯片)。

项目内容为单片机通过uart协议连续发送字符串“123456789”,通过uart转usb连接至电脑,将数据发送至利用labview开发的visa串口界面显示,该界面可以将接收到的字符串转化为十进制数值,并存入布尔数组指示灯,判断数值大于5时为异常,此时指示灯显示为绿色,否则为红色。

话不多说,先上效果图,如果感兴趣的就继续再看下去吧,我会尽量把整个小项目的内容完善,使大家可以完全了解并自行上手操作。

上位机的制作是利用labview来实现的,这个软件区别于大多数采用语言编程的软件来说,其采用图形化编程入手更加简单,开发速率快,如果有兴趣自己开发电脑软件或者开发各种数据采集界面的朋友们可以了解学习一下,当然其用途还有很多,大家自己可以去摸索。labview的下载和安装教程我会附在网盘中,大家可以下载参考。
然后这里再说一下hc32f005烧录以及跟labview通信时一些需要注意的点:

首先先将单片机与cp2102按上述连接方式连接好,然后选择好对应单片机型号,波特率尽量不要太高,否则容易显示连接不成功,选好对应hex文件和串口模块对应的com号,然后点击执行即可烧录程序,keil程序我也附在网盘中了。
程序烧录结束后,需要复位或者重新上电单片机,此时注意应将单片机rst连接模块dtr的那根线断开,否则将无法正常与labview进行通信。
而labview方面应注意,打开serial.vi后先点击右上角的连续运行,此时应先单击一次读取停止,将以前的通信数据全部清除。

此时会弹出如下对话框,选择“继续”:

至此,labview便可以正确接收到单片机发来的“123456789”数据了,通过改变“设置读取字节”以及“接受数值大于多少为异常”控件里面对应的数字,可以改变布尔数组灯何时为红何时为绿。
至于该项目的扩展功能,可以通过在单片机中开启adc模数转化功能,利用adc口读取硬件的电压,然后通过uart发送至labview,实时显示该硬件工作是否正常,通过灯的颜色可以很清晰地显示出来,若是需要远程传输数据,可以通过485硬件接口桥接于uart与usb口之间,通信距离可以达上千米,至于电路部分就由各位大家去设计发挥吧。

最后附上整个小项目的网盘链接,感兴趣的朋友可以下载试着操作一下,一起学习进步。
链接:https://pan.baidu.com/s/10IjCS7T0_WxvC3fp8WtYtA
提取码:22mv

数据采集---自制上位机界面接收单片机uart数据相关推荐

  1. (项目实战)基于QT嵌入式ARM数据采集卡上位机(二)——页面布局

    (项目实战)基于QT嵌入式ARM数据采集卡上位机(二)--页面布局 上一篇文章<基于 QT 嵌入式ARM数据采集卡上位机(一)> 下一篇文章<(项目实战)基于QT嵌入式ARM数据采集 ...

  2. 基于 QT 嵌入式ARM数据采集卡上位机(一)

    基于 QT 嵌入式ARM数据采集卡上位机(一) 下一篇<基于 QT 嵌入式ARM数据采集卡上位机(二)-- 页面布局> 由于自己最近较为闲,刚好手上有设备,所以在业余时间编写了一个上位机和 ...

  3. C#上位机 3.常用控件和上位机界面设计

    这些控件都在工具箱内.打开VS一般在左侧有显示.如果没有点击视图→工具箱. 在解决方案中,双击Form1.cs即可来到设计界面. gropbox控件 GroupBox控件常常用于逻辑地组合一组控件. ...

  4. 【c#作为上位机控制51单片机(下位机)温度检测】

    文章目录 概要 C#上位机程序 51单片机(下位机)程序 使用DS18B20温度传感器实现测温 小结 概要 通过串口方式与下位机通信,通信协议自定上位机可以实时显示下位机采集到的温度数据  C#上位机 ...

  5. c语言如何控制上位机界面大小,电机上位机控制及界面设计参考.doc

    电机上位机控制及界面设计参考 PAGE 1 电机上位机控制及界面设计 吴牛俊 (自动化与电气工程学院 指导教师:周克宁) 摘要:随着计算机.电子.通讯技术的飞速发展,人们对于车间现场设备的运行管理控制 ...

  6. 基于labview的姿态测量系统上位机界面编写

    当时学习VB是为了写个上位机去控制LED亮灭,相信大家学习51,stm32都是从流水灯开始的,就像那句"hello world"一样经典.后来学习了LABVIEW,决定用它写个界面 ...

  7. LabVIEW开发的上位机界面在其它电脑分辨率下-界面窗口偏移显示问题解决

    目录 问题: 分析: 解决方式 1)编辑前面板边界适配对应的分辨率 2)编辑前面板窗口-窗口边界 3)编辑前面板窗口-保持窗口比例 4)设置VI属性--窗口运行时位置居中显示 参考 问题: 在基于La ...

  8. linux qt开发上位机,QT开发 ROS上位机界面

    前言 最近在给ROS机器人做上位机界面,因为有点C++的基础,也就选择了绿油油的QT来做.作为刚入门的小白,单单是配环境就折磨了我好几天(半路出家,好多坑得爬),做点笔记,但愿以后别重新踩坑,也希望能 ...

  9. 上位机开发C#语言:模拟STC串口助手接收单片机发送数据

    题目概述: 设计一个模拟STC串口助手,通过串口进行接收或发送数据. STC串口助手: 编程: using System; using System.Collections.Generic; usin ...

最新文章

  1. (C++)1029 旧键盘
  2. CustomValidator验证控件的ServerValidate事件
  3. python基础框架_Python基础框架和工具-阿里云开发者社区
  4. 软件常见故障的现象、故障排除的方法
  5. [Oracle PL/SQL]当数据表设计成具有父ID的时候,当需要选择所有与父ID同根生的所有节点的时候,使用的SQL语句...
  6. Daily scrum 10.15
  7. 长春南关区净月大街附近都有哪些课后班?
  8. 大学计算机导论报告,大学计算机导论论文参考.docx
  9. jQuery 效果 – 动画
  10. android 方法统计,Android 利用编译时 注入 统计App内所有方法执行时常,分析ANR
  11. java和线程相关的关键字有哪些_Java中有哪些机制来保证线程安全?synchronized关键字和volatile关键字...
  12. php 批量删除挂马文件夹,PHP批量挂马脚本
  13. swagger map示例_Android Google Map Street View示例
  14. java计算器流程图_我的第一个JAVA程序之计算器
  15. 国内较高水平的计算电磁学方面的高校和教授们
  16. zblogphp 广告联盟_zblog模板添加广告位置的方法
  17. bootstrap编写响应式页面
  18. endl 和 \n 的区别
  19. 混合高斯背景建模算法GMM
  20. apache服务器设置

热门文章

  1. 数字图像处理与MATLAB 第四章学习笔记
  2. 全栈开发工程师面试题一
  3. android 授予root权限,关于android手机获得ROOT权限问题
  4. html5手指测速,网速html5网速测试进度条代码
  5. esxi显卡给2个虚拟机_利用ESXi实现一拖二和各系统独立运行——基础篇
  6. AT91SAM9261开发板SBC6000X(转)
  7. QQ号码很危险 后果很严重
  8. SpringBoot 搭建微信小程序支付(JSAPI) 纯后端
  9. 九零起航服务器(港澳服务器) 如何设置404页面
  10. SQL语言——联结表