0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

什么是上位机开发之单片机通信实践

汽车电子技术 来源:dotNet工控上位机 作者:新阁教育付工 2023-02-22 15:59 次阅读

-Begin-

经常会有一些学员会问到上位机单片机之间通信的问题,而我们经常会讲上位机与PLC之间通信,那么其实对上位机开发来说,不管是和PLC通信,还是和单片机通信,通信原理都是一样的。PLC的本质就是单片机,在单片机的基础上添加一些外围电路并形成产品化,即构成了PLC控制器。今天在这里给大家分享一个上位机与单片机通信的实例,希望对大家开发上位机有所启发。

1. 单片机硬件介绍

只要做上位机开发,就离不开通信协议。一般来说,单片机可以与上位机之间以串口通信为主,当然也不排除现在有的单片机也集成了以太网口。就串口通信而言,常用的几种通信方式,包括串口自定义协议、Modbus协议、CAN总线,接下来介绍的这个单片机是某个锂电池的核心板,它主要是支持Modbus协议和CAN总线的方式。

图片

2. 通信分析

(1)这里我们选择的是基于485总线的ModbusRTU通信协议,如果要实现上位机开发,需要单片机开发人员提供一份通信变量表,如果读取变量较多或者不连续,需要进行分组读取。

(2)通信变量表一般包含参数名称、Modbus地址、存储区、数据类型、换算公式等内容,能够将通信变量表看明白并完成通信测试,是能够完成上位机开发的前提。

(3)这里,我截取部分变量表跟大家做一个分析:

图片

上表中,以电芯总电压为例,Modbus地址为0x1003,对应十进制即为4099,寄存器地址即为44100,读取类型为ushort类型,换算公式为读取之后乘以0.01,比如读取值为5630,即为5.63V。

分析明白之后,我们就可以先用ModbusPoll软件来一波初步测试,如果需要Modbus软件资料的,可以通过本公众号获取,Modbus软件代号:201。

这里我们需要通过485转USB连接到电脑中,然后通过设备管理器,看到端口号为COM4。

图片

3. 通信测试

(1)打开ModbusPoll软件,通信参数选择COM4、9600、N、8、1,具体配置如下图所示:

图片

(2)读取寄存器起始地址为4099,读取长度为10,具体配置如下图所示:

图片

(3)配置完成后,即可读取到单片机的数据,具体如下图所示:

图片

(4)实现读取之后,我们分析一下结果,4099读取到的值为4206,说明当前电池的电压为42.06V。我们可以用实际开发完成的上位机软件做下对比,验证一下数据是否正确:

图片

4. 整体总结

本文主要针对单片机的Modbus通信实例做了较为详尽的描述,由于篇幅有限,仅仅介绍了通信测试部分,对于后续的项目实战部分,会通过后续的文章进行进一步的阐述。

-END-

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6043

    文章

    44617

    浏览量

    637992
  • 控制器
    +关注

    关注

    112

    文章

    16444

    浏览量

    179206
  • plc
    plc
    +关注

    关注

    5016

    文章

    13385

    浏览量

    465011
收藏 人收藏

    评论

    相关推荐

    LabVIEW串口通信实例:PC与51单片机串口通信实

    相关课程推荐:《8周LabVIEW视觉项目编程实战特训营》LabVIEW串口通信实例:PC与51单片机串口通信实
    发表于 06-28 20:04

    LabVIEW串口通信实例:PC与51单片机串口通信实

    LabVIEW串口通信实例:PC与51单片机串口通信实
    发表于 12-18 10:16

    《电子DIY》单片机实践项目》基于51单片机的打地鼠设计与制作

    《电子DIY》单片机实践项目》基于51单片机的打地鼠设计与制作,此课程主要讲解如何使用51单片机
    发表于 07-20 06:46

    单片机的串口和上位的串口进行通信

    单片机串口通信中,接收多位数据到数组,发送多位数据的代码// 下面的代码用于:单片机的串口何上位的串口进行
    发表于 11-25 08:29

    STM32 USART串口通信实践

    STM32串口通讯USART串口通信实践USART串口通信实践1、实验环境参考资料 野火官方的 《零死角玩转STM32—F103指南者》① 野火指南者(STM32F103VE)② IDE:KEIL5
    发表于 02-10 07:06

    AT89系列单片机与PC的串行通信实验电路图

    AT89系列单片机与PC的串行通信实验电路图:
    发表于 05-21 13:43 2953次阅读
    AT89系列<b class='flag-5'>单片机</b>与PC<b class='flag-5'>机</b>的串行<b class='flag-5'>通信实</b>验电路图

    单片机上位通信程序

    通过单片机串口给PC端发送数据并显示,上位通过串口给单片机发送命令控制单片机
    发表于 01-07 17:02 91次下载

    单片机之间的串口通信实

    STC80C51-单片机之间的串口通信实
    发表于 09-01 15:44 25次下载

    《电子DIY》单片机实践项目》基于单片机的三路抢答器设计与制作

    《电子DIY》单片机实践项目》基于单片机的三路抢答器设计与制作添加链接描述
    发表于 11-05 11:21 22次下载
    《电子DIY》<b class='flag-5'>之</b>《<b class='flag-5'>单片机</b><b class='flag-5'>实践</b>项目》<b class='flag-5'>之</b>基于<b class='flag-5'>单片机</b>的三路抢答器设计与制作

    单片机应用系统设计技术——双单片机串口通信实

    单片机串口通信实验一、实验目的二、实验内容三、实验步骤四、C代码如下五、实验结果六、实验体会一、实验目的1、 掌握单片机串口通信的设计方法; 2、 了解双
    发表于 11-05 13:50 15次下载
    <b class='flag-5'>单片机</b>应用系统设计技术——双<b class='flag-5'>单片机</b>串口<b class='flag-5'>通信实</b>验

    单片机上位的串行通信

    写在前面  这篇博客主要记录下单片机是如何通过TXD、RXD与上位进行数据交换的。  先介绍下51单片机中与串口通信有关的各种寄存器。  
    发表于 11-11 13:51 62次下载
    <b class='flag-5'>单片机</b>与<b class='flag-5'>上位</b><b class='flag-5'>机</b>的串行<b class='flag-5'>通信</b>

    《电子DIY》单片机实践项目》基于单片机的简易数字秒表的设计(Proteus仿真与实物制作)

    单片机实践项目》基于单片机的简易数字秒表的设计(八十二)链接:添加链接描述
    发表于 11-12 20:21 20次下载
    《电子DIY》<b class='flag-5'>之</b>《<b class='flag-5'>单片机</b><b class='flag-5'>实践</b>项目》<b class='flag-5'>之</b>基于<b class='flag-5'>单片机</b>的简易数字秒表的设计(Proteus仿真与实物制作)

    《电子DIY》单片机实践项目》基于单片机的电子时钟设计与制作(基于单片机的万年历的设计与制作)

    《电子DIY》单片机实践项目》基于单片机的电子时钟设计与制作(基于单片机的万年历的设计与制
    发表于 01-18 09:47 18次下载
    《电子DIY》<b class='flag-5'>之</b>《<b class='flag-5'>单片机</b><b class='flag-5'>实践</b>项目》<b class='flag-5'>之</b>基于<b class='flag-5'>单片机</b>的电子时钟设计与制作(基于<b class='flag-5'>单片机</b>的万年历的设计与制作)

    上位开发西门子PLC-S7通信实践

    就目前而言,在中国的工控市场上,西门子仍然占了很大的份额,因此对于上位开发而言,经常会存在需要与西门子PLC进 行通信的情况。然后对于西门子PLC来说,
    发表于 04-19 11:09 5次下载
    <b class='flag-5'>上位</b><b class='flag-5'>机</b><b class='flag-5'>开发</b><b class='flag-5'>之</b>西门子PLC-S7<b class='flag-5'>通信实践</b>

    基于LabVIEW的单片机串口通信实

    电子发烧友网站提供《基于LabVIEW的单片机串口通信实现.pdf》资料免费下载
    发表于 10-30 09:13 6次下载
    基于LabVIEW的<b class='flag-5'>单片机</b>串口<b class='flag-5'>通信实</b>现