diff --git a/mpp/sample/common/sample_comm_vo.c b/mpp/sample/common/sample_comm_vo.c index ee43fe8..9874785 100644 --- a/mpp/sample/common/sample_comm_vo.c +++ b/mpp/sample/common/sample_comm_vo.c @@ -289,7 +289,7 @@ void sample_vo_chn_switch(int value){ } #endif -#if 1 +#if 1 //2lu switch (value) { case 0: /* 布局一 双屏:视频1(左) + 视频2(右),各 960x720 */ vo_chn_switch(0, 1, 1); diff --git a/mpp/sample/cx6771_uart/lc660x b/mpp/sample/cx6771_uart/lc660x new file mode 100644 index 0000000..5b48895 Binary files /dev/null and b/mpp/sample/cx6771_uart/lc660x differ diff --git a/mpp/sample/lc6600_uart/Make.txt b/mpp/sample/lc6600_uart/Make.txt index 5682273..cdec757 100644 --- a/mpp/sample/lc6600_uart/Make.txt +++ b/mpp/sample/lc6600_uart/Make.txt @@ -1,3 +1,4 @@ arm-mix410-linux-gcc -o lc6600_uart_hisi ctrl_pnl.c confile.c serial.c uartinf.c udp_util.c -lrt arm-mix410-linux-gcc -o lc660x_uart_hisi ctrl_pnl_new.c confile.c serial.c uartinf.c udp_util.c -lrt arm-mix410-linux-gcc -o lc660x_uart_hisi ctrl_pnl.c confile.c serial.c uartinf.c udp_util.c -lrt +arm-mix410-linux-gcc -o lc660x_uart_hisi ctrl_pnl_test.c confile.c serial.c uartinf.c udp_util.c -lrt diff --git a/mpp/sample/lc6600_uart/ctrl_pnl.c b/mpp/sample/lc6600_uart/ctrl_pnl.c index 2351e8e..3042542 100644 --- a/mpp/sample/lc6600_uart/ctrl_pnl.c +++ b/mpp/sample/lc6600_uart/ctrl_pnl.c @@ -125,9 +125,6 @@ int setup_lc6600(struct lc6600_param *pparam){ if(read_ok == NULL){ printf("can not exce AT+CFUN=1"); } - - - } static long elapsed_ms(struct timeval *start, struct timeval *end) @@ -275,8 +272,6 @@ int get_rx2_freq(char *rx2){ #endif - - int main (int argc, char *argv[]) { int n_read; @@ -370,49 +365,49 @@ int main (int argc, char *argv[]) n_read = uart_read(ROUTE_UART, _rx_data); - printf("%s\n",_rx_data); + printf("%s\n",_rx_data); #if 1 - if(n_read > 10){ + if(n_read > 10){ - //ip_str=strstr(_rx_data,argv[2]); - //ip_str=strstr(_rx_data,"192.168.1.15"); - //ip_len = strlen(ip_str); - //printf("ip_str %d \n ",ip_len); - ip_str=strstr(_rx_data,argv[2]); - ip_len = strlen(argv[2]); - if(ip_str){ - //buffer_param[0] = 0x55; - //printf("ip_str %s \n ",ip_str); - memcpy(index,ip_str+(ip_len+2),1); - //printf("index %s \n ",index); + //ip_str=strstr(_rx_data,argv[2]); + //ip_str=strstr(_rx_data,"192.168.1.15"); + //ip_len = strlen(ip_str); + //printf("ip_str %d \n ",ip_len); + ip_str=strstr(_rx_data,argv[2]); + ip_len = strlen(argv[2]); + if(ip_str){ + //buffer_param[0] = 0x55; + //printf("ip_str %s \n ",ip_str); + memcpy(index,ip_str+(ip_len+2),1); + //printf("index %s \n ",index); - if(strcmp(index, "1") == 0){ - memcpy(rssi1,ip_str+(ip_len+5),3); - dbm1 = atoi(rssi1); - printf("++dbm1:%d\n",dbm1); - buffer_param[1] = dbm1; - gettimeofday(&tv_rx1, NULL); + if(strcmp(index, "1") == 0){ + memcpy(rssi1,ip_str+(ip_len+5),3); + dbm1 = atoi(rssi1); + printf("++dbm1:%d\n",dbm1); + buffer_param[1] = dbm1; + gettimeofday(&tv_rx1, NULL); + } + + if(strcmp(index, "2") == 0){ + memcpy(rssi2,ip_str+(ip_len+5),3); + dbm2 = atoi(rssi2); + printf("++dbm2:%d\n",dbm2); + buffer_param[2] = dbm2; + gettimeofday(&tv_rx2, NULL); + } + + }else{ + printf("no signal\n"); + } + } - - if(strcmp(index, "2") == 0){ - memcpy(rssi2,ip_str+(ip_len+5),3); - dbm2 = atoi(rssi2); - printf("++dbm2:%d\n",dbm2); - buffer_param[2] = dbm2; - gettimeofday(&tv_rx2, NULL); + else{ + printf("no \n"); + uart_write(ROUTE_UART, "AT^DAPR=1\r"); + // buffer_param[0] = 0xAA; } - - }else{ - printf("no signal\n"); - } - - } - else{ - printf("no \n"); - uart_write(ROUTE_UART, "AT^DAPR=1\r"); - // buffer_param[0] = 0xAA; - } #endif } diff --git a/mpp/sample/lc6600_uart/ctrl_pnl_test.c b/mpp/sample/lc6600_uart/ctrl_pnl_test.c new file mode 100644 index 0000000..0c9a5e9 --- /dev/null +++ b/mpp/sample/lc6600_uart/ctrl_pnl_test.c @@ -0,0 +1,450 @@ +#include +#include +#include // gettimeofday +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "serial.h" +#include "uartinf.h" +#include "confile.h" +#include "udp_util.h" + +char _rx_data[1024]; + +struct lc6600_param{ + int password; + int freq; + int power; + int bw; + int ap_sta; + int ip; + int setup; +}; + +char freq1[10]; +char freq2[10]; +//char dbm1[5]; +//char dbm2[5]; + +#define RSSI_TIMEOUT_MS 3000 //超时时间 +#define RSSI_NO_SIGNAL 0x55 //无信号值 + + + +int setup_lc6600(struct lc6600_param *pparam){ + int n_read; + char *read_ok; + char str[30]; + + uart_write(ROUTE_UART, "AT+CFUN=0\r"); + n_read = uart_read(ROUTE_UART, _rx_data); + read_ok = strstr(_rx_data,"OK"); + if(read_ok == NULL){ + printf("can not exce AT+CFUN=0"); + } + sleep(1); + //password + sprintf(str,"AT^DAPI=%d\r",pparam->password); + uart_write(ROUTE_UART, str); + printf("%s\n",str); + n_read = uart_read(ROUTE_UART, _rx_data); + read_ok = strstr(_rx_data,"OK"); + if(read_ok == NULL){ + printf("can not exce AT^DAPI"); + } + sleep(1); + // 1 center 2 station + sprintf(str,"AT^DDTC=%d\r",pparam->ap_sta); + uart_write(ROUTE_UART, str); + printf("%s\n",str); + n_read = uart_read(ROUTE_UART, _rx_data); + read_ok = strstr(_rx_data,"OK"); + if(read_ok == NULL){ + printf("can not exce AT^DDTC"); + } + sleep(1); + +// sprintf(str,"AT^DDTC=%d\r",pparam->ap_sta); + uart_write(ROUTE_UART, "AT^DSTC=2\r"); + printf("AT^DSTC\n"); + n_read = uart_read(ROUTE_UART, _rx_data); + read_ok = strstr(_rx_data,"OK"); + if(read_ok == NULL){ + printf("can not exce AT^DDSTC"); + } + sleep(1); + + + // 2 5M 3 10M 4 15M 5 20M "25" dbm + sprintf(str,"AT^DRPS=,%d,\"%d\"\r",pparam->bw,pparam->power); + uart_write(ROUTE_UART, str); + printf("%s\n",str); + n_read = uart_read(ROUTE_UART, _rx_data); + read_ok = strstr(_rx_data,"OK"); + if(read_ok == NULL){ + printf("can not exce AT^DRPS\n"); + } + sleep(1); + // 01 800M 04 1.4G 08 2.4G + sprintf(str,"AT^DAOCNDI=0%d\r",pparam->freq); + uart_write(ROUTE_UART, str); + printf("%s\n",str); + n_read = uart_read(ROUTE_UART, _rx_data); + read_ok = strstr(_rx_data,"OK"); + if(read_ok == NULL){ + printf("can not exce AT^DAOCNDI\n"); + } + + sleep(1); + + + sprintf(str,"AT^NETIFCFG=2,\"192.168.2.%d\"\r",pparam->ip); + uart_write(ROUTE_UART, str); + printf("%s\n",str); + n_read = uart_read(ROUTE_UART, _rx_data); + read_ok = strstr(_rx_data,"OK"); + if(read_ok == NULL){ + printf("can not exce AT^DAOCNDI\n"); + } + + sleep(1); + + uart_write(ROUTE_UART, "AT+CFUN=1\r"); + n_read = uart_read(ROUTE_UART, _rx_data); + read_ok = strstr(_rx_data,"OK"); + if(read_ok == NULL){ + printf("can not exce AT+CFUN=1"); + } + + + +} + +static long elapsed_ms(struct timeval *start, struct timeval *end) +{ + return (end->tv_sec - start->tv_sec) * 1000L + + (end->tv_usec - start->tv_usec) / 1000L; +} + +#define LINK_FLAG "/tmp/link_stat" + +static void write_link_stat(void) +{ + char buf[64]; + int fd, n; + + fd = open(LINK_FLAG ".tmp", O_CREAT | O_WRONLY | O_TRUNC, 0666); + if (fd < 0) + return; + n = snprintf(buf, sizeof(buf), "link=1\nts=%ld\n", (long)time(NULL)); + write(fd, buf, n); + close(fd); + rename(LINK_FLAG ".tmp", LINK_FLAG); +} + +static int force_up = 0; /* 调试用:强制标记为已连通 */ + + +#if 0 + +int get_rx1_freq(char *rx1){ + + char *s1; + char *s2; + char *s3; + char *s4; + int len; + int i; + + s1=strchr(rx1,','); + s2=strchr(s1+1,','); + s3=strchr(s2+1,','); + s4=strchr(s3+1,','); + + len= s2-s1-1; + + for(i=0;i 3) + force_up = atoi(argv[3]); + + + fd_param = shm_open("/param.txt",O_RDWR|O_CREAT|O_EXCL,0777); + if(fd_param < 0){ + fd_param = shm_open("/param.txt",O_RDWR,0777); + }else + ftruncate(fd_param,4096); + buffer_param= mmap(NULL,4096,PROT_READ|PROT_WRITE,MAP_SHARED,fd_param,0); + +#if 1 + uart_write(ROUTE_UART, "AT^DRPS?\r"); + n_read = uart_read(ROUTE_UART, _rx_data); + printf("%s\n",_rx_data); + buffer_freq = (n_read > 0) ? strstr(_rx_data, "^DRPS:") : NULL; + if(buffer_freq){ + memcpy(freq_str, buffer_freq+6, 6); + freq_str[6] = '\0'; + + printf("drps : %s\n",freq_str); + freq = atoi(freq_str); + + printf("freq %d \n",freq); + buffer_param[3]=freq; + }else{ + printf("no freq\n"); + } +#endif + + + //freq=atoi(argv[3]); +// buffer_param[0] = 0x55; + //buffer_param[3] = 14300; + if(lc6600.ap_sta == 1){ + uart_write(ROUTE_UART, "AT^DAPR=1\r"); + // n_read = uart_read(ROUTE_UART, _rx_data); + // printf("%s\n",_rx_data); + + + while(1){ + + gettimeofday(&tv_now, NULL); + + rx1_ok = (tv_rx1.tv_sec != 0 && elapsed_ms(&tv_rx1, &tv_now) <= RSSI_TIMEOUT_MS); + rx2_ok = (tv_rx2.tv_sec != 0 && elapsed_ms(&tv_rx2, &tv_now) <= RSSI_TIMEOUT_MS); + + if (!rx1_ok) { + buffer_param[1] = RSSI_NO_SIGNAL; + printf("rx1 no signal timeout\n"); + } + + if (!rx2_ok) { + buffer_param[2] = RSSI_NO_SIGNAL; + printf("rx2 no signal timeout\n"); + } + + if(force_up) + write_link_stat(); + printf("%s\n",_rx_data); + +#if 1 + if(n_read > 10){ + + //ip_str=strstr(_rx_data,argv[2]); + //ip_str=strstr(_rx_data,"192.168.1.15"); + //ip_len = strlen(ip_str); + //printf("ip_str %d \n ",ip_len); + ip_str=strstr(_rx_data,argv[2]); + ip_len = strlen(argv[2]); + if(ip_str){ + write_link_stat(); + //buffer_param[0] = 0x55; + //printf("ip_str %s \n ",ip_str); + memcpy(index,ip_str+(ip_len+2),1); + //printf("index %s \n ",index); + + if(strcmp(index, "1") == 0){ + memcpy(rssi1,ip_str+(ip_len+5),3); + dbm1 = atoi(rssi1); + printf("++dbm1:%d\n",dbm1); + buffer_param[1] = dbm1; + gettimeofday(&tv_rx1, NULL); + } + + if(strcmp(index, "2") == 0){ + memcpy(rssi2,ip_str+(ip_len+5),3); + dbm2 = atoi(rssi2); + printf("++dbm2:%d\n",dbm2); + buffer_param[2] = dbm2; + gettimeofday(&tv_rx2, NULL); + } + + }else{ + printf("no signal\n"); + } + + } + else{ + printf("no \n"); + uart_write(ROUTE_UART, "AT^DAPR=1\r"); + // buffer_param[0] = 0xAA; + } + +#endif + } + } + +} diff --git a/mpp/sample/lc6600_uart/lc6600_test b/mpp/sample/lc6600_uart/lc6600_test new file mode 100644 index 0000000..263a523 Binary files /dev/null and b/mpp/sample/lc6600_uart/lc6600_test differ diff --git a/mpp/sample/uart2net_mesh/ctrl_pnl_suzhou.c b/mpp/sample/uart2net_mesh/ctrl_pnl_anjian.c similarity index 100% rename from mpp/sample/uart2net_mesh/ctrl_pnl_suzhou.c rename to mpp/sample/uart2net_mesh/ctrl_pnl_anjian.c