first commit for opensource
first commit for opensource
This commit is contained in:
98
board/STM32F103_SIM800A/Src/main.c
Normal file
98
board/STM32F103_SIM800A/Src/main.c
Normal file
@@ -0,0 +1,98 @@
|
||||
#include "sim800a.h"
|
||||
#include "mcu_init.h"
|
||||
#include "sal_module_wrapper.h"
|
||||
|
||||
#define MAIN_TASK_STK_SIZE 4096
|
||||
void main_task(void *pdata);
|
||||
osThreadDef(main_task, osPriorityNormal, 1, MAIN_TASK_STK_SIZE);
|
||||
|
||||
#define TCP_TEST_TASK1_STK_SIZE 4096
|
||||
void tcp_test1(void);
|
||||
osThreadDef(tcp_test1, osPriorityNormal, 1, TCP_TEST_TASK1_STK_SIZE);
|
||||
|
||||
#define TCP_TEST_TASK2_STK_SIZE 4096
|
||||
void tcp_test2(void);
|
||||
osThreadDef(tcp_test2, osPriorityNormal, 1, TCP_TEST_TASK2_STK_SIZE);
|
||||
|
||||
#define RECV_LEN 1024
|
||||
|
||||
char *data_send = "Welcome to TCP Test!\r\n";
|
||||
char *data_send2 = "Hello Tencent!\r\n";
|
||||
|
||||
int socket_id = -1;
|
||||
int socket_id2 = -1;
|
||||
|
||||
unsigned char recv_data1[RECV_LEN];
|
||||
unsigned char recv_data2[RECV_LEN];
|
||||
|
||||
void tcp_test1(void)
|
||||
{
|
||||
int ret = -1;
|
||||
|
||||
while (1) {
|
||||
tos_sal_module_send(socket_id, (const unsigned char*)data_send, strlen(data_send));
|
||||
|
||||
ret = tos_sal_module_recv_timeout(socket_id, recv_data1, strlen(data_send), 8000);
|
||||
if (ret < 0) {
|
||||
printf("recv error\n\r");
|
||||
} else {
|
||||
recv_data1[ret] = 0;
|
||||
printf("recv:ret = %d (%s)\n\r", ret, recv_data1);
|
||||
memset(recv_data1, 0, strlen((const char *)recv_data1));
|
||||
}
|
||||
|
||||
tos_sleep_ms(2000);
|
||||
}
|
||||
}
|
||||
|
||||
void tcp_test2(void)
|
||||
{
|
||||
int ret = -1;
|
||||
|
||||
while (1) {
|
||||
tos_sal_module_send(socket_id2, (const unsigned char*)data_send2, strlen(data_send2));
|
||||
|
||||
ret = tos_sal_module_recv_timeout(socket_id2, recv_data2, strlen(data_send2), 8000);
|
||||
if (ret < 0) {
|
||||
printf("recv2 error\n\r");
|
||||
} else {
|
||||
recv_data2[ret] = 0;
|
||||
printf("recv2:ret = %d (%s)\n\r", ret, recv_data2);
|
||||
memset(recv_data2,0,strlen((const char *)recv_data2));
|
||||
}
|
||||
tos_sleep_ms(2000);
|
||||
}
|
||||
}
|
||||
|
||||
void main_task(void *arg)
|
||||
{
|
||||
sim800a_power_on();
|
||||
sim800a_sal_init(HAL_UART_PORT_2);
|
||||
|
||||
socket_id = tos_sal_module_connect("39.108.190.129", "8080", TOS_SAL_PROTO_TCP);
|
||||
if (socket_id == -1) {
|
||||
printf("TCP0 connect failed\r\n");
|
||||
} else {
|
||||
printf("TCP0 connect success! fd: %d\n",socket_id);
|
||||
}
|
||||
|
||||
socket_id2 = tos_sal_module_connect("39.108.190.129", "8001", TOS_SAL_PROTO_TCP);
|
||||
if (socket_id2 == -1) {
|
||||
printf("TCP1 connect failed\r\n");
|
||||
} else {
|
||||
printf("TCP1 connect success! fd: %d\n",socket_id2);
|
||||
}
|
||||
|
||||
osThreadCreate(osThread(tcp_test1), NULL);
|
||||
osThreadCreate(osThread(tcp_test2), NULL);
|
||||
}
|
||||
|
||||
int main(void)
|
||||
{
|
||||
board_init();
|
||||
printf("welcome to Tencent TOS Tiny\r\n");
|
||||
osKernelInitialize();
|
||||
osThreadCreate(osThread(main_task), NULL);
|
||||
osKernelStart();
|
||||
}
|
||||
|
Reference in New Issue
Block a user