这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 活动中心 » 板卡试用 » 【E840-DTU串口调试助手】外设控制成果贴

共1条 1/1 1 跳转至

【E840-DTU串口调试助手】外设控制成果贴

菜鸟
2026-09-11 19:14:53     打赏

使用E840-DTU串口调试助手除了能在手机与电脑间建立基于RS485的协议通讯桥梁,还能通过手机来控制基于RS485的外部设备。 

这里是使用PY32F002AF15P6开发板与RS485模块构建了一个模拟的RS485设备,进而通过RS485的通讯协议来控制RGB_LED来实现色彩变换效果

1. 串口通讯测试

对于PY32F002AF15P6开发板,其USART1的引脚功能如下:

PA02----TX1

PA03----RX1

在使用时,它与串口功能模块的连接关系为: 

PA02 --> RX

PA03 --> TX

RGB_LED模块与开发板的连接关系为:

PA04-->R

PA06-->G

PA07-->B

RGB_LED模块所用引脚的配置函数为:

int main(void)
{
  uint8_t ZL[2] = {0xff, 0xff};
  HAL_Init();
  APP_LED_Init();
  APP_RGB_LED_Init(); 
  HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4, GPIO_PIN_RESET);
  HAL_GPIO_WritePin(GPIOA, GPIO_PIN_7, GPIO_PIN_RESET);
  HAL_GPIO_WritePin(GPIOA, GPIO_PIN_6, GPIO_PIN_RESET);
  UartHandle.Instance          = USART1;
  UartHandle.Init.BaudRate     = 9600;
  UartHandle.Init.WordLength   = UART_WORDLENGTH_8B;
  UartHandle.Init.StopBits     = UART_STOPBITS_1;
  UartHandle.Init.Parity       = UART_PARITY_NONE;
  UartHandle.Init.HwFlowCtl    = UART_HWCONTROL_NONE;
  UartHandle.Init.Mode         = UART_MODE_TX_RX;
  UartHandle.Init.OverSampling = UART_OVERSAMPLING_16;
  UartHandle.AdvancedInit.AdvFeatureInit = UART_ADVFEATURE_NO_INIT;
  if (HAL_UART_Init(&UartHandle) != HAL_OK)
  {
    APP_ErrorHandler();
  }  
  BSP_LED_On(LED_GREEN);
  while (1)
  {
       if(HAL_UART_Receive(&UartHandle, (uint8_t *)ZL, 1, 5000) == HAL_OK)
       {
              if(ZL[0]==’R’)
              {
           HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4, GPIO_PIN_SET);            }
              if(ZL[0]==’G’)
              {
           HAL_GPIO_WritePin(GPIOA, GPIO_PIN_6, GPIO_PIN_SET);
      }
              if(ZL[0]==’B’)
              {
           HAL_GPIO_WritePin(GPIOA, GPIO_PIN_7, GPIO_PIN_SET);
      }
              If(ZL[0]==’N’)
              {
                  HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4, GPIO_PIN_RESET);
                  HAL_GPIO_WritePin(GPIOA, GPIO_PIN_7, GPIO_PIN_RESET);
                  HAL_GPIO_WritePin(GPIOA, GPIO_PIN_6, GPIO_PIN_RESET);
      }
              HAL_Delay(250);
       }
  }
}

经程序的编译和下载,其测试结果见图1和图2所示。

image.png

1 串口收发测试

image.png

2 控制效果 

2. RS485协议控制

为进行RS485协议控制,需使用RS485功能模块,其外观见图3所示,模块的原理图见图4所示。

image.png


3 模块外观

image.png

4 模块原理图

在使用时,需按图5所示将2个控制引脚连接到一起接到GND

image.png

5 使用方法

为进行测试,还需使用有关USBRS485模块,整体的测试电路见图6所示。

image.png

6 测试线路 

经测试,其效果见视频所示,所示功能正确。

 

以此为基础,若连接E840-DTU串口调试助手,即可实现手机对开发板上RGB_LED的色彩控制。



共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]