#include #include #include #include #include #include #include #include #include #include "web.h" #include "sys.h" #include "power.h" #include "cfg.h" #include "paras.h" #include "cascade.h" #include "snmp.h" #include "net.h" //https://embedded-rd.blog.csdn.net/article/details/109643188 extern void lwip_sys_init(void); #if 0 static int net_init(const char *ip, int port) { #define SERVER_PORT 8080 #define BUFF_SIZE 128 int sock, client_fd; struct sockaddr_in server_addr, client_addr; socklen_t client_addr_len; char buff[BUFF_SIZE]; int bytes_read; int ret; /* ??socket */ sock = socket(AF_INET, SOCK_STREAM, 0); if (sock == -1) { rt_kprintf("socket create failed!\n"); return -1; } /* ??????? */ server_addr.sin_family = AF_INET; server_addr.sin_port = htons(port); server_addr.sin_addr.s_addr = inet_addr(ip); /* ??????? */ ret = bind(sock, (struct sockaddr *)&server_addr, sizeof(server_addr)); if (ret == -1) { rt_kprintf("bind failed!\n"); goto __exit; } /* ?????? */ ret = listen(sock, 5); if (ret == -1) { rt_kprintf("listen failed!\n"); goto __exit; } rt_kprintf("TCP server waiting for client on port %d...\n", port); /* ??????? */ client_addr_len = sizeof(client_addr); client_fd = accept(sock, (struct sockaddr *)&client_addr, &client_addr_len); if (client_fd == -1) { rt_kprintf("accept failed!\n"); goto __exit; } rt_kprintf("Client accepted!\n"); /* ????????? */ while (1) { bytes_read = recv(client_fd, buff, BUFF_SIZE, 0); if (bytes_read <= 0) { rt_kprintf("recv failed, errno=%d\n", errno); break; } /* ????????????? */ ret = send(client_fd, buff, bytes_read, 0); if (ret < 0) { rt_kprintf("send failed, errno=%d\n", errno); break; } } __exit: if (client_fd >= 0) close(client_fd); if (sock >= 0) close(sock); return ret; } #endif static int user_init(void) { paras_data_t *p=paras_get(); modbus_data_t *cas=&p->cas; net_init(); snmp2_init(); power_init(); //cascade_init(); web_init(); return 0; } int main(void) { sys_init(); user_init(); while (1) { sleep(10); } }