tcp连接去掉http前缀
tcpdemo.c 交换接收发送顺序 添加xh值99处理逻辑
This commit is contained in:
parent
88d2f1d0fc
commit
16d3e235db
@ -94,7 +94,7 @@ void checkTT()
|
||||
memset(&cfg, 0, sizeof(CFG));
|
||||
//
|
||||
cfg.s = 1;
|
||||
cfg.cnt = 10;//maxTTWaitTime/cfg.s-2;//避免通信异常
|
||||
cfg.cnt = maxTTWaitTime*60/cfg.s-2;//避免通信异常
|
||||
extern void getTTinfo_thread_entry(void* parameter);
|
||||
#define NEW_THREAD
|
||||
#ifdef NEW_THREAD
|
||||
@ -151,7 +151,7 @@ static void getFileData_thread_entry(void)
|
||||
if (len)
|
||||
{
|
||||
for (size_t var = 0; var < len; var++) {
|
||||
// LOG_HEX("d",27,d[var],s[var]);
|
||||
LOG_HEX("d",27,d[var],s[var]);
|
||||
// sendMsg(d[var], s[var]);
|
||||
}
|
||||
sendMsgs(d, s, len);
|
||||
@ -286,7 +286,7 @@ static void try()
|
||||
{
|
||||
LOG_I("第%d次尝试。",var+1);
|
||||
//rt_tick_from_millisecond(maxTTWaitTime * 1000)
|
||||
rst = rt_event_recv(&sw_check, TT_IS_OK, RT_EVENT_FLAG_OR | RT_EVENT_FLAG_CLEAR, 30*1000,
|
||||
rst = rt_event_recv(&sw_check, TT_IS_OK, RT_EVENT_FLAG_OR | RT_EVENT_FLAG_CLEAR, maxTTWaitTime*60*1000,
|
||||
RT_NULL);
|
||||
if (rst == RT_EOK)//硬件条件满足
|
||||
{
|
||||
|
@ -7,7 +7,7 @@
|
||||
#include <webclient.h>
|
||||
|
||||
#define LOG_TAG "getinfo"
|
||||
#define LOG_LVL LOG_LVL_DBG
|
||||
#define LOG_LVL LOG_LVL_INFO
|
||||
#include <ulog.h>
|
||||
|
||||
//#define HTTP_GET_URL "http://www.rt-thread.com/service/rt-thread.txt"
|
||||
@ -101,7 +101,7 @@ rt_uint8_t info2HEX(TT *TTinfo, rt_uint8_t *buffer)
|
||||
|
||||
|
||||
static int minTTPeriCnt=5;
|
||||
static int minTTsinal=5;
|
||||
static int minTTsinal=3;
|
||||
static int minActiveTime=0;
|
||||
static int maxActiveTime=0;
|
||||
//extern struct rt_event sw_check;//软件条件
|
||||
@ -148,8 +148,11 @@ static void rulecheck(void)
|
||||
if (!okCnt) {
|
||||
LOG_I("当前规则为:连续%d个采集周期TT信号质量不低于%d",minTTPeriCnt,minTTsinal);
|
||||
}
|
||||
|
||||
if (atoi(TTinfo->sim) & !(atoi(TTinfo->xh) < minTTsinal) ) {//
|
||||
int xh=atoi(TTinfo->xh);
|
||||
if (xh == 99) {
|
||||
xh=0;
|
||||
}
|
||||
if (atoi(TTinfo->jh) && !(xh < minTTsinal) ) {//
|
||||
okCnt += 1;
|
||||
LOG_D("第%d次符合规则。",okCnt);
|
||||
}
|
||||
|
@ -33,7 +33,7 @@
|
||||
|
||||
#define BUFSZ 1024
|
||||
|
||||
static const char send_data[] = {0x88,0xAA,0xBB,0x88,0x00,0x01,0x00,0x00,0x70,0x21,0x00,0x03,0x49,0x41,0x43,0x4B};//"This is TCP Client from RT-Thread."; /* 发送用到的数据 */
|
||||
static const char send_data[] = {0x88,0xAA,0xBB,0x88,0x00,0x01,0x00,0x00,0x10,0xA0,0x00,0x10,0x00,0x31,0x33,0x39,0x32,0x00,0x10,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x00};//"This is TCP Client from RT-Thread."; /* 发送用到的数据 */
|
||||
void tcpclient(int argc, char **argv)
|
||||
{
|
||||
int ret;
|
||||
@ -96,6 +96,25 @@ void tcpclient(int argc, char **argv)
|
||||
|
||||
while (1)
|
||||
{
|
||||
|
||||
/* 发送数据到sock连接 */
|
||||
ret = send(sock, send_data, sizeof(send_data), 0);
|
||||
if (ret < 0)
|
||||
{
|
||||
/* 发送失败,关闭这个连接 */
|
||||
closesocket(sock);
|
||||
rt_kprintf("\nsend error,close the socket.\r\n");
|
||||
|
||||
rt_free(recv_data);
|
||||
break;
|
||||
}
|
||||
else if (ret == 0)
|
||||
{
|
||||
/* 打印send函数返回值为0的警告信息 */
|
||||
rt_kprintf("\n Send warning,send function return 0.\r\n");
|
||||
}
|
||||
|
||||
|
||||
/* 从sock连接中接收最大BUFSZ - 1字节数据 */
|
||||
bytes_received = recv(sock, recv_data, BUFSZ - 1, 0);
|
||||
if (bytes_received < 0)
|
||||
@ -135,7 +154,10 @@ void tcpclient(int argc, char **argv)
|
||||
else
|
||||
{
|
||||
/* 在控制终端显示收到的数据 */
|
||||
rt_kprintf("\nReceived data = %s ", recv_data);
|
||||
for (size_t var = 0; var < bytes_received; ++var) {
|
||||
rt_kprintf(" %02X ", recv_data[var]);
|
||||
}
|
||||
// rt_kprintf("\nReceived data = %02X ", recv_data);
|
||||
closesocket(sock);
|
||||
// rt_kprintf("\n got a 'q' or 'Q',close the socket.\r\n");
|
||||
|
||||
@ -144,23 +166,7 @@ void tcpclient(int argc, char **argv)
|
||||
break;
|
||||
}
|
||||
|
||||
/* 发送数据到sock连接 */
|
||||
ret = send(sock, send_data, strlen(send_data), 0);
|
||||
if (ret < 0)
|
||||
{
|
||||
/* 发送失败,关闭这个连接 */
|
||||
closesocket(sock);
|
||||
rt_kprintf("\nsend error,close the socket.\r\n");
|
||||
|
||||
rt_free(recv_data);
|
||||
break;
|
||||
}
|
||||
else if (ret == 0)
|
||||
{
|
||||
/* 打印send函数返回值为0的警告信息 */
|
||||
rt_kprintf("\n Send warning,send function return 0.\r\n");
|
||||
}
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -8,7 +8,12 @@
|
||||
#include <dfs_file.h>
|
||||
#include <usrcfg.h>
|
||||
|
||||
|
||||
#ifdef _CFGALL
|
||||
int sendInterval =60;
|
||||
int maxTTWaitTime = 4;
|
||||
int maxTTRetryCnt = 3;
|
||||
int minTTPeriCnt=5;
|
||||
int minTTsinal=5;
|
||||
/**
|
||||
* 以HEX显示文件内容
|
||||
*/
|
||||
@ -25,10 +30,16 @@ void updatecfg(void)
|
||||
//因为不知原因,采用事件集独立更新配置出错
|
||||
//独立响应单个参数更新事件,程序上更复杂也没特别必要
|
||||
//现采用事件通知、统一全部重新加载
|
||||
|
||||
|
||||
|
||||
while(1)
|
||||
{
|
||||
maxTTWaitTime = get_cfg("maxTTWaitTime");
|
||||
maxTTRetryCnt = get_cfg("maxTTRetryCnt");
|
||||
static int minTTPeriCnt=5;
|
||||
static int minTTsinal=5;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
void sDemo()
|
||||
{
|
||||
@ -38,7 +49,7 @@ void sDemo()
|
||||
upSWflag();
|
||||
}
|
||||
|
||||
MSH_CMD_EXPORT(sDemo,swTest);
|
||||
MSH_CMD_EXPORT(sDemo,喂文件数据);
|
||||
|
||||
static struct rt_thread infoTT_thread;
|
||||
void ttinfoInit()
|
||||
|
@ -20,7 +20,7 @@
|
||||
|
||||
#define BUFSZ 1024
|
||||
#define RETRYCNT 10
|
||||
#define URL "http://10.10.10.72"
|
||||
#define URL "10.10.10.72"
|
||||
#define PORT 8005
|
||||
|
||||
int sock=0;
|
||||
@ -78,6 +78,7 @@ static int tcpInit(void)
|
||||
|
||||
static int tcpSend(const rt_uint8_t *send_data, size_t len)
|
||||
{
|
||||
LOG_HEX("send",27,send_data,len);
|
||||
/* 发送数据到sock连接 */
|
||||
int ret = send(sock, send_data, len, 0);
|
||||
|
||||
|
@ -463,10 +463,11 @@ static int pf_thread_entry(void* parameter)
|
||||
{
|
||||
for (size_t var = 0; var < len; var++)
|
||||
{
|
||||
// sendMsg(d[var], s[var]);
|
||||
sendMsg(d[var], s[var]);
|
||||
LOG_D("i = %d",var);
|
||||
LOG_HEX("d", 27, d[var], s[var]);
|
||||
}
|
||||
// sendMsgs(d, s, len);
|
||||
LOG_I("Done.");
|
||||
}
|
||||
return RT_EOK;
|
||||
@ -527,13 +528,13 @@ void pwTT_thread_entry(void *parameter)
|
||||
if (rt_pin_read(TT_EN))
|
||||
{
|
||||
//#ifdef NO_RELAY
|
||||
LOG_I("set TT %s", "ON");
|
||||
LOG_I("set TT %s", "OFF");
|
||||
//#endif
|
||||
add_val("swCnt");//更新统计值
|
||||
}
|
||||
else
|
||||
{
|
||||
LOG_I("set TT %s", "OFF");
|
||||
LOG_I("set TT %s", "ON");
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user