esp8266(1154).c 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. /*
  2. * esp8266.c
  3. *
  4. * Created on: Jul 9, 2019
  5. * Author: parkyj
  6. */
  7. #include <string.h>
  8. #include "esp8266.h"
  9. void ESP8266_Initialize(void){
  10. volatile static bool init = false;
  11. volatile static uint8_t seq = 0;
  12. uint8_t str[100] = {0,};
  13. if(init == false || seq < 4){
  14. init = true;
  15. }else{
  16. /* * * * *DATA SEND COMMADN * * * * * */
  17. #if 0 // PYJ.2019.08.06_BEGIN --
  18. Uart2_Data_Send("AT+CIPSEND=0,4\r\n",ESP8266_Strindex("AT+CIPSEND=0,4\r\n"));
  19. HAL_Delay(1000);
  20. sprintf(str,"%d", ADC_Value_RetFunc());
  21. Uart2_Data_Send(str,ESP8266_Strindex(str));
  22. printf("%s\r\n INDEX : %d",str,ESP8266_Strindex(str));
  23. HAL_Delay(500);
  24. // Uart2_Data_Send("be\r\n",ESP8266_Strindex("123456789\r\n"));
  25. #endif // PYJ.2019.08.06_END --
  26. // Uart2_Data_Send("AT+CIPSEND=1,1\r\n",ESP8266_Strindex("AT+CIPSEND=1,1\r\n"));
  27. // HAL_Delay(5);
  28. // Uart2_Data_Send("1\r\n",ESP8266_Strindex("1\r\n"));
  29. return;
  30. }
  31. #if 1 // PYJ.2019.12.13_BEGIN --
  32. switch(seq){
  33. case 0:
  34. Uart2_Data_Send("AT+CWMODE=3\r\n",ESP8266_Strindex("AT+CWMODE=3\r\n"));
  35. seq++;
  36. break;
  37. case 1:
  38. Uart2_Data_Send("AT+CIPMUX=1\r\n",ESP8266_Strindex("AT+CIPMUX=1\r\n"));
  39. seq++;
  40. break;
  41. case 2:
  42. Uart2_Data_Send("AT+CWSAP=\"BLUE_TEST\",\"\",5,0\r\n",ESP8266_Strindex("AT+CWSAP=\"BLUE_TEST\",\"\",5,0\r\n"));
  43. seq++;
  44. break;
  45. case 3:
  46. Uart2_Data_Send("AT+CIPSERVER=1,4000\r\n",ESP8266_Strindex("AT+CIPSERVER=1,4000\r\n"));
  47. HAL_Delay(5);
  48. Uart2_Data_Send("AT+CIFSR\r\n",ESP8266_Strindex("AT+CIFSR\r\n"));
  49. printf("ESP Setting Complete \r\n");
  50. seq++;
  51. break;
  52. default:
  53. break;
  54. }
  55. #endif // PYJ.2019.12.13_END --
  56. }
  57. uint8_t ESP8266_Strindex(uint8_t* str){
  58. return strlen(str);
  59. }
  60. uint8_t ESP8266_StrFilter(uint8_t* str){
  61. char *ptr = strstr(str, ":"); // den으로 시작하는 문자열 검색, 포인터 반환
  62. //printf("first : %s\n", ptr); // den Diary
  63. printf("\r\nResult : ");
  64. for(int i = 0; i < ESP8266_Strindex(ptr); i++)
  65. printf("%d", *(ptr + i)); // den Diary
  66. printf("\r\n");
  67. }