Freemodbus 源码讲解系列 (一)

最近在做modbus通信,感觉自己写的不太好,所以想去网上看看有没有整理好的协议栈,于是在网上看到了Freemodbus这个神奇。据听说Freemodbus只有管理从机的代码,没有现成的主机代码。不过已经有大拿整理出来了Freemodbus Master的代码,大家可以去GitHub上找。     

 我会直接按照代码的执行顺序进行讲解,算对自己的一个学习。以STM32为例进行讲解,废话不多说,直接上代码。

int main(void)
{
    SystemInit();
    NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);
    NVIC_Configuration();
    
    eMBInit( MB_RTU, 0x01, 0, 9600, MB_PAR_NONE );
    
    /* Enable the Modbus Protocol Stack. */
    eMBEnable(  );
    
    for( ;; )
    {
        ( void )eMBPoll(  );
        /* Here we simply count the number of poll cycles. */
    }
}
 

 主函数主要进行了系统初始化,包括:系统时钟初始化、中断初始化、 eMBInit初始化(包括:串口、定时器等)和eMBEnable使能,然后eMBPoll(  )循环查询事件

你可能感兴趣的:(Freemodbus 源码讲解系列 (一))