2-CH UART TO ETH-STM32使用教程

STM32

我们提供的例程是基于STM32F103RBT6的,提供的连接方式也是对应的STM32F103RBT6的引脚,如果有需要移植程序,请按实际引脚连接

硬件连接

STM32F103ZET连接引脚对应关系
ETHSTM32
5V5V
GNDGND
RXD1PC10
TXD1PC11
CFG0PC12
RST1PD2

以我们的STM32F103RBT6为例,连接如下图:

软件说明

例程是基于HAL库进行开发的。 请在资料里面下载程序,找到STM32程序文件目录,打开STM32\Serial_Port_Parameter_Configuration\MDK-ARM
目录下的CH9121.uvprojx,即可看到程序。

打开main.c,可以看到可由用户修改的程序,跟你自己的需求修改对应的参数,再重新编译下载即可。
(该函数主要是用来进行串口参数配置,如果使用上位机配置,则直接运行RX_TX文件里面的程序,可测试数据收发,是否会丢包等等)

参数配置好后,将RX_TX文件夹里面的程序下载到STM32里。
下载成功后,运行SSCOM连接ETH模块,就可以给ETH发送数据啦,ETH会返回你发送给它的所有东西。


代码简析

  • 本程序只进行了简单的配置,如需配置其他功能可查阅串口控制命令,自行配置即可:
  1. uint8_t CH9121_Mode //模式选择
  2. uint8_t CH9121_LOCAL_IP[4] //本地IP
  3. uint8_t CH9121_GATEWAY[4] //网关
  4. uint8_t CH9121_SUBNET_MASK[4] //子网掩码
  5. uint8_t CH9121_TARGET_IP[4] //目标IP
  6. uint16_t CH9121_PORT1 //本地端口
  7. uint16_t CH9121_TARGET_PORT //目标端口
  8. uint32_t CH9121_BAUD_RATE //串口波特率
  • 根据串口控制命令合理利用下面函数可进行参数配置:
  1. void CH9121_TX_4_bytes(UCHAR data, int command); //用于模式、是否随机端口、端口是否断开网络连接、是否清空串口数据、是否开启DHCP、是否开启串口2
  2. void CH9121_TX_5_bytes(UWORD data, int command);//用于设置串口的端口号
  3. void CH9121_TX_7_bytes(UCHAR data[], int command);//用于设置IP、子网掩码、网关
  4. void CH9121_TX_BAUD(UDOUBLE data, int command);//用于设置串口的波特率
  5. void CH9121_Eed(); //更新配置参数至 EEPROM、执行配置,复位 9121、离开配置模式