接受现在网上各种串口lora数据,以透传方式传输,并上报给服务器,仅做参考,大神勿喷。
/******************** (C) 版权所有 ***********************************
* 文件名称 : readme.txt
* 作者 :
* 版本 :
* 日期 : 2018/05/10
* 描述 : ping功能
********************************************************************************
* 此版本无应急接受窗口
*******************************************************************************/
例程描述
========
ping通其他设备
包含文件目录
============
stm32f10x_conf.h 配置库文件
stm32f10x_it.c 中断头文件
stm32f10x_it.h stm32f10x_it.c的头文件
main.c 主程序
硬件环境
========
这个例程用于野火STM32F103VET6开发板同以太网芯片W5500搭建的应用平台,也可以很方便地
移植到其他平台上。
注意:
首先通过串口线连接PC和W5500模块;如果W5500模块直接通过网线和PC相连接,需要修改PC的IP为静态IP,且保证和W5500在同一个网段;
如果W5500模块直接连接路由器,则不需要修改。
操作步骤
========
1. 成功编译应用程序,然后通过串口烧录工具或者Jlink把程序烧录到开发板中
2. 打开串口工具并复位开发板,开发板就会ping remote_ip
*****************************
- /**
- ******************************************************************************
- * @file main.c
- * @author WIZnet Software Team
- * @version V1.0
- * @date 2015-02-14
- * @brief 用3.5.0版本库建的工程模板
- * @attention 实验平台:野火 iSO-MINI STM32 开发板 + 野火W5500网络适配板
- *
- * 默认使用野火开发板的SPI1接口,请断开“J10”A4与cs间的短接帽
- *
- * 内网测试,请保证W5500的IP与测试PC机在同一网段内,且不冲突
- * 如果是用网线跟PC机直连,请设置PC机本地连接地址IP为静态IP
- * 本例程是Ping W5500_conf.c中定义的remote_ip
- *
- * 实验平台:野火 iSO-MINI STM32 开发板
- ******************************************************************************
- */
- #include <stdio.h>
- #include <string.h>
- #include "stm32f10x.h"
- #include "bsp_usart1.h"
- #include "bsp_i2c_ee.h"
- #include "bsp_i2c_gpio.h"
- #include "bsp_led.h"
- #include "TIM.h"
- #include "LED.h"
- #include "w5500.h"
- #include "W5500_conf.h"
- #include "socket.h"
- #include "utility.h"
- /*app函数头文件*/
- #include "ping.h"
- #include "tcp_demo.h"
- #include "http_client.h"
- #include "mysev.h"
- #include "cJSON.h"
- #include "usart2.h"
- #include "drv_delay.h"
- #include "drv_AS62.h"
- extern uint8 ok_flag;
- int main(void)
- {
- systick_init(72); /*初始化Systick工作时钟*/
- USART1_Config(); /*初始化串口通信:115200@8-n-1*/
- i2c_CfgGpio(); /*初始化eeprom*/
- TIM_Config();
- LED_GPIO_Config();
- // printf("MQTT V1.0 \r\n");
-
- gpio_for_w5500_config(); /*初始化MCU相关引脚*/
- reset_w5500(); /*硬复位W5500*/
- set_w5500_mac(); /*配置MAC地址*/
- set_w5500_ip(); /*配置IP地址*/
-
- socket_buf_init(txsize, rxsize); /*初始化8个Socket的发送接收缓存大小*/
- drv_uart_init(9600);
- drv_delay_init();
- MD_GPIO_Config();
- Check_GPIO_Config();
-
- printf(" 服务器IP:%d.%d.%d.%d\r\n",remote_ip[0],remote_ip[1],remote_ip[2],remote_ip[3]);
- printf(" 监听端口:%d \r\n",remote_port);
- printf("LORA Connect...\r\n");
- while(1)//模块初始化为透传模式0 通道号17;
- {
- drv_delay_ms(5);
- if(ASxx_param_init((u16)Getway_ID,0,0x17)==ASxx_Write_OK)
- break;
- }
- while(1)//循环执行的函数
- {
-
- len=0;
- switch(getSn_SR(SOCK_TCPC)) /*获取socket的状态*/
- {
- case SOCK_CLOSED: /*socket处于关闭状态*/
- socket(SOCK_TCPC,Sn_MR_TCP,local_port++,Sn_MR_ND);
- LED1(ON);
- Delayms(500);
- break;
-
- case SOCK_INIT: /*socket处于初始化状态*/
- connect(SOCK_TCPC,remote_ip,remote_port); /*socket连接服务器*/
- LED2(ON);
- Delayms(500);
- break;
-
- case SOCK_ESTABLISHED: /*socket处于连接建立状态*/
- LED3(ON);
- mqtt_config(); //MQTT配置
- break;
-
- case SOCK_CLOSE_WAIT: /*socket处于等待关闭状态*/
- close(SOCK_TCPC);
- break;
- default:
- printf("socket error\r\n");
- break;
- }
- }
- }
复制代码
全部资料51hei下载地址:
网关存储V1.1(物接入).rar
(4.41 MB, 下载次数: 111)
|