void Set_Pdu_Mode(void) { u8 a = 1; if(atKey == 1)//允許發送AT指令 { atKey = 0; UartSendStr("test start\r\n");//串口1輸出開始提示 while(a != 9) { switch (a) { case 1: a = Second_AT_Command("AT","OK");//如果a =9則表明最後一條語句發送完畢,跳出循環,否則一直進行指定指令的發送 delay2s(); if(a == 0) //如果正常發送,則進行下一步 a = 2; break; case 2: a =Second_AT_Command("AT+CSTT=\"CMNET\"","OK"); delay2s(); if(a == 0) //如果正常發送,則進行下一步 a = 3; break; case 3: a = Second_AT_Command("AT+CIICR","OK"); delay2s(); if(a == 0) //如果正常發送,則進行下一步 a = 4; break; case 4: a = Second_AT_Command("AT+MCONFIG=\"test\",\"\",\"\"","OK"); delay2s(); if(a == 0) //如果正常發送,則進行下一步 a = 5; break; case 5: a = Second_AT_Command("AT+MIPSTART=\"47.111.138.129\",\"1883\"","OK"); delay2s(); if(a == 0) //如果正常發送,則進行下一步 a = 6; break; case 6: a = Second_AT_Command("AT+MCONNECT=1,60","OK"); delay2s(); if(a == 0) //如果正常發送,則進行下一步 a = 7; break; case 7: a =Second_AT_Command("AT+MSUB=\"mqtt/topic\",0","OK"); delay2s(); if(a == 0) //如果正常發送,則進行下一步 a = 8; break; case 8: a = Second_AT_Command("AT+MPUB=\"mqtt/topic\",0,0,\"strat\"","OK"); delay2s(); if(a == 0) //如果正常發送,則進行下一步 a = 9; break; defalut: a = 1; } } }