推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

STM32F407单片机基于Modbus的AD7190电压值获取实验KEIL工程源码

更新时间:2021-09-07 17:38:42 大小:13M 上传用户:xzxbybd查看TA发布的资源 标签:stm32f407单片机modbusad7190keil 下载积分:8分 评价赚积分 (如何评价?) 打赏 收藏 评论(0) 举报

资料介绍

STM32F407单片机基于Modbus的AD7190电压值获取实验KEIL工程源码

int main(void)

{

  uint16_t crc_check = 0;

  uint8_t Ex_code = 0,i=0;


  /* 初始化外设 */

  InitPeri();

  /* 申请内存空间作为线圈和输入离散量,对应功能码01H和02H

   * 每一Byte就是一个Coil或者Input

   */

  PduData.PtrCoilbase = (uint8_t*)malloc(sizeof(uint8_t)*0x200);

  FillBuf((uint8_t*)PduData.PtrCoilbase,FUN_CODE_01H);

  

  PduData.PtrHoldingbase = (uint16_t*)malloc(sizeof(uint16_t)*0x125);

  FillBuf((uint8_t*)PduData.PtrHoldingbase,FUN_CODE_03H);

  

  printf(" -------Modbus通信协议例程------ \n");

  printf("Ys-F4Pro  Modbus从机  AD7190电压采集\n");

  

  Rx_MSG = MSG_IDLE;

  /* 无限循环 */

  while (1)

  {

    /* 接收到一帧的数据,对缓存提取数据 */

    if(Rx_MSG == MSG_COM)

    {

//      for(i=0;i<8;i++)

//      {

//        printf("Rx_Buf[%d]=%d\n",i,Rx_Buf[i]);

//      }      

      /* 收到非本机地址的响应请求 */

      if((Rx_Buf[0] != MB_SLAVEADDR )&&(Rx_Buf[0] != MB_ALLSLAVEADDR))

      {

        Rx_MSG = MSG_IDLE;

        continue;

      }

      /* 解析数据帧 */

      MB_Parse_Data();


      /* CRC 校验正确 */

      crc_check = ( (Rx_Buf[RxCount-1]<<8) | Rx_Buf[RxCount-2] );

      if(crc_check == PduData._CRC) 

      {

        /* 分析数据帧并执行 */        

        Ex_code = MB_Analyze_Execute();

        /* 出现异常 */

        if(Ex_code !=EX_CODE_NONE)

        {

          MB_Exception_RSP(PduData.Code,Ex_code);

       

部分文件列表

文件名文件大小修改时间
YSF4_HAL_AD_DA-054. 基于Modbus的AD7190电压值获取/Modbus-host/.mxproject6KB2017-03-31 17:13:56
YSF4_HAL_AD_DA-054. 基于Modbus的AD7190电压值获取/Modbus-host/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f401xc.h707KB2017-05-27 11:05:48
YSF4_HAL_AD_DA-054. 基于Modbus的AD7190电压值获取/Modbus-host/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f401xe.h707KB2017-05-27 11:05:48
YSF4_HAL_AD_DA-054. 基于Modbus的AD7190电压值获取/Modbus-host/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f405xx.h1203KB2017-05-27 11:05:48
YSF4_HAL_AD_DA-054. 基于Modbus的AD7190电压值获取/Modbus-host/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f407xx.h1316KB2017-05-27 11:05:48
YSF4_HAL_AD_DA-054. 基于Modbus的AD7190电压值获取/Modbus-host/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f410cx.h591KB2017-05-27 11:05:48
YSF4_HAL_AD_DA-054. 基于Modbus的AD7190电压值获取/Modbus-host/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f410rx.h592KB2017-05-27 11:05:48
YSF4_HAL_AD_DA-054. 基于Modbus的AD7190电压值获取/Modbus-host/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f410tx.h587KB2017-05-27 11:05:48
YSF4_HAL_AD_DA-054. 基于Modbus的AD7190电压值获取/Modbus-host/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f411xe.h710KB2017-05-27 11:05:48
YSF4_HAL_AD_DA-054. 基于Modbus的AD7190电压值获取/Modbus-host/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f412cx.h1141KB2017-05-27 11:05:48
YSF4_HAL_AD_DA-054. 基于Modbus的AD7190电压值获取/Modbus-host/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f412rx.h1227KB2017-05-27 11:05:48
...

全部评论(0)

暂无评论

上传资源 上传优质资源有赏金

  • 打赏
  • 30日榜单

推荐下载