当前位置: 代码迷 >> 综合 >> 2.modbus主流程分析
  详细解决方案

2.modbus主流程分析

热度:48   发布时间:2023-10-15 23:33:52.0

 

概述

本篇主要介绍main函数以及mb.c文件,通过这两部分,我们能够从整体上分析FreeModbus。

一、从main函数说起

打开FreeModbus文件夹中的demo文件夹,该文件夹下是各个平台下的demo,这里我们选择AVR平台来分析。
打开AVR文件夹下的demo.c文件,main函数代码如下:

int
main( void )
{const UCHAR     ucSlaveID[] = { 0xAA, 0xBB, 0xCC };eMBErrorCode    eStatus;eStatus = eMBInit( MB_RTU, 0x0A, 0, 38400, MB_PAR_EVEN );  eStatus = eMBSetSlaveID( 0x34, TRUE, ucSlaveID, 3 );sei(  );/* Enable the Modbus Protocol Stack. */eStatus = eMBEnable(  );for( ;; ){( void )eMBPoll(  );/* Here we simply count the number of poll cycles. */usRegInputBuf[0]++;}
}

要想使用FreeModbus,这里只要调用三个函数即可,即eMBInit()eMBEnable()eMBPoll()三个函数,这三个函数的功能如下:

<
名称