📄 app.c
字号:
/*$PAGE*/
/*
*********************************************************************************************************
* Eric Socket Send Test Task()
*********************************************************************************************************
*/
static void EricSocketSendTestTask (void *parg) {
#if 0
int AppTCPSockID_1;
struct sockaddr_in dstAddr;
struct in_addr dstIP;
int connect_status;
char tx_buf[512];
int tx_msg_len;
int i;
dstIP = inet_addr("192.168.0.7");
dstAddr.sin_addr = dstIP;
dstAddr.sin_port = 4000;
dstAddr.sin_family = NET_SOCK_FAMILY_IP_V4;
AppTCPSockID_1 = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
connect_status = connect(AppTCPSockID_1, (struct sockaddr *)&dstAddr, sizeof(struct sockaddr_in));
if (connect_status < 0) { /* If Socket NOT connected */
close(AppTCPSockID_1);
} else { /* Socket connected to remote server */
for(i = 0; i < 512; i++) { /* Fill a data buffer to send */
tx_buf[i] = 'a';
}
tx_msg_len = send(AppTCPSockID_1, &tx_buf[0], sizeof(tx_buf), 0); /* Send some data */
if (tx_msg_len > 0) { /* Data was sent */
} else if (tx_msg_len == 0) { /* Connection was lost */
} else { /* Data not sent */
}
}
#endif
while(1) {
OSTimeDly(10);
}
}
/*$PAGE*/
/*
*********************************************************************************************************
* NetUDP_RxAppDataHandler()
*
* Description : This function is called by UDP when a packet is received.
* Arguments : pbuf
* src_addr
* src_port
* dest_addr
* dest_port
* perr
*********************************************************************************************************
*/
void NetUDP_RxAppDataHandler (NET_BUF *pbuf,
NET_IP_ADDR src_addr,
NET_UDP_PORT_NBR src_port,
NET_IP_ADDR dest_addr,
NET_UDP_PORT_NBR dest_port,
NET_ERR *perr)
{
(void)pbuf;
(void)src_addr;
(void)src_port;
(void)dest_addr;
(void)dest_port;
(void)perr;
}
/*
*********************************************************************************************************
* HTTPs Value Request
*********************************************************************************************************
*/
CPU_BOOLEAN HTTPs_ValReq (CPU_CHAR *Variable, CPU_CHAR **Val, CPU_INT32U MaxSize)
{
static CPU_CHAR buf[20];
CPU_FP32 ver;
CPU_FP32 time;
NET_ERR err;
Str_Copy(&buf[0], "%%%%%%%%");
*Val = &buf[0];
/* ----------------- OS VALS ------------------ */
if (Str_Cmp(Variable, "OS_VERSION" ) == 0) {
ver = (CPU_FP32)OS_VERSION / 100;
Str_FmtNbr_32(ver, 2, 2, DEF_NO, DEF_YES, &buf[0]);
} else if (Str_Cmp(Variable, "OS_NBR_TASKS" ) == 0) {
Str_FmtNbr_32(OSTaskCtr, 2, 0, DEF_NO, DEF_YES, &buf[0]);
} else if (Str_Cmp(Variable, "OS_CPU_USAGE" ) == 0) {
Str_FmtNbr_32(OSCPUUsage, 3, 0, DEF_NO, DEF_YES, &buf[0]);
} else if (Str_Cmp(Variable, "OS_CPU_USAGE_MAX") == 0) {
Str_FmtNbr_32(OSCPUUsageMax, 3, 0, DEF_NO, DEF_YES, &buf[0]);
} else if (Str_Cmp(Variable, "OS_TIME" ) == 0) {
time = (CPU_FP32)OSTime / OS_TICKS_PER_SEC;
Str_FmtNbr_32(time, 7, 3, DEF_NO, DEF_YES, &buf[0]);
/* ----------------- NET VALS ----------------- */
} else if (Str_Cmp(Variable, "NET_VERSION") == 0) {
ver = (CPU_FP32)NET_VERSION / 100;
Str_FmtNbr_32(ver, 2, 2, DEF_NO, DEF_YES, &buf[0]);
/* ---------------- ADDR VALS ----------------- */
} else if (Str_Cmp(Variable, "MAC" ) == 0) {
NetASCII_MAC_to_Str(&NetIF_MAC_Addr[0], &buf[0], DEF_NO, &err);
} else if (Str_Cmp(Variable, "IP" ) == 0) {
NetASCII_IP_to_Str(ip, &buf[0], DEF_NO, &err);
} else if (Str_Cmp(Variable, "MASK") == 0) {
NetASCII_IP_to_Str(msk, &buf[0], DEF_NO, &err);
} else if (Str_Cmp(Variable, "GW" ) == 0) {
NetASCII_IP_to_Str(gateway, &buf[0], DEF_NO, &err);
/* ---------------- CONN VALS ----------------- */
} else if (Str_Cmp(Variable, "NBR_SOCK" ) == 0) {
Str_FmtNbr_32(NET_SOCK_CFG_NBR_SOCK, 3, 0, DEF_NO, DEF_YES, &buf[0]);
} else if (Str_Cmp(Variable, "NBR_SOCK_AVAIL" ) == 0) {
Str_FmtNbr_32(NetSock_PoolStat.EntriesAvail, 3, 0, DEF_NO, DEF_YES, &buf[0]);
} else if (Str_Cmp(Variable, "NBR_SOCK_USED" ) == 0) {
Str_FmtNbr_32(NetSock_PoolStat.EntriesUsed, 3, 0, DEF_NO, DEF_YES, &buf[0]);
} else if (Str_Cmp(Variable, "NBR_SOCK_USED_MAX" ) == 0) {
Str_FmtNbr_32(NetSock_PoolStat.EntriesUsedMax, 3, 0, DEF_NO, DEF_YES, &buf[0]);
} else if (Str_Cmp(Variable, "NBR_SOCK_USED_TOT" ) == 0) {
Str_FmtNbr_32(NetSock_PoolStat.EntriesAllocatedCtr, 5, 0, DEF_NO, DEF_YES, &buf[0]);
} else if (Str_Cmp(Variable, "NBR_TCP_CONN" ) == 0) {
Str_FmtNbr_32(NET_TCP_CFG_NBR_CONN, 3, 0, DEF_NO, DEF_YES, &buf[0]);
} else if (Str_Cmp(Variable, "NBR_TCP_CONN_AVAIL" ) == 0) {
Str_FmtNbr_32(NetTCP_ConnPoolStat.EntriesAvail, 3, 0, DEF_NO, DEF_YES, &buf[0]);
} else if (Str_Cmp(Variable, "NBR_TCP_CONN_USED" ) == 0) {
Str_FmtNbr_32(NetTCP_ConnPoolStat.EntriesUsed, 3, 0, DEF_NO, DEF_YES, &buf[0]);
} else if (Str_Cmp(Variable, "NBR_TCP_CONN_USED_MAX") == 0) {
Str_FmtNbr_32(NetTCP_ConnPoolStat.EntriesUsedMax, 3, 0, DEF_NO, DEF_YES, &buf[0]);
} else if (Str_Cmp(Variable, "NBR_TCP_CONN_USED_TOT") == 0) {
Str_FmtNbr_32(NetTCP_ConnPoolStat.EntriesAllocatedCtr, 5, 0, DEF_NO, DEF_YES, &buf[0]);
} else if (Str_Cmp(Variable, "NBR_CONN" ) == 0) {
Str_FmtNbr_32(NET_CONN_CFG_NBR_CONN, 3, 0, DEF_NO, DEF_YES, &buf[0]);
} else if (Str_Cmp(Variable, "NBR_CONN_AVAIL" ) == 0) {
Str_FmtNbr_32(NetConn_PoolStat.EntriesAvail, 3, 0, DEF_NO, DEF_YES, &buf[0]);
} else if (Str_Cmp(Variable, "NBR_CONN_USED" ) == 0) {
Str_FmtNbr_32(NetConn_PoolStat.EntriesUsed, 3, 0, DEF_NO, DEF_YES, &buf[0]);
} else if (Str_Cmp(Variable, "NBR_CONN_USED_MAX" ) == 0) {
Str_FmtNbr_32(NetConn_PoolStat.EntriesUsedMax, 3, 0, DEF_NO, DEF_YES, &buf[0]);
} else if (Str_Cmp(Variable, "NBR_CONN_USED_TOT" ) == 0) {
Str_FmtNbr_32(NetConn_PoolStat.EntriesAllocatedCtr, 5, 0, DEF_NO, DEF_YES, &buf[0]);
}
#if 0
printf ("uC/HTTP-s: VALUE REQUESTED: %s = %s.\n", Variable, *Val);
#endif
return (DEF_OK);
}
/*
*********************************************************************************************************
* HTTPs Value received
*********************************************************************************************************
*/
CPU_BOOLEAN HTTPs_ValRx (CPU_CHAR *Variable, CPU_CHAR *Val)
{
return (DEF_OK);
}
/*
*********************************************************************************************************
* uC/OS-View TERMINAL WINDOW CALLBACK
*********************************************************************************************************
*/
#if OS_VIEW_MODULE > 0
static void AppTerminalRx (INT8U rx_data)
{
}
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -