作者 王振宇

优化:串口直连模式时,程序错误不喊话程序错误

@@ -146,6 +146,7 @@ int main(int argc, char *argv[]) @@ -146,6 +146,7 @@ int main(int argc, char *argv[])
146 fwVersion.debugVersion = 0; 146 fwVersion.debugVersion = 0;
147 UAV_Core_SetFirmwareVersion(fwVersion); 147 UAV_Core_SetFirmwareVersion(fwVersion);
148 UAV_Uart_Init("/dev/ttyS1",115200); 148 UAV_Uart_Init("/dev/ttyS1",115200);
  149 + //计时线程创建
149 pthread_t work_mode_task; 150 pthread_t work_mode_task;
150 pthread_attr_t task_attribute; //线程属性 151 pthread_attr_t task_attribute; //线程属性
151 pthread_attr_init(&task_attribute); //初始化线程属性 152 pthread_attr_init(&task_attribute); //初始化线程属性
@@ -680,7 +681,7 @@ void *getworkmodeTask(void *arg) @@ -680,7 +681,7 @@ void *getworkmodeTask(void *arg)
680 int i=0; 681 int i=0;
681 LOG_INFO("进入PSDK等待函数\n"); 682 LOG_INFO("进入PSDK等待函数\n");
682 T_UAVReturnCode returnCode; 683 T_UAVReturnCode returnCode;
683 - FILE * workModeFile = fopen("/root/work_mode.txt", "wb"); 684 + FILE * workModeFile = fopen("/root/work_mode.txt", "w");
684 while( i<15 && work_mode==0) 685 while( i<15 && work_mode==0)
685 { 686 {
686 LOG_INFO("wait {} work_mode={}.....\n",i,work_mode); 687 LOG_INFO("wait {} work_mode={}.....\n",i,work_mode);
@@ -68,17 +68,28 @@ echo "_____启动开始语音_____"; @@ -68,17 +68,28 @@ echo "_____启动开始语音_____";
68 chmod 777 H1start; 68 chmod 777 H1start;
69 ./H1start; 69 ./H1start;
70 70
  71 +file_path="/root/work_mode.txt"
71 ehco "____It_Just_Work____" 72 ehco "____It_Just_Work____"
72 while true; do 73 while true; do
73 echo "____开启 程序___" 74 echo "____开启 程序___"
74 chmod 777 CheckConnect.sh 75 chmod 777 CheckConnect.sh
75 ./CheckConnect.sh 76 ./CheckConnect.sh
76 77
77 - echo "_____启动错误文件_____"  
78 - mount -o remount rw sdcard/  
79 - sync 78 + if [ -f "$file_path" ]; then
  79 + # 读取文件的第一行
  80 + value=$(head -n 1 "$file_path")
80 81
81 - echo "____错误处理____"  
82 - chmod 777 H1error;  
83 - ./H1error; 82 + # 判断值是否等于1,1为sdk模式,在串口直连模式时,程序错误不喊话程序错误
  83 + if [ "$value" -eq 1 ]; then
  84 + echo "_____启动错误文件_____"
  85 + mount -o remount rw sdcard/
  86 + sync
  87 +
  88 + echo "____错误处理____"
  89 + chmod 777 H1error;
  90 + ./H1error;
  91 + fi
  92 +fi
  93 +
  94 +
84 done 95 done
@@ -12,7 +12,7 @@ if [ -f "$file_path" ]; then @@ -12,7 +12,7 @@ if [ -f "$file_path" ]; then
12 # 读取文件的第一行 12 # 读取文件的第一行
13 value=$(head -n 1 "$file_path") 13 value=$(head -n 1 "$file_path")
14 14
15 - # 判断值是否等于0 15 + # 判断值是否等于0 (0表示串口直连模式,1表示sdk模式)
16 if [ "$value" -eq 0 ]; then 16 if [ "$value" -eq 0 ]; then
17 chmod 777 JZ_UART_APP 17 chmod 777 JZ_UART_APP
18 ./JZ_UART_APP 18 ./JZ_UART_APP