• 大小: 110KB
    文件类型: .rar
    金币: 2
    下载: 1 次
    发布日期: 2021-06-09
  • 语言: 其他
  • 标签: FreeRTOS  Modbus  

资源简介

实测连接西门子的组态屏运行正常,实现对portserial.c porttimer.c portevent.c文件修改

资源截图

代码片段和文件信息

/** 
* @file         modbus_user.c 
* @brief        modbus寄存器读写处理. 
* @details   读写缓冲区的寄存器,如果写并把数据保存在配置文件. 
* @author       kun 
* @date      2018-04-12
* @version   A001 
* @par Copyright (c):  
*       佛山畅联智能科技公司 
* QQ:448091454
* @par History:          
*   version: kun 2018-04-12 建立\n 
*/  
#include “usart.h“
#include “stm32f4xx_hal.h“
#include “mb.h“
#include “modbus_user.h“
#include “modbus_struction.h“
//#include “master_config.h“
#include “slave_poll.h“
#include “freertos_user_config.h“
#include “freertosinclude.h“
#include “user_mb_app.h“
#include “dbg.h“
#include “debug.h“
#include “master_config.h“
#include “macro_def.h“
#include “daemon.h“
#include “master_config.h“
#include “record.h“
#include “slave_cmd.h“
#include “mid_fs.h“
#include “master_config.h“
#include “extio.h“
#include “log_file.h“

#include 

#undef MODBUS_USER_DEBUG
#ifdef MODBUS_USER_DEBUG
    #define modbus_user_log(...) do{if(DEBUG(DEBUG_PROTOCAL)){DBG_LOG(“[MODBUS USER](%ld) “__LINE__);DBG_LOG(__VA_ARGS__);}}while(0)
    #define modbus_user_usr(...) do{if(DEBUG(DEBUG_PROTOCAL)){DBG_LOG(“[MODBUS USER] “);DBG_USR(__VA_ARGS__);}}while(0)
    #define modbus_user_err(...) do{if(DEBUG(DEBUG_PROTOCAL)){DBG_LOG(“[MODBUS USER] “);DBG_ERR(__VA_ARGS__);}}while(0)
    #define modbus_user_dump(...) if(DEBUG(DEBUG_PROTOCAL)){DBG_DUMP(__VA_ARGS__);}
#else
    #define modbus_user_log(...)
    #define modbus_user_usr(...)
    #define modbus_user_err(...)
    #define modbus_user_dump(...)
#endif

MODBUS_USER_T modbus_user;

extern UART_HandleTypeDef huart3;
TIM_HandleTypeDef htim6;

/** 
* modbus串行初始化. 
* 初始化端口,波特率,校验位. 
* @param[in]   无
* @param[out]  无.  
* @retval  无
* @par 标识符 
*      保留 
* @par 其它 
*      无 
* @par 修改日志 
*      kun于2018-04-12创建 
*/
void modubs_user_usart_init(void){

GPIO_InitTypeDef   GPIO_InitStruct;

__HAL_RCC_USART3_CLK_ENABLE();
__HAL_RCC_GPIOB_CLK_ENABLE();
  
    /**USART3 GPIO Configuration    
    PB10     ------> USART3_TX
    PB11     ------> USART3_RX 
    */
    GPIO_InitStruct.Pin = GPIO_PIN_10|GPIO_PIN_11;
    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
    GPIO_InitStruct.Pull = GPIO_PULLUP;
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
    GPIO_InitStruct.Alternate = GPIO_AF7_USART3;
    HAL_GPIO_Init(GPIOB &GPIO_InitStruct);

huart3.Instance = USART3;
huart3.Init.BaudRate = 19200;
huart3.Init.WordLength = UART_WORDLENGTH_8B;
huart3.Init.StopBits = UART_STOPBITS_1;
huart3.Init.Parity = UART_PARITY_NONE;
huart3.Init.Mode = UART_MODE_TX_RX;
huart3.Init.HwFlowCtl = UART_HWCONTROL_NONE;
huart3.Init.OverSampling = UART_OVERSAMPLING_16;
if (HAL_UART_Init(&huart3) != HAL_OK)
{
_Error_Handler(__FILE__ __LINE__);
}

HAL_NVIC_SetPriority(USART3_IRQn 5 0);
    HAL_NVIC_EnableIRQ(USART3_IRQn);
}

/** 
* modbus定时器初始化. 
* 由定时器检测modbus一帧数据的结束. 
* @param[in]   无
* @param[out]  无.  
* @retval  无
* @par 标识符 

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      15202  2017-04-11 11:06  FreeModbus\modbus\ascii\mbascii.c

     文件       2407  2017-04-11 11:06  FreeModbus\modbus\ascii\mbascii.h

     文件       9616  2017-04-11 11:06  FreeModbus\modbus\functions\mbfunccoils.c

     文件      14133  2017-04-11 11:06  FreeModbus\modbus\functions\mbfunccoils_m.c

     文件       1633  2017-04-11 11:06  FreeModbus\modbus\functions\mbfuncdiag.c

     文件       4489  2017-04-11 11:06  FreeModbus\modbus\functions\mbfuncdisc.c

     文件       6273  2017-04-11 11:06  FreeModbus\modbus\functions\mbfuncdisc_m.c

     文件      11894  2017-04-11 11:06  FreeModbus\modbus\functions\mbfuncholding.c

     文件      18056  2017-04-11 11:06  FreeModbus\modbus\functions\mbfuncholding_m.c

     文件       4716  2017-04-11 11:06  FreeModbus\modbus\functions\mbfuncinput.c

     文件       5900  2017-04-11 11:06  FreeModbus\modbus\functions\mbfuncinput_m.c

     文件       3446  2017-04-11 11:06  FreeModbus\modbus\functions\mbfuncother.c

     文件       4970  2017-04-11 11:06  FreeModbus\modbus\functions\mbutils.c

     文件      19297  2017-04-11 11:06  FreeModbus\modbus\include\mb.h

     文件       6084  2017-04-11 11:06  FreeModbus\modbus\include\mbconfig.h

     文件       3701  2017-04-11 11:06  FreeModbus\modbus\include\mbframe.h

     文件       3033  2017-04-11 11:06  FreeModbus\modbus\include\mbfunc.h

     文件       7913  2017-04-11 11:06  FreeModbus\modbus\include\mbport.h

     文件       3594  2017-04-11 11:06  FreeModbus\modbus\include\mbproto.h

     文件       4110  2017-04-11 11:06  FreeModbus\modbus\include\mbutils.h

     文件      18408  2017-04-11 11:06  FreeModbus\modbus\include\mb_m.h

     文件      12380  2017-04-11 11:06  FreeModbus\modbus\mb.c

     文件      12506  2017-04-11 11:06  FreeModbus\modbus\mb_m.c

     文件       5432  2017-04-11 11:06  FreeModbus\modbus\rtu\mbcrc.c

     文件       1753  2018-05-07 10:35  FreeModbus\modbus\rtu\mbcrc.h

     文件      11302  2017-04-11 11:06  FreeModbus\modbus\rtu\mbrtu.c

     文件       2965  2017-04-11 11:06  FreeModbus\modbus\rtu\mbrtu.h

     文件      14663  2017-04-11 11:06  FreeModbus\modbus\rtu\mbrtu_m.c

     文件       5560  2017-04-11 11:06  FreeModbus\modbus\tcp\mbtcp.c

     文件       2322  2017-04-11 11:06  FreeModbus\modbus\tcp\mbtcp.h

............此处省略33个文件信息

评论

共有 条评论