forked from xuos/xiuos
added socket test command on nuttx
This commit is contained in:
parent
3bc1cffa33
commit
dcc91fd4a9
|
@ -29,6 +29,7 @@
|
|||
#ifdef ADD_NUTTX_FETURES
|
||||
#include <sys/socket.h>
|
||||
#include <netinet/in.h>
|
||||
#include <arpa/inet.h>
|
||||
#include "stdio.h"
|
||||
#endif
|
||||
|
||||
|
@ -218,6 +219,17 @@ SHELL_EXPORT_CMD(SHELL_CMD_PERMISSION(0) | SHELL_CMD_TYPE(SHELL_TYPE_CMD_MAIN) |
|
|||
|
||||
|
||||
#ifdef ADD_NUTTX_FETURES
|
||||
|
||||
void tcp_set_ip(char *ip_str)
|
||||
{
|
||||
char ip[4] = {0};
|
||||
if(sscanf(ip_str, "%d.%d.%d.%d", &ip[0], &ip[1], &ip[2], &ip[3]))
|
||||
{
|
||||
printf("config ip %s\n", ip_str);
|
||||
memcpy(tcp_socket_ip, ip, 4);
|
||||
}
|
||||
}
|
||||
|
||||
void tcp_recv_demo(void)
|
||||
{
|
||||
TCPSocketRecvTask(NULL);
|
||||
|
|
|
@ -196,6 +196,16 @@ SHELL_EXPORT_CMD(SHELL_CMD_PERMISSION(0) | SHELL_CMD_TYPE(SHELL_TYPE_CMD_MAIN) |
|
|||
#endif
|
||||
|
||||
#ifdef ADD_NUTTX_FETURES
|
||||
void udp_set_ip(char *ip_str)
|
||||
{
|
||||
char ip[4] = {0};
|
||||
if(sscanf(ip_str, "%d.%d.%d.%d", &ip[0], &ip[1], &ip[2], &ip[3]))
|
||||
{
|
||||
printf("config ip %s\n", ip_str);
|
||||
memcpy(udp_socket_ip, ip, 4);
|
||||
}
|
||||
}
|
||||
|
||||
void udp_recv_demo(void)
|
||||
{
|
||||
UdpSocketRecvTask(NULL);
|
||||
|
|
|
@ -1462,6 +1462,13 @@ int nsh_foreach_var(FAR struct nsh_vtbl_s *vtbl, nsh_foreach_var_t cb,
|
|||
int cmd_Extsram(FAR struct nsh_vtbl_s *vtbl, int argc, char **argv);
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_SOCKET_DEMO) && !defined(CONFIG_NSH_DISABLE_SOCKET_DEMO)
|
||||
int cmd_Udpsend(FAR struct nsh_vtbl_s *vtbl, int argc, char **argv);
|
||||
int cmd_Udprecv(FAR struct nsh_vtbl_s *vtbl, int argc, char **argv);
|
||||
int cmd_Tcpsend(FAR struct nsh_vtbl_s *vtbl, int argc, char **argv);
|
||||
int cmd_Tcprecv(FAR struct nsh_vtbl_s *vtbl, int argc, char **argv);
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_APPLICATION_SENSOR_HCHO_TB600B_WQ_HCHO1OS) && !defined(CONFIG_NSH_DISABLE_HCHO_TB600B_WQ_HCHO1OS)
|
||||
int cmd_Hcho1os(FAR struct nsh_vtbl_s *vtbl, int argc, char **argv);
|
||||
#endif
|
||||
|
|
|
@ -77,6 +77,53 @@ int cmd_Extsram(FAR struct nsh_vtbl_s *vtbl, int argc, char **argv)
|
|||
}
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
* Name: socket test
|
||||
****************************************************************************/
|
||||
#if defined(CONFIG_SOCKET_DEMO) && !defined(CONFIG_NSH_DISABLE_SOCKET_DEMO)
|
||||
extern void udp_set_ip(char *ip_str);
|
||||
extern int udp_recv_demo(void);
|
||||
int cmd_Udprecv(FAR struct nsh_vtbl_s *vtbl, int argc, char **argv)
|
||||
{
|
||||
nsh_output(vtbl, "Hello, UDP receive!\n");
|
||||
if(argc == 2)
|
||||
udp_set_ip(argv[1]);
|
||||
udp_recv_demo();
|
||||
return OK;
|
||||
}
|
||||
|
||||
extern int udp_send_demo(void);
|
||||
int cmd_Udpsend(FAR struct nsh_vtbl_s *vtbl, int argc, char **argv)
|
||||
{
|
||||
nsh_output(vtbl, "Hello, UDP send!\n");
|
||||
if(argc == 2)
|
||||
udp_set_ip(argv[1]);
|
||||
udp_send_demo();
|
||||
return OK;
|
||||
}
|
||||
|
||||
extern void tcp_set_ip(char *ip_str);
|
||||
extern int tcp_recv_demo(void);
|
||||
int cmd_Tcprecv(FAR struct nsh_vtbl_s *vtbl, int argc, char **argv)
|
||||
{
|
||||
nsh_output(vtbl, "Hello, TCP receive!\n");
|
||||
if(argc == 2)
|
||||
tcp_set_ip(argv[1]);
|
||||
tcp_recv_demo();
|
||||
return OK;
|
||||
}
|
||||
|
||||
extern int tcp_send_demo(void);
|
||||
int cmd_Tcpsend(FAR struct nsh_vtbl_s *vtbl, int argc, char **argv)
|
||||
{
|
||||
nsh_output(vtbl, "Hello, TCP send!\n");
|
||||
if(argc == 2)
|
||||
tcp_set_ip(argv[1]);
|
||||
tcp_send_demo();
|
||||
return OK;
|
||||
}
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
* Name: cmd_Hcho1os
|
||||
****************************************************************************/
|
||||
|
|
|
@ -608,6 +608,13 @@ static const struct cmdmap_s g_cmdmap[] =
|
|||
{ "sram", cmd_Extsram, 1, 1, "[Extra sdram demo cmd.]" },
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_SOCKET_DEMO) && !defined(CONFIG_NSH_DISABLE_SOCKET_DEMO)
|
||||
{ "udpsend", cmd_Udpsend, 1, 2, "[Udp send demo cmd.]" },
|
||||
{ "udprecv", cmd_Udprecv, 1, 2, "[Udp recv demo cmd.]" },
|
||||
{ "tcpsend", cmd_Tcpsend, 1, 2, "[Tcp send demo cmd.]" },
|
||||
{ "tcprecv", cmd_Tcprecv, 1, 2, "[Tcp recv demo cmd.]" },
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_APPLICATION_SENSOR_HCHO_TB600B_WQ_HCHO1OS) && !defined(CONFIG_NSH_DISABLE_HCHO_TB600B_WQ_HCHO1OS)
|
||||
{ "hcho1os", cmd_Hcho1os, 1, 1, "[get the concentration of formaldehyde with sensor tb600b_wq_hcho1os.]" },
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue