






Started logging.

>>>
Content-Length: 3201

{"jsonrpc":"2.0","id":"1","method":"initialize","params":{"processId":12152,"clientInfo":{"name":"vscode","version":"1.53.2"},"rootPath":"C:\\Users\\Administrator\\AppData\\Local\\Temp\\arduino-language-server215188477\\sketch","rootUri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch","initializationOptions":{},"capabilities":{"workspace":{"applyEdit":true,"workspaceEdit":{"documentChanges":true,"resourceOperations":["create","rename","delete"],"failureHandling":"textOnlyTransactional"},"didChangeConfiguration":{"dynamicRegistration":true},"didChangeWatchedFiles":{"dynamicRegistration":true},"symbol":{"dynamicRegistration":true,"symbolKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]}},"executeCommand":{"dynamicRegistration":true},"workspaceFolders":true,"configuration":true},"textDocument":{"synchronization":{"dynamicRegistration":true,"willSave":true,"willSaveWaitUntil":true,"didSave":true},"completion":{"dynamicRegistration":true,"completionItem":{"snippetSupport":true,"commitCharactersSupport":true,"documentationFormat":["markdown","plaintext"],"deprecatedSupport":true,"preselectSupport":true,"tagSupport":{"valueSet":[1]}},"completionItemKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25]},"contextSupport":true},"hover":{"dynamicRegistration":true,"contentFormat":["markdown","plaintext"]},"signatureHelp":{"dynamicRegistration":true,"signatureInformation":{"documentationFormat":["markdown","plaintext"],"parameterInformation":{"labelOffsetSupport":true}},"contextSupport":true},"declaration":{"dynamicRegistration":true,"linkSupport":true},"definition":{"dynamicRegistration":true,"linkSupport":true},"typeDefinition":{"dynamicRegistration":true,"linkSupport":true},"implementation":{"dynamicRegistration":true,"linkSupport":true},"references":{"dynamicRegistration":true},"documentHighlight":{"dynamicRegistration":true},"documentSymbol":{"dynamicRegistration":true,"symbolKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]},"hierarchicalDocumentSymbolSupport":true},"codeAction":{"dynamicRegistration":true,"codeActionLiteralSupport":{"codeActionKind":{"valueSet":["","quickfix","refactor","refactor.extract","refactor.inline","refactor.rewrite","source","source.organizeImports"]}},"isPreferredSupport":true},"codeLens":{"dynamicRegistration":true},"documentLink":{"dynamicRegistration":true,"tooltipSupport":true},"colorProvider":{"dynamicRegistration":true},"formatting":{"dynamicRegistration":true},"rangeFormatting":{"dynamicRegistration":true},"onTypeFormatting":{"dynamicRegistration":true},"rename":{"dynamicRegistration":true,"prepareSupport":true},"publishDiagnostics":{"relatedInformation":true,"tagSupport":{"valueSet":[1,2]}},"foldingRange":{"dynamicRegistration":true,"rangeLimit":5000,"lineFoldingOnly":true},"selectionRange":{"dynamicRegistration":true}},"window":{"workDoneProgress":true}},"trace":"off","workspaceFolders":[{"uri":"file:///e%3A/5-%E6%95%99%E7%A8%8B/1.tutorial/ZYC0055%29Mini%20DIY%20obstacle%20avoidance%20car/ZYC0055/Part2.0%20Module%20learning/code/avoidance","name":"avoidance"}]}}
<<<
Content-Length: 1905

{"id":"1","jsonrpc":"2.0","result":{"capabilities":{"astProvider":true,"callHierarchyProvider":true,"clangdInlayHintsProvider":true,"codeActionProvider":{"codeActionKinds":["quickfix","refactor","info"]},"compilationDatabase":{"automaticReload":true},"completionProvider":{"allCommitCharacters":[" ","\t","(",")","[","]","{","}","<",">",":",";",",","+","-","/","*","%","^","&","#","?",".","=","\"","'","|"],"resolveProvider":false,"triggerCharacters":[".","<",">",":","\"","/","*"]},"declarationProvider":true,"definitionProvider":true,"documentFormattingProvider":true,"documentHighlightProvider":true,"documentLinkProvider":{"resolveProvider":false},"documentOnTypeFormattingProvider":{"firstTriggerCharacter":"\n","moreTriggerCharacter":[]},"documentRangeFormattingProvider":true,"documentSymbolProvider":true,"executeCommandProvider":{"commands":["clangd.applyFix","clangd.applyTweak"]},"hoverProvider":true,"implementationProvider":true,"memoryUsageProvider":true,"referencesProvider":true,"renameProvider":{"prepareProvider":true},"selectionRangeProvider":true,"semanticTokensProvider":{"full":{"delta":true},"legend":{"tokenModifiers":["declaration","deprecated","deduced","readonly","static","abstract","virtual","dependentName","defaultLibrary","usedAsMutableReference","functionScope","classScope","fileScope","globalScope"],"tokenTypes":["variable","variable","parameter","function","method","function","property","variable","class","interface","enum","enumMember","type","type","unknown","namespace","typeParameter","concept","type","macro","comment"]},"range":false},"signatureHelpProvider":{"triggerCharacters":["(",")","{","}","<",">",","]},"textDocumentSync":{"change":2,"openClose":true,"save":true},"typeDefinitionProvider":true,"typeHierarchyProvider":true,"workspaceSymbolProvider":true},"serverInfo":{"name":"clangd","version":"clangd version 14.0.0 windows x86_64-pc-windows-msvc"}}}
>>>
Content-Length: 52

{"jsonrpc":"2.0","method":"initialized","params":{}}Content-Length: 6121

{"jsonrpc":"2.0","method":"textDocument/didOpen","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","languageId":"cpp","version":1,"text":"#include \u003cArduino.h\u003e\n#line 1 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\n//2021.6.7\n//Define the direction of car movement\n#define  stop     0\n#define  forward  1\n#define  back     2\n#define  left     3\n#define  right    4\n\n//Definition of ultrasonic pin\n#define  Trig A4 \n#define  Echo A5\n\n//Data variable definition\nint MotSpeed1 = 0; \nint MotSpeed2 = 0;\nint Speed_adjustment = 120;\nint stop_bit = 0;\n\n//Program initialization\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup();\n#line 37 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid loop();\n#line 49 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nfloat GetDistance();\n#line 70 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor1(int steep1, int steep2);\n#line 77 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor2(int steep1, int steep2);\n#line 84 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid avoidance(int set_dis);\n#line 135 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor(int dir ,int speed1, int speed2);\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup()  \n{\n    Serial.begin(9600); \n\n    pinMode(5, OUTPUT);\n    pinMode(6, OUTPUT);\n    pinMode(9, OUTPUT);\n    pinMode(10, OUTPUT);\n\n    pinMode(Trig,OUTPUT);   \n    pinMode(Echo,INPUT); \n    // Define ultrasonic sensor pins\n    \n\n}\n\n//Principal function\nvoid loop()\n{ \n   avoidance(18);  //In brackets is the obstacle avoidance distance in cm\n}\n\n/*\nFunction: obtain ultrasonic sensor ranging data\nParameters: Trig, Echo\nParameter description: sensor connected to the motherboard pin port A4,A5\nTrig -------\u003e pin A4\nEcho -------\u003e pin A5\n*/\nfloat GetDistance()\n{\n    float distance;\n  \n\tdigitalWrite(Trig, LOW); \n\tdelayMicroseconds(2); \n\tdigitalWrite(Trig, HIGH); \n\tdelayMicroseconds(10);\n\tdigitalWrite(Trig, LOW);\n\n  distance = pulseIn(Echo, HIGH) / 58.00;\n     \n\treturn distance;  //Return distance\n}\n\n/*\n* Function: Obstacle avoidance\n* Parameter: set_dis sets the obstacle avoidance distance\n*/\n\n//Motor 1 output definition\nvoid motor1(int steep1, int steep2) \n{\n   analogWrite(5,steep1);\n   analogWrite(6,steep2); \n}\n\n//Motor 2 output definition\nvoid motor2(int steep1, int steep2)\n{\n   analogWrite(9,steep1);\n   analogWrite(10,steep2); \n}\n\n//Obstacle avoidance function\nvoid avoidance(int set_dis)\n{\n    int distance;\n    distance = GetDistance(); \n    Serial.println(distance);  //Print distance in serial port\n    if(distance \u003c 30)     //Judge that the distance is less than 40cm and start to decelerate\n    {\n\t  Speed_adjustment--;\n\t  //delay(5);     //Car deceleration speed\n\t  if(Speed_adjustment\u003c=120)Speed_adjustment=120;\n      MotSpeed1 = Speed_adjustment+20;  //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n\n   if(distance \u003e 30)  //Judge if the distance is more than 40cm and start to accelerate\n    {\n\t  Speed_adjustment++;\n\t  //delay(5);\n\t  if(Speed_adjustment\u003e=235)Speed_adjustment=235; //The maximum limit is 255\n      MotSpeed1 = Speed_adjustment+20; //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n     \n\tif(distance \u003c set_dis)  //Judge that the car is less than the obstacle avoidance distance and start to turn backward\n\t{\n\t\tdelay(10);\n\t\tdistance = GetDistance(); \n\t\tif(distance \u003c set_dis)\n\t\t{\n\t\t\tif(stop_bit==0)\n\t\t\t{\n\t\t\t\tmotor(stop,0,0);//stop\n\t\t\t\tdelay(300);\n\t\t\t\tstop_bit=1;\n\t\t\t}\n\t\t\tmotor(back,140,140); //Car back\n\t\t\tdelay(600);\n\t\t\tmotor(left,140,140); //The car turns left\n\t\t\tdelay(200);          \n\t\t\tSpeed_adjustment=120;\n\t\t}\n\t}\n    else\n    {\n        motor(forward,MotSpeed1,MotSpeed2);//If there is no less than the obstacle avoidance distance, move forward\n\t\t    stop_bit=0;\n    }\n  \n}\n\n//Motor direction function to determine the direction of the car\nvoid motor(int dir ,int speed1, int speed2)  \n{  \n    switch (dir)\n    {\n    case stop:\n        motor1(0, 0);\n        motor2(0, 0);\n       \n        break;\n\n    case forward:  //Go ahead\n       \n       motor1(0,speed1); //If the circuit is not connected correctly, modify here to correct the motor direction\n       motor2(0,speed2); \n       \n        break;\n\n    case back:  //Back up\n        \n        motor1(speed1, 0);\n        motor2(speed2, 0);\n        \n        break;\n\n    case left:   //Turn left\n        motor1(0, speed1);\n        motor2(speed2, 0);\n        \n        break;\n\n    case right:   //Turn right\n        \n        motor1(speed1, 0);\n        motor2(0, speed2);\n       \n        break;\n    \n    default:\n        break;\n    }\n}\n\n"}}}
<<<
Content-Length: 187

{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[],"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/.clangd"}}
>>>
Content-Length: 312

{"jsonrpc":"2.0","id":"2","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":101,"character":1},"end":{"line":101,"character":1}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 111

{"id":0,"jsonrpc":"2.0","method":"window/workDoneProgress/create","params":{"token":"backgroundIndexProgress"}}
>>>
Content-Length: 38

{"jsonrpc":"2.0","id":0,"result":null}
<<<
Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"begin","percentage":0,"title":"indexing"}}}Content-Length: 141

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/1","percentage":0}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/27","percentage":0}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/27","percentage":0}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/27","percentage":0}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"1/27","percentage":3}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"1/27","percentage":3}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"1/27","percentage":3}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"1/27","percentage":3}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"1/27","percentage":3}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"2/27","percentage":7}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"2/27","percentage":7}}}Content-Length: 466

{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"readability-misleading-indentation","message":"Different indentation for 'if' and corresponding 'else'","range":{"end":{"character":8,"line":142},"start":{"character":4,"line":142}},"relatedInformation":[],"severity":2,"source":"clang-tidy"}],"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","version":1}}Content-Length: 38

{"id":"2","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 209

{"jsonrpc":"2.0","id":"3","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3892

{"id":"3","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":1,"line":191},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"3/27","percentage":11}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"3/27","percentage":11}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"4/27","percentage":14}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"4/27","percentage":14}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"5/27","percentage":18}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"5/27","percentage":18}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"6/27","percentage":22}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"6/27","percentage":22}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"7/27","percentage":25}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"7/27","percentage":25}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"8/27","percentage":29}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"8/27","percentage":29}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"9/27","percentage":33}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"9/27","percentage":33}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"10/27","percentage":37}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"10/27","percentage":37}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"11/27","percentage":40}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"11/27","percentage":40}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"12/27","percentage":44}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"12/27","percentage":44}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"13/27","percentage":48}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"13/27","percentage":48}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"14/27","percentage":51}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"14/27","percentage":51}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"15/27","percentage":55}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"15/27","percentage":55}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"16/27","percentage":59}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"16/27","percentage":59}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"17/27","percentage":62}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"17/27","percentage":62}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"18/27","percentage":66}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"18/27","percentage":66}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"19/27","percentage":70}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"19/27","percentage":70}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"20/27","percentage":74}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"20/27","percentage":74}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"21/27","percentage":77}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"21/27","percentage":77}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"22/27","percentage":81}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"23/27","percentage":85}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"24/27","percentage":88}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"25/27","percentage":92}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"26/27","percentage":96}}}Content-Length: 107

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"end"}}}
>>>
Content-Length: 251

{"jsonrpc":"2.0","id":"4","method":"textDocument/documentHighlight","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":114,"character":60}}}
<<<
Content-Length: 38

{"id":"4","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 314

{"jsonrpc":"2.0","id":"5","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":114,"character":60},"end":{"line":114,"character":60}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 38

{"id":"5","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 239

{"jsonrpc":"2.0","id":"6","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":114,"character":59}}}
<<<
Content-Length: 40

{"id":"6","jsonrpc":"2.0","result":null}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"7","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":119,"character":142}}}
<<<
Content-Length: 40

{"id":"7","jsonrpc":"2.0","result":null}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"8","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":119,"character":142}}}
<<<
Content-Length: 40

{"id":"8","jsonrpc":"2.0","result":null}
>>>
Content-Length: 250

{"jsonrpc":"2.0","id":"9","method":"textDocument/documentHighlight","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":12,"character":16}}}
<<<
Content-Length: 38

{"id":"9","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 313

{"jsonrpc":"2.0","id":"10","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":12,"character":16},"end":{"line":12,"character":16}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"10","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 239

{"jsonrpc":"2.0","id":"11","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":100,"character":7}}}
<<<
Content-Length: 320

{"id":"11","jsonrpc":"2.0","result":{"contents":{"kind":"markdown","value":"### function `avoidance`  \n\n---\n→ `void`  \nParameters:  \n- `int set_dis`\n\nObstacle avoidance function  \n\n---\n```cpp\nvoid avoidance(int set_dis)\n```"},"range":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}}}
>>>
Content-Length: 251

{"jsonrpc":"2.0","id":"12","method":"textDocument/documentHighlight","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":100,"character":8}}}
<<<
Content-Length: 304

{"id":"12","jsonrpc":"2.0","result":[{"kind":1,"range":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"kind":1,"range":{"end":{"character":12,"line":55},"start":{"character":3,"line":55}}},{"kind":1,"range":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}}]}
>>>
Content-Length: 314

{"jsonrpc":"2.0","id":"13","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":100,"character":5},"end":{"line":100,"character":14}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"13","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 313

{"jsonrpc":"2.0","id":"14","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":88,"character":25},"end":{"line":88,"character":25}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"14","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 313

{"jsonrpc":"2.0","id":"15","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":88,"character":25},"end":{"line":88,"character":25}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"15","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 313

{"jsonrpc":"2.0","id":"16","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":95,"character":25},"end":{"line":95,"character":25}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"16","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"17","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":104,"character":36}}}
<<<
Content-Length: 41

{"id":"17","jsonrpc":"2.0","result":null}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"18","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":104,"character":35}}}
<<<
Content-Length: 41

{"id":"18","jsonrpc":"2.0","result":null}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"19","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":114,"character":35}}}
<<<
Content-Length: 41

{"id":"19","jsonrpc":"2.0","result":null}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"20","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":135,"character":25}}}
<<<
Content-Length: 41

{"id":"20","jsonrpc":"2.0","result":null}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"21","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":133,"character":15},"end":{"line":133,"character":15}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"21","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"22","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":139,"character":24},"end":{"line":139,"character":24}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"22","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"23","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":170,"character":25}}}
<<<
Content-Length: 339

{"id":"23","jsonrpc":"2.0","result":{"contents":{"kind":"markdown","value":"### function `motor1`  \n\n---\n→ `void`  \nParameters:  \n- `int steep1`\n- `int steep2`\n\nMotor 1 output definition  \n\n---\n```cpp\nvoid motor1(int steep1, int steep2)\n```"},"range":{"end":{"character":26,"line":170},"start":{"character":25,"line":170}}}}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"24","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":170,"character":24}}}
<<<
Content-Length: 339

{"id":"24","jsonrpc":"2.0","result":{"contents":{"kind":"markdown","value":"### function `motor1`  \n\n---\n→ `void`  \nParameters:  \n- `int steep1`\n- `int steep2`\n\nMotor 1 output definition  \n\n---\n```cpp\nvoid motor1(int steep1, int steep2)\n```"},"range":{"end":{"character":25,"line":170},"start":{"character":24,"line":170}}}}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"25","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":104,"character":32}}}
<<<
Content-Length: 41

{"id":"25","jsonrpc":"2.0","result":null}
>>>
Content-Length: 252

{"jsonrpc":"2.0","id":"26","method":"textDocument/documentHighlight","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":163,"character":11}}}
<<<
Content-Length: 664

{"id":"26","jsonrpc":"2.0","result":[{"kind":1,"range":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"kind":1,"range":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"kind":1,"range":{"end":{"character":14,"line":156},"start":{"character":8,"line":156}}},{"kind":1,"range":{"end":{"character":13,"line":163},"start":{"character":7,"line":163}}},{"kind":1,"range":{"end":{"character":14,"line":170},"start":{"character":8,"line":170}}},{"kind":1,"range":{"end":{"character":14,"line":176},"start":{"character":8,"line":176}}},{"kind":1,"range":{"end":{"character":14,"line":183},"start":{"character":8,"line":183}}}]}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"27","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":163,"character":11},"end":{"line":163,"character":11}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"27","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"28","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":163,"character":17}}}
<<<
Content-Length: 267

{"id":"28","jsonrpc":"2.0","result":{"contents":{"kind":"markdown","value":"### param `speed1`  \n\n---\nType: `int`  \nPassed as steep2  \n\n---\n```cpp\n// In motor\nint speed1\n```"},"range":{"end":{"character":22,"line":163},"start":{"character":16,"line":163}}}}
>>>
Content-Length: 252

{"jsonrpc":"2.0","id":"29","method":"textDocument/documentHighlight","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":163,"character":18}}}
<<<
Content-Length: 493

{"id":"29","jsonrpc":"2.0","result":[{"kind":1,"range":{"end":{"character":30,"line":151},"start":{"character":24,"line":151}}},{"kind":2,"range":{"end":{"character":22,"line":163},"start":{"character":16,"line":163}}},{"kind":2,"range":{"end":{"character":21,"line":170},"start":{"character":15,"line":170}}},{"kind":2,"range":{"end":{"character":24,"line":176},"start":{"character":18,"line":176}}},{"kind":2,"range":{"end":{"character":21,"line":183},"start":{"character":15,"line":183}}}]}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"30","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":163,"character":16},"end":{"line":163,"character":22}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"30","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 239

{"jsonrpc":"2.0","id":"31","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":86,"character":19}}}
<<<
Content-Length: 246

{"id":"31","jsonrpc":"2.0","result":{"contents":{"kind":"markdown","value":"### param `steep1`  \n\n---\nType: `int`  \n\n---\n```cpp\n// In motor1\nint steep1\n```"},"range":{"end":{"character":22,"line":86},"start":{"character":16,"line":86}}}}
>>>
Content-Length: 251

{"jsonrpc":"2.0","id":"32","method":"textDocument/documentHighlight","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":86,"character":20}}}
<<<
Content-Length: 216

{"id":"32","jsonrpc":"2.0","result":[{"kind":1,"range":{"end":{"character":22,"line":86},"start":{"character":16,"line":86}}},{"kind":2,"range":{"end":{"character":23,"line":88},"start":{"character":17,"line":88}}}]}
>>>
Content-Length: 313

{"jsonrpc":"2.0","id":"33","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":86,"character":16},"end":{"line":86,"character":22}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"33","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 239

{"jsonrpc":"2.0","id":"34","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":88,"character":22}}}
<<<
Content-Length: 263

{"id":"34","jsonrpc":"2.0","result":{"contents":{"kind":"markdown","value":"### param `steep1`  \n\n---\nType: `int`  \nPassed as val  \n\n---\n```cpp\n// In motor1\nint steep1\n```"},"range":{"end":{"character":23,"line":88},"start":{"character":17,"line":88}}}}
>>>
Content-Length: 313

{"jsonrpc":"2.0","id":"35","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":88,"character":25},"end":{"line":88,"character":25}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"35","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 251

{"jsonrpc":"2.0","id":"36","method":"textDocument/documentHighlight","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":88,"character":21}}}
<<<
Content-Length: 216

{"id":"36","jsonrpc":"2.0","result":[{"kind":1,"range":{"end":{"character":22,"line":86},"start":{"character":16,"line":86}}},{"kind":2,"range":{"end":{"character":23,"line":88},"start":{"character":17,"line":88}}}]}
>>>
Content-Length: 313

{"jsonrpc":"2.0","id":"37","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":88,"character":17},"end":{"line":88,"character":23}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"37","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"38","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":163,"character":15}}}
<<<
Content-Length: 339

{"id":"38","jsonrpc":"2.0","result":{"contents":{"kind":"markdown","value":"### function `motor1`  \n\n---\n→ `void`  \nParameters:  \n- `int steep1`\n- `int steep2`\n\nMotor 1 output definition  \n\n---\n```cpp\nvoid motor1(int steep1, int steep2)\n```"},"range":{"end":{"character":16,"line":163},"start":{"character":15,"line":163}}}}
>>>
Content-Length: 252

{"jsonrpc":"2.0","id":"39","method":"textDocument/documentHighlight","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":163,"character":16}}}
<<<
Content-Length: 493

{"id":"39","jsonrpc":"2.0","result":[{"kind":1,"range":{"end":{"character":30,"line":151},"start":{"character":24,"line":151}}},{"kind":2,"range":{"end":{"character":22,"line":163},"start":{"character":16,"line":163}}},{"kind":2,"range":{"end":{"character":21,"line":170},"start":{"character":15,"line":170}}},{"kind":2,"range":{"end":{"character":24,"line":176},"start":{"character":18,"line":176}}},{"kind":2,"range":{"end":{"character":21,"line":183},"start":{"character":15,"line":183}}}]}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"40","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":163,"character":16},"end":{"line":163,"character":16}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"40","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"41","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":163,"character":15}}}
<<<
Content-Length: 339

{"id":"41","jsonrpc":"2.0","result":{"contents":{"kind":"markdown","value":"### function `motor1`  \n\n---\n→ `void`  \nParameters:  \n- `int steep1`\n- `int steep2`\n\nMotor 1 output definition  \n\n---\n```cpp\nvoid motor1(int steep1, int steep2)\n```"},"range":{"end":{"character":16,"line":163},"start":{"character":15,"line":163}}}}
>>>
Content-Length: 252

{"jsonrpc":"2.0","id":"42","method":"textDocument/documentHighlight","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":163,"character":15}}}
<<<
Content-Length: 664

{"id":"42","jsonrpc":"2.0","result":[{"kind":1,"range":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"kind":1,"range":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"kind":1,"range":{"end":{"character":14,"line":156},"start":{"character":8,"line":156}}},{"kind":1,"range":{"end":{"character":13,"line":163},"start":{"character":7,"line":163}}},{"kind":1,"range":{"end":{"character":14,"line":170},"start":{"character":8,"line":170}}},{"kind":1,"range":{"end":{"character":14,"line":176},"start":{"character":8,"line":176}}},{"kind":1,"range":{"end":{"character":14,"line":183},"start":{"character":8,"line":183}}}]}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"43","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":163,"character":15},"end":{"line":163,"character":15}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"43","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"44","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":164,"character":20}}}
<<<
Content-Length: 267

{"id":"44","jsonrpc":"2.0","result":{"contents":{"kind":"markdown","value":"### param `speed2`  \n\n---\nType: `int`  \nPassed as steep2  \n\n---\n```cpp\n// In motor\nint speed2\n```"},"range":{"end":{"character":22,"line":164},"start":{"character":16,"line":164}}}}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"45","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":166,"character":14},"end":{"line":166,"character":14}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"45","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"46","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":163,"character":19}}}
<<<
Content-Length: 267

{"id":"46","jsonrpc":"2.0","result":{"contents":{"kind":"markdown","value":"### param `speed1`  \n\n---\nType: `int`  \nPassed as steep2  \n\n---\n```cpp\n// In motor\nint speed1\n```"},"range":{"end":{"character":22,"line":163},"start":{"character":16,"line":163}}}}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"47","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":164,"character":20}}}
<<<
Content-Length: 267

{"id":"47","jsonrpc":"2.0","result":{"contents":{"kind":"markdown","value":"### param `speed2`  \n\n---\nType: `int`  \nPassed as steep2  \n\n---\n```cpp\n// In motor\nint speed2\n```"},"range":{"end":{"character":22,"line":164},"start":{"character":16,"line":164}}}}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"48","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":163,"character":20}}}
<<<
Content-Length: 267

{"id":"48","jsonrpc":"2.0","result":{"contents":{"kind":"markdown","value":"### param `speed1`  \n\n---\nType: `int`  \nPassed as steep2  \n\n---\n```cpp\n// In motor\nint speed1\n```"},"range":{"end":{"character":22,"line":163},"start":{"character":16,"line":163}}}}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"49","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":163,"character":22}}}
<<<
Content-Length: 339

{"id":"49","jsonrpc":"2.0","result":{"contents":{"kind":"markdown","value":"### function `motor1`  \n\n---\n→ `void`  \nParameters:  \n- `int steep1`\n- `int steep2`\n\nMotor 1 output definition  \n\n---\n```cpp\nvoid motor1(int steep1, int steep2)\n```"},"range":{"end":{"character":22,"line":163},"start":{"character":16,"line":163}}}}
>>>
Content-Length: 252

{"jsonrpc":"2.0","id":"50","method":"textDocument/documentHighlight","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":163,"character":22}}}
<<<
Content-Length: 664

{"id":"50","jsonrpc":"2.0","result":[{"kind":1,"range":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"kind":1,"range":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"kind":1,"range":{"end":{"character":14,"line":156},"start":{"character":8,"line":156}}},{"kind":1,"range":{"end":{"character":13,"line":163},"start":{"character":7,"line":163}}},{"kind":1,"range":{"end":{"character":14,"line":170},"start":{"character":8,"line":170}}},{"kind":1,"range":{"end":{"character":14,"line":176},"start":{"character":8,"line":176}}},{"kind":1,"range":{"end":{"character":14,"line":183},"start":{"character":8,"line":183}}}]}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"51","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":163,"character":22},"end":{"line":163,"character":22}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"51","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 321

{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","version":2},"contentChanges":[{"range":{"start":{"line":163,"character":22},"end":{"line":163,"character":22}},"text":"，"}]}}Content-Length: 210

{"jsonrpc":"2.0","id":"52","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3893

{"id":"52","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":1,"line":191},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}Content-Length: 1230

{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"character_not_allowed_identifier","message":"Character <U+FF0C> not allowed in an identifier (fix available)","range":{"end":{"character":23,"line":163},"start":{"character":22,"line":163}},"relatedInformation":[],"severity":1,"source":"clang"},{"code":"undeclared_var_use_suggest","message":"Use of undeclared identifier 'speed1，'; did you mean 'speed1'? (fix available)","range":{"end":{"character":23,"line":163},"start":{"character":16,"line":163}},"relatedInformation":[{"location":{"range":{"end":{"character":30,"line":151},"start":{"character":24,"line":151}},"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"message":"'speed1' declared here"}],"severity":1,"source":"clang"},{"code":"readability-misleading-indentation","message":"Different indentation for 'if' and corresponding 'else'","range":{"end":{"character":8,"line":142},"start":{"character":4,"line":142}},"relatedInformation":[],"severity":2,"source":"clang-tidy"}],"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","version":2}}
>>>
Content-Length: 210

{"jsonrpc":"2.0","id":"53","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3893

{"id":"53","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":1,"line":191},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 273

{"jsonrpc":"2.0","id":"54","method":"textDocument/completion","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":163,"character":23},"context":{"triggerKind":1}}}
<<<
Content-Length: 70

{"id":"54","jsonrpc":"2.0","result":{"isIncomplete":false,"items":[]}}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"55","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":163,"character":23},"end":{"line":163,"character":23}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"55","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 318

{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","version":3},"contentChanges":[{"range":{"start":{"line":163,"character":22},"end":{"line":163,"character":23}},"text":""}]}}Content-Length: 210

{"jsonrpc":"2.0","id":"56","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3893

{"id":"56","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":1,"line":191},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}Content-Length: 466

{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"readability-misleading-indentation","message":"Different indentation for 'if' and corresponding 'else'","range":{"end":{"character":8,"line":142},"start":{"character":4,"line":142}},"relatedInformation":[],"severity":2,"source":"clang-tidy"}],"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","version":3}}
>>>
Content-Length: 210

{"jsonrpc":"2.0","id":"57","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3893

{"id":"57","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":1,"line":191},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 273

{"jsonrpc":"2.0","id":"58","method":"textDocument/completion","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":163,"character":22},"context":{"triggerKind":1}}}
<<<
Content-Length: 707

{"id":"58","jsonrpc":"2.0","result":{"isIncomplete":false,"items":[{"detail":"int","filterText":"speed1","insertText":"speed1","insertTextFormat":1,"kind":6,"label":" speed1","score":5.4612922668457031,"sortText":"3ed13d18speed1","textEdit":{"newText":"speed1","range":{"end":{"character":22,"line":163},"start":{"character":16,"line":163}}}},{"detail":"int","documentation":{"kind":"markdown","value":"Data variable definition"},"filterText":"MotSpeed1","insertText":"MotSpeed1","insertTextFormat":1,"kind":6,"label":" MotSpeed1","score":2.2671010494232178,"sortText":"401a4460MotSpeed1","textEdit":{"newText":"MotSpeed1","range":{"end":{"character":22,"line":163},"start":{"character":16,"line":163}}}}]}}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"59","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":163,"character":22},"end":{"line":163,"character":22}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"59","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 319

{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","version":4},"contentChanges":[{"range":{"start":{"line":163,"character":22},"end":{"line":163,"character":22}},"text":","}]}}Content-Length: 210

{"jsonrpc":"2.0","id":"60","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3893

{"id":"60","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":1,"line":191},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}Content-Length: 663

{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"expected_expression","message":"Expected expression","range":{"end":{"character":24,"line":163},"start":{"character":23,"line":163}},"relatedInformation":[],"severity":1,"source":"clang"},{"code":"readability-misleading-indentation","message":"Different indentation for 'if' and corresponding 'else'","range":{"end":{"character":8,"line":142},"start":{"character":4,"line":142}},"relatedInformation":[],"severity":2,"source":"clang-tidy"}],"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","version":4}}
>>>
Content-Length: 210

{"jsonrpc":"2.0","id":"61","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3893

{"id":"61","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":1,"line":191},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 319

{"jsonrpc":"2.0","id":"62","method":"textDocument/signatureHelp","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":163,"character":23},"context":{"triggerKind":2,"triggerCharacter":",","isRetrigger":false}}}
<<<
Content-Length: 94

{"id":"62","jsonrpc":"2.0","result":{"activeParameter":0,"activeSignature":0,"signatures":[]}}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"63","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":163,"character":23},"end":{"line":163,"character":23}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"63","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 319

{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","version":5},"contentChanges":[{"range":{"start":{"line":163,"character":23},"end":{"line":163,"character":23}},"text":"0"}]}}Content-Length: 210

{"jsonrpc":"2.0","id":"64","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3893

{"id":"64","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":1,"line":191},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}Content-Length: 987

{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"ovl_no_viable_function_in_call","message":"No matching function for call to 'motor1'","range":{"end":{"character":13,"line":163},"start":{"character":7,"line":163}},"relatedInformation":[{"location":{"range":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}},"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"message":"Candidate function not viable: requires 2 arguments, but 3 were provided"}],"severity":1,"source":"clang"},{"code":"readability-misleading-indentation","message":"Different indentation for 'if' and corresponding 'else'","range":{"end":{"character":8,"line":142},"start":{"character":4,"line":142}},"relatedInformation":[],"severity":2,"source":"clang-tidy"}],"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","version":5}}
>>>
Content-Length: 210

{"jsonrpc":"2.0","id":"65","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3893

{"id":"65","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":1,"line":191},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"66","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":163,"character":24},"end":{"line":163,"character":24}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"66","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"67","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":164,"character":22}}}
<<<
Content-Length: 339

{"id":"67","jsonrpc":"2.0","result":{"contents":{"kind":"markdown","value":"### function `motor2`  \n\n---\n→ `void`  \nParameters:  \n- `int steep1`\n- `int steep2`\n\nMotor 2 output definition  \n\n---\n```cpp\nvoid motor2(int steep1, int steep2)\n```"},"range":{"end":{"character":22,"line":164},"start":{"character":16,"line":164}}}}
>>>
Content-Length: 252

{"jsonrpc":"2.0","id":"68","method":"textDocument/documentHighlight","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":164,"character":22}}}
<<<
Content-Length: 664

{"id":"68","jsonrpc":"2.0","result":[{"kind":1,"range":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"kind":1,"range":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"kind":1,"range":{"end":{"character":14,"line":157},"start":{"character":8,"line":157}}},{"kind":1,"range":{"end":{"character":13,"line":164},"start":{"character":7,"line":164}}},{"kind":1,"range":{"end":{"character":14,"line":171},"start":{"character":8,"line":171}}},{"kind":1,"range":{"end":{"character":14,"line":177},"start":{"character":8,"line":177}}},{"kind":1,"range":{"end":{"character":14,"line":184},"start":{"character":8,"line":184}}}]}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"69","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":164,"character":22},"end":{"line":164,"character":22}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"69","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 193

{"jsonrpc":"2.0","method":"textDocument/didSave","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}Content-Length: 5577

{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","version":6},"contentChanges":[{"text":"#include \u003cArduino.h\u003e\n#line 1 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\n//2021.6.7\n//Define the direction of car movement\n#define  stop     0\n#define  forward  1\n#define  back     2\n#define  left     3\n#define  right    4\n\n//Definition of ultrasonic pin\n#define  Trig A4 \n#define  Echo A5\n\n//Data variable definition\nint MotSpeed1 = 0; \nint MotSpeed2 = 0;\nint Speed_adjustment = 120;\nint stop_bit = 0;\n\n//Program initialization\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup();\n#line 37 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid loop();\n#line 49 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nfloat GetDistance();\n#line 70 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor1(int steep1, int steep2);\n#line 77 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor2(int steep1, int steep2);\n#line 84 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid avoidance(int set_dis);\n#line 135 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor(int dir ,int speed1, int speed2);\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup()  \n{\n    Serial.begin(9600); \n\n    pinMode(5, OUTPUT);\n    pinMode(6, OUTPUT);\n    pinMode(9, OUTPUT);\n    pinMode(10, OUTPUT);\n\n    pinMode(Trig,OUTPUT);   \n    pinMode(Echo,INPUT); \n    // Define ultrasonic sensor pins\n    \n\n}\n\n//Principal function\nvoid loop()\n{ \n   avoidance(18);  //In brackets is the obstacle avoidance distance in cm\n}\n\n/*\nFunction: obtain ultrasonic sensor ranging data\nParameters: Trig, Echo\nParameter description: sensor connected to the motherboard pin port A4,A5\nTrig -------\u003e pin A4\nEcho -------\u003e pin A5\n*/\nfloat GetDistance()\n{\n    float distance;\n  \n\tdigitalWrite(Trig, LOW); \n\tdelayMicroseconds(2); \n\tdigitalWrite(Trig, HIGH); \n\tdelayMicroseconds(10);\n\tdigitalWrite(Trig, LOW);\n\n  distance = pulseIn(Echo, HIGH) / 58.00;\n     \n\treturn distance;  //Return distance\n}\n\n/*\n* Function: Obstacle avoidance\n* Parameter: set_dis sets the obstacle avoidance distance\n*/\n\n//Motor 1 output definition\nvoid motor1(int steep1, int steep2) \n{\n   analogWrite(5,steep1);\n   analogWrite(6,steep2); \n}\n\n//Motor 2 output definition\nvoid motor2(int steep1, int steep2)\n{\n   analogWrite(9,steep1);\n   analogWrite(10,steep2); \n}\n\n//Obstacle avoidance function\nvoid avoidance(int set_dis)\n{\n    int distance;\n    distance = GetDistance(); \n    Serial.println(distance);  //Print distance in serial port\n    if(distance \u003c 30)     //Judge that the distance is less than 40cm and start to decelerate\n    {\n\t  Speed_adjustment--;\n\t  //delay(5);     //Car deceleration speed\n\t  if(Speed_adjustment\u003c=120)Speed_adjustment=120;\n      MotSpeed1 = Speed_adjustment+20;  //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n\n   if(distance \u003e 30)  //Judge if the distance is more than 40cm and start to accelerate\n    {\n\t  Speed_adjustment++;\n\t  //delay(5);\n\t  if(Speed_adjustment\u003e=235)Speed_adjustment=235; //The maximum limit is 255\n      MotSpeed1 = Speed_adjustment+20; //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n     \n\tif(distance \u003c set_dis)  //Judge that the car is less than the obstacle avoidance distance and start to turn backward\n\t{\n\t\tdelay(10);\n\t\tdistance = GetDistance(); \n\t\tif(distance \u003c set_dis)\n\t\t{\n\t\t\tif(stop_bit==0)\n\t\t\t{\n\t\t\t\tmotor(stop,0,0);//stop\n\t\t\t\tdelay(300);\n\t\t\t\tstop_bit=1;\n\t\t\t}\n\t\t\tmotor(back,140,140); //Car back\n\t\t\tdelay(600);\n\t\t\tmotor(left,140,140); //The car turns left\n\t\t\tdelay(200);          \n\t\t\tSpeed_adjustment=120;\n\t\t}\n\t}\n    else\n    {\n        motor(forward,MotSpeed1,MotSpeed2);//If there is no less than the obstacle avoidance distance, move forward\n\t\t    stop_bit=0;\n    }\n  \n}\n\n//Motor direction function to determine the direction of the car\nvoid motor(int dir ,int speed1, int speed2)  \n{  \n    switch (dir)\n    {\n    case stop:\n        motor1(0, 0);\n        motor2(0, 0);\n       \n        break;\n\n    case forward:  //Go ahead\n       \n       motor1(0,speed1,0\n"}]}}
<<<
Content-Length: 111

{"id":1,"jsonrpc":"2.0","method":"window/workDoneProgress/create","params":{"token":"backgroundIndexProgress"}}
>>>
Content-Length: 38

{"jsonrpc":"2.0","id":1,"result":null}
<<<
Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"begin","percentage":0,"title":"indexing"}}}Content-Length: 141

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/1","percentage":0}}}Content-Length: 1298

{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"expected","message":"Expected ')'","range":{"end":{"character":0,"line":164},"start":{"character":0,"line":164}},"relatedInformation":[{"location":{"range":{"end":{"character":14,"line":163},"start":{"character":13,"line":163}},"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"message":"To match this '('"}],"severity":1,"source":"clang"},{"code":"expected","message":"Expected '}'","range":{"end":{"character":0,"line":164},"start":{"character":0,"line":164}},"relatedInformation":[{"location":{"range":{"end":{"character":5,"line":154},"start":{"character":4,"line":154}},"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"message":"To match this '{'"}],"severity":1,"source":"clang"},{"code":"readability-misleading-indentation","message":"Different indentation for 'if' and corresponding 'else'","range":{"end":{"character":8,"line":142},"start":{"character":4,"line":142}},"relatedInformation":[],"severity":2,"source":"clang-tidy"}],"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","version":6}}Content-Length: 141

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/1","percentage":0}}}Content-Length: 107

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"end"}}}
>>>
Content-Length: 210

{"jsonrpc":"2.0","id":"70","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3894

{"id":"70","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":24,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 210

{"jsonrpc":"2.0","id":"71","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3894

{"id":"71","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":24,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 319

{"jsonrpc":"2.0","id":"72","method":"textDocument/signatureHelp","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":164,"character":23},"context":{"triggerKind":2,"triggerCharacter":",","isRetrigger":false}}}
<<<
Content-Length: 94

{"id":"72","jsonrpc":"2.0","result":{"activeParameter":0,"activeSignature":0,"signatures":[]}}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"73","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":164,"character":23},"end":{"line":164,"character":23}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"73","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 210

{"jsonrpc":"2.0","id":"74","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3894

{"id":"74","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":24,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 210

{"jsonrpc":"2.0","id":"75","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3894

{"id":"75","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":24,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"76","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":164,"character":24},"end":{"line":164,"character":24}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"76","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 193

{"jsonrpc":"2.0","method":"textDocument/didSave","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}Content-Length: 5577

{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","version":7},"contentChanges":[{"text":"#include \u003cArduino.h\u003e\n#line 1 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\n//2021.6.7\n//Define the direction of car movement\n#define  stop     0\n#define  forward  1\n#define  back     2\n#define  left     3\n#define  right    4\n\n//Definition of ultrasonic pin\n#define  Trig A4 \n#define  Echo A5\n\n//Data variable definition\nint MotSpeed1 = 0; \nint MotSpeed2 = 0;\nint Speed_adjustment = 120;\nint stop_bit = 0;\n\n//Program initialization\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup();\n#line 37 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid loop();\n#line 49 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nfloat GetDistance();\n#line 70 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor1(int steep1, int steep2);\n#line 77 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor2(int steep1, int steep2);\n#line 84 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid avoidance(int set_dis);\n#line 135 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor(int dir ,int speed1, int speed2);\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup()  \n{\n    Serial.begin(9600); \n\n    pinMode(5, OUTPUT);\n    pinMode(6, OUTPUT);\n    pinMode(9, OUTPUT);\n    pinMode(10, OUTPUT);\n\n    pinMode(Trig,OUTPUT);   \n    pinMode(Echo,INPUT); \n    // Define ultrasonic sensor pins\n    \n\n}\n\n//Principal function\nvoid loop()\n{ \n   avoidance(18);  //In brackets is the obstacle avoidance distance in cm\n}\n\n/*\nFunction: obtain ultrasonic sensor ranging data\nParameters: Trig, Echo\nParameter description: sensor connected to the motherboard pin port A4,A5\nTrig -------\u003e pin A4\nEcho -------\u003e pin A5\n*/\nfloat GetDistance()\n{\n    float distance;\n  \n\tdigitalWrite(Trig, LOW); \n\tdelayMicroseconds(2); \n\tdigitalWrite(Trig, HIGH); \n\tdelayMicroseconds(10);\n\tdigitalWrite(Trig, LOW);\n\n  distance = pulseIn(Echo, HIGH) / 58.00;\n     \n\treturn distance;  //Return distance\n}\n\n/*\n* Function: Obstacle avoidance\n* Parameter: set_dis sets the obstacle avoidance distance\n*/\n\n//Motor 1 output definition\nvoid motor1(int steep1, int steep2) \n{\n   analogWrite(5,steep1);\n   analogWrite(6,steep2); \n}\n\n//Motor 2 output definition\nvoid motor2(int steep1, int steep2)\n{\n   analogWrite(9,steep1);\n   analogWrite(10,steep2); \n}\n\n//Obstacle avoidance function\nvoid avoidance(int set_dis)\n{\n    int distance;\n    distance = GetDistance(); \n    Serial.println(distance);  //Print distance in serial port\n    if(distance \u003c 30)     //Judge that the distance is less than 40cm and start to decelerate\n    {\n\t  Speed_adjustment--;\n\t  //delay(5);     //Car deceleration speed\n\t  if(Speed_adjustment\u003c=120)Speed_adjustment=120;\n      MotSpeed1 = Speed_adjustment+20;  //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n\n   if(distance \u003e 30)  //Judge if the distance is more than 40cm and start to accelerate\n    {\n\t  Speed_adjustment++;\n\t  //delay(5);\n\t  if(Speed_adjustment\u003e=235)Speed_adjustment=235; //The maximum limit is 255\n      MotSpeed1 = Speed_adjustment+20; //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n     \n\tif(distance \u003c set_dis)  //Judge that the car is less than the obstacle avoidance distance and start to turn backward\n\t{\n\t\tdelay(10);\n\t\tdistance = GetDistance(); \n\t\tif(distance \u003c set_dis)\n\t\t{\n\t\t\tif(stop_bit==0)\n\t\t\t{\n\t\t\t\tmotor(stop,0,0);//stop\n\t\t\t\tdelay(300);\n\t\t\t\tstop_bit=1;\n\t\t\t}\n\t\t\tmotor(back,140,140); //Car back\n\t\t\tdelay(600);\n\t\t\tmotor(left,140,140); //The car turns left\n\t\t\tdelay(200);          \n\t\t\tSpeed_adjustment=120;\n\t\t}\n\t}\n    else\n    {\n        motor(forward,MotSpeed1,MotSpeed2);//If there is no less than the obstacle avoidance distance, move forward\n\t\t    stop_bit=0;\n    }\n  \n}\n\n//Motor direction function to determine the direction of the car\nvoid motor(int dir ,int speed1, int speed2)  \n{  \n    switch (dir)\n    {\n    case stop:\n        motor1(0, 0);\n        motor2(0, 0);\n       \n        break;\n\n    case forward:  //Go ahead\n       \n       motor1(0,speed1,0\n"}]}}
<<<
Content-Length: 111

{"id":2,"jsonrpc":"2.0","method":"window/workDoneProgress/create","params":{"token":"backgroundIndexProgress"}}
>>>
Content-Length: 38

{"jsonrpc":"2.0","id":2,"result":null}
<<<
Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"begin","percentage":0,"title":"indexing"}}}Content-Length: 141

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/1","percentage":0}}}Content-Length: 141

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/1","percentage":0}}}Content-Length: 107

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"end"}}}
>>>
Content-Length: 252

{"jsonrpc":"2.0","id":"77","method":"textDocument/documentHighlight","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":163,"character":16}}}
<<<
Content-Length: 39

{"id":"77","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"78","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":163,"character":16},"end":{"line":163,"character":16}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"78","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"79","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":163,"character":16}}}
<<<
Content-Length: 41

{"id":"79","jsonrpc":"2.0","result":null}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"80","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":163,"character":15}}}
<<<
Content-Length: 41

{"id":"80","jsonrpc":"2.0","result":null}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"81","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":163,"character":14},"end":{"line":163,"character":16}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"81","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"82","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":163,"character":14}}}
<<<
Content-Length: 41

{"id":"82","jsonrpc":"2.0","result":null}
>>>
Content-Length: 318

{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","version":8},"contentChanges":[{"range":{"start":{"line":163,"character":14},"end":{"line":163,"character":16}},"text":""}]}}Content-Length: 210

{"jsonrpc":"2.0","id":"83","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3894

{"id":"83","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}Content-Length: 1298

{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"expected","message":"Expected ')'","range":{"end":{"character":0,"line":164},"start":{"character":0,"line":164}},"relatedInformation":[{"location":{"range":{"end":{"character":14,"line":163},"start":{"character":13,"line":163}},"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"message":"To match this '('"}],"severity":1,"source":"clang"},{"code":"expected","message":"Expected '}'","range":{"end":{"character":0,"line":164},"start":{"character":0,"line":164}},"relatedInformation":[{"location":{"range":{"end":{"character":5,"line":154},"start":{"character":4,"line":154}},"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"message":"To match this '{'"}],"severity":1,"source":"clang"},{"code":"readability-misleading-indentation","message":"Different indentation for 'if' and corresponding 'else'","range":{"end":{"character":8,"line":142},"start":{"character":4,"line":142}},"relatedInformation":[],"severity":2,"source":"clang-tidy"}],"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","version":8}}
>>>
Content-Length: 210

{"jsonrpc":"2.0","id":"84","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3894

{"id":"84","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"85","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":163,"character":14},"end":{"line":163,"character":14}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"85","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"86","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":164,"character":27}}}
<<<
Content-Length: 41

{"id":"86","jsonrpc":"2.0","result":null}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"87","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":164,"character":24}}}
<<<
Content-Length: 41

{"id":"87","jsonrpc":"2.0","result":null}
>>>
Content-Length: 193

{"jsonrpc":"2.0","method":"textDocument/didSave","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}Content-Length: 5575

{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","version":9},"contentChanges":[{"text":"#include \u003cArduino.h\u003e\n#line 1 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\n//2021.6.7\n//Define the direction of car movement\n#define  stop     0\n#define  forward  1\n#define  back     2\n#define  left     3\n#define  right    4\n\n//Definition of ultrasonic pin\n#define  Trig A4 \n#define  Echo A5\n\n//Data variable definition\nint MotSpeed1 = 0; \nint MotSpeed2 = 0;\nint Speed_adjustment = 120;\nint stop_bit = 0;\n\n//Program initialization\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup();\n#line 37 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid loop();\n#line 49 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nfloat GetDistance();\n#line 70 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor1(int steep1, int steep2);\n#line 77 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor2(int steep1, int steep2);\n#line 84 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid avoidance(int set_dis);\n#line 135 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor(int dir ,int speed1, int speed2);\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup()  \n{\n    Serial.begin(9600); \n\n    pinMode(5, OUTPUT);\n    pinMode(6, OUTPUT);\n    pinMode(9, OUTPUT);\n    pinMode(10, OUTPUT);\n\n    pinMode(Trig,OUTPUT);   \n    pinMode(Echo,INPUT); \n    // Define ultrasonic sensor pins\n    \n\n}\n\n//Principal function\nvoid loop()\n{ \n   avoidance(18);  //In brackets is the obstacle avoidance distance in cm\n}\n\n/*\nFunction: obtain ultrasonic sensor ranging data\nParameters: Trig, Echo\nParameter description: sensor connected to the motherboard pin port A4,A5\nTrig -------\u003e pin A4\nEcho -------\u003e pin A5\n*/\nfloat GetDistance()\n{\n    float distance;\n  \n\tdigitalWrite(Trig, LOW); \n\tdelayMicroseconds(2); \n\tdigitalWrite(Trig, HIGH); \n\tdelayMicroseconds(10);\n\tdigitalWrite(Trig, LOW);\n\n  distance = pulseIn(Echo, HIGH) / 58.00;\n     \n\treturn distance;  //Return distance\n}\n\n/*\n* Function: Obstacle avoidance\n* Parameter: set_dis sets the obstacle avoidance distance\n*/\n\n//Motor 1 output definition\nvoid motor1(int steep1, int steep2) \n{\n   analogWrite(5,steep1);\n   analogWrite(6,steep2); \n}\n\n//Motor 2 output definition\nvoid motor2(int steep1, int steep2)\n{\n   analogWrite(9,steep1);\n   analogWrite(10,steep2); \n}\n\n//Obstacle avoidance function\nvoid avoidance(int set_dis)\n{\n    int distance;\n    distance = GetDistance(); \n    Serial.println(distance);  //Print distance in serial port\n    if(distance \u003c 30)     //Judge that the distance is less than 40cm and start to decelerate\n    {\n\t  Speed_adjustment--;\n\t  //delay(5);     //Car deceleration speed\n\t  if(Speed_adjustment\u003c=120)Speed_adjustment=120;\n      MotSpeed1 = Speed_adjustment+20;  //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n\n   if(distance \u003e 30)  //Judge if the distance is more than 40cm and start to accelerate\n    {\n\t  Speed_adjustment++;\n\t  //delay(5);\n\t  if(Speed_adjustment\u003e=235)Speed_adjustment=235; //The maximum limit is 255\n      MotSpeed1 = Speed_adjustment+20; //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n     \n\tif(distance \u003c set_dis)  //Judge that the car is less than the obstacle avoidance distance and start to turn backward\n\t{\n\t\tdelay(10);\n\t\tdistance = GetDistance(); \n\t\tif(distance \u003c set_dis)\n\t\t{\n\t\t\tif(stop_bit==0)\n\t\t\t{\n\t\t\t\tmotor(stop,0,0);//stop\n\t\t\t\tdelay(300);\n\t\t\t\tstop_bit=1;\n\t\t\t}\n\t\t\tmotor(back,140,140); //Car back\n\t\t\tdelay(600);\n\t\t\tmotor(left,140,140); //The car turns left\n\t\t\tdelay(200);          \n\t\t\tSpeed_adjustment=120;\n\t\t}\n\t}\n    else\n    {\n        motor(forward,MotSpeed1,MotSpeed2);//If there is no less than the obstacle avoidance distance, move forward\n\t\t    stop_bit=0;\n    }\n  \n}\n\n//Motor direction function to determine the direction of the car\nvoid motor(int dir ,int speed1, int speed2)  \n{  \n    switch (dir)\n    {\n    case stop:\n        motor1(0, 0);\n        motor2(0, 0);\n       \n        break;\n\n    case forward:  //Go ahead\n       \n       motor1(speed1,0\n"}]}}Content-Length: 252

{"jsonrpc":"2.0","id":"88","method":"textDocument/documentHighlight","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":164,"character":24}}}
<<<
Content-Length: 39

{"id":"88","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"89","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":164,"character":24},"end":{"line":164,"character":24}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"89","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 210

{"jsonrpc":"2.0","id":"90","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3894

{"id":"90","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 210

{"jsonrpc":"2.0","id":"91","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3894

{"id":"91","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"92","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":164,"character":23},"end":{"line":164,"character":23}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"92","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 210

{"jsonrpc":"2.0","id":"93","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3894

{"id":"93","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 210

{"jsonrpc":"2.0","id":"94","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3894

{"id":"94","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"95","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":164,"character":24},"end":{"line":164,"character":24}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"95","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"96","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":164,"character":16}}}
<<<
Content-Length: 41

{"id":"96","jsonrpc":"2.0","result":null}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"97","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":164,"character":16}}}
<<<
Content-Length: 41

{"id":"97","jsonrpc":"2.0","result":null}
>>>
Content-Length: 252

{"jsonrpc":"2.0","id":"98","method":"textDocument/documentHighlight","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":164,"character":16}}}
<<<
Content-Length: 39

{"id":"98","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"99","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":164,"character":14},"end":{"line":164,"character":16}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"99","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 241

{"jsonrpc":"2.0","id":"100","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":164,"character":13}}}
<<<
Content-Length: 42

{"id":"100","jsonrpc":"2.0","result":null}
>>>
Content-Length: 211

{"jsonrpc":"2.0","id":"101","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3895

{"id":"101","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 211

{"jsonrpc":"2.0","id":"102","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3895

{"id":"102","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 316

{"jsonrpc":"2.0","id":"103","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":164,"character":14},"end":{"line":164,"character":14}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 40

{"id":"103","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 193

{"jsonrpc":"2.0","method":"textDocument/didSave","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}Content-Length: 5576

{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","version":10},"contentChanges":[{"text":"#include \u003cArduino.h\u003e\n#line 1 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\n//2021.6.7\n//Define the direction of car movement\n#define  stop     0\n#define  forward  1\n#define  back     2\n#define  left     3\n#define  right    4\n\n//Definition of ultrasonic pin\n#define  Trig A4 \n#define  Echo A5\n\n//Data variable definition\nint MotSpeed1 = 0; \nint MotSpeed2 = 0;\nint Speed_adjustment = 120;\nint stop_bit = 0;\n\n//Program initialization\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup();\n#line 37 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid loop();\n#line 49 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nfloat GetDistance();\n#line 70 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor1(int steep1, int steep2);\n#line 77 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor2(int steep1, int steep2);\n#line 84 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid avoidance(int set_dis);\n#line 135 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor(int dir ,int speed1, int speed2);\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup()  \n{\n    Serial.begin(9600); \n\n    pinMode(5, OUTPUT);\n    pinMode(6, OUTPUT);\n    pinMode(9, OUTPUT);\n    pinMode(10, OUTPUT);\n\n    pinMode(Trig,OUTPUT);   \n    pinMode(Echo,INPUT); \n    // Define ultrasonic sensor pins\n    \n\n}\n\n//Principal function\nvoid loop()\n{ \n   avoidance(18);  //In brackets is the obstacle avoidance distance in cm\n}\n\n/*\nFunction: obtain ultrasonic sensor ranging data\nParameters: Trig, Echo\nParameter description: sensor connected to the motherboard pin port A4,A5\nTrig -------\u003e pin A4\nEcho -------\u003e pin A5\n*/\nfloat GetDistance()\n{\n    float distance;\n  \n\tdigitalWrite(Trig, LOW); \n\tdelayMicroseconds(2); \n\tdigitalWrite(Trig, HIGH); \n\tdelayMicroseconds(10);\n\tdigitalWrite(Trig, LOW);\n\n  distance = pulseIn(Echo, HIGH) / 58.00;\n     \n\treturn distance;  //Return distance\n}\n\n/*\n* Function: Obstacle avoidance\n* Parameter: set_dis sets the obstacle avoidance distance\n*/\n\n//Motor 1 output definition\nvoid motor1(int steep1, int steep2) \n{\n   analogWrite(5,steep1);\n   analogWrite(6,steep2); \n}\n\n//Motor 2 output definition\nvoid motor2(int steep1, int steep2)\n{\n   analogWrite(9,steep1);\n   analogWrite(10,steep2); \n}\n\n//Obstacle avoidance function\nvoid avoidance(int set_dis)\n{\n    int distance;\n    distance = GetDistance(); \n    Serial.println(distance);  //Print distance in serial port\n    if(distance \u003c 30)     //Judge that the distance is less than 40cm and start to decelerate\n    {\n\t  Speed_adjustment--;\n\t  //delay(5);     //Car deceleration speed\n\t  if(Speed_adjustment\u003c=120)Speed_adjustment=120;\n      MotSpeed1 = Speed_adjustment+20;  //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n\n   if(distance \u003e 30)  //Judge if the distance is more than 40cm and start to accelerate\n    {\n\t  Speed_adjustment++;\n\t  //delay(5);\n\t  if(Speed_adjustment\u003e=235)Speed_adjustment=235; //The maximum limit is 255\n      MotSpeed1 = Speed_adjustment+20; //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n     \n\tif(distance \u003c set_dis)  //Judge that the car is less than the obstacle avoidance distance and start to turn backward\n\t{\n\t\tdelay(10);\n\t\tdistance = GetDistance(); \n\t\tif(distance \u003c set_dis)\n\t\t{\n\t\t\tif(stop_bit==0)\n\t\t\t{\n\t\t\t\tmotor(stop,0,0);//stop\n\t\t\t\tdelay(300);\n\t\t\t\tstop_bit=1;\n\t\t\t}\n\t\t\tmotor(back,140,140); //Car back\n\t\t\tdelay(600);\n\t\t\tmotor(left,140,140); //The car turns left\n\t\t\tdelay(200);          \n\t\t\tSpeed_adjustment=120;\n\t\t}\n\t}\n    else\n    {\n        motor(forward,MotSpeed1,MotSpeed2);//If there is no less than the obstacle avoidance distance, move forward\n\t\t    stop_bit=0;\n    }\n  \n}\n\n//Motor direction function to determine the direction of the car\nvoid motor(int dir ,int speed1, int speed2)  \n{  \n    switch (dir)\n    {\n    case stop:\n        motor1(0, 0);\n        motor2(0, 0);\n       \n        break;\n\n    case forward:  //Go ahead\n       \n       motor1(speed1,0\n"}]}}
<<<
Content-Length: 111

{"id":3,"jsonrpc":"2.0","method":"window/workDoneProgress/create","params":{"token":"backgroundIndexProgress"}}
>>>
Content-Length: 38

{"jsonrpc":"2.0","id":3,"result":null}
<<<
Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"begin","percentage":0,"title":"indexing"}}}Content-Length: 141

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/1","percentage":0}}}Content-Length: 141

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/1","percentage":0}}}Content-Length: 107

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"end"}}}
>>>
Content-Length: 211

{"jsonrpc":"2.0","id":"104","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3895

{"id":"104","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 211

{"jsonrpc":"2.0","id":"105","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3895

{"id":"105","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 211

{"jsonrpc":"2.0","id":"106","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3895

{"id":"106","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 211

{"jsonrpc":"2.0","id":"107","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3895

{"id":"107","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 211

{"jsonrpc":"2.0","id":"108","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3895

{"id":"108","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 211

{"jsonrpc":"2.0","id":"109","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3895

{"id":"109","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 211

{"jsonrpc":"2.0","id":"110","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3895

{"id":"110","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 211

{"jsonrpc":"2.0","id":"111","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3895

{"id":"111","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 211

{"jsonrpc":"2.0","id":"112","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3895

{"id":"112","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 211

{"jsonrpc":"2.0","id":"113","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3895

{"id":"113","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 211

{"jsonrpc":"2.0","id":"114","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3895

{"id":"114","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 211

{"jsonrpc":"2.0","id":"115","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3895

{"id":"115","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 211

{"jsonrpc":"2.0","id":"116","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3895

{"id":"116","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 211

{"jsonrpc":"2.0","id":"117","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3895

{"id":"117","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 211

{"jsonrpc":"2.0","id":"118","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3895

{"id":"118","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 211

{"jsonrpc":"2.0","id":"119","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3895

{"id":"119","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":22,"line":163},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 193

{"jsonrpc":"2.0","method":"textDocument/didSave","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}Content-Length: 5576

{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","version":11},"contentChanges":[{"text":"#include \u003cArduino.h\u003e\n#line 1 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\n//2021.6.7\n//Define the direction of car movement\n#define  stop     0\n#define  forward  1\n#define  back     2\n#define  left     3\n#define  right    4\n\n//Definition of ultrasonic pin\n#define  Trig A4 \n#define  Echo A5\n\n//Data variable definition\nint MotSpeed1 = 0; \nint MotSpeed2 = 0;\nint Speed_adjustment = 120;\nint stop_bit = 0;\n\n//Program initialization\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup();\n#line 37 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid loop();\n#line 49 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nfloat GetDistance();\n#line 70 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor1(int steep1, int steep2);\n#line 77 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor2(int steep1, int steep2);\n#line 84 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid avoidance(int set_dis);\n#line 135 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor(int dir ,int speed1, int speed2);\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup()  \n{\n    Serial.begin(9600); \n\n    pinMode(5, OUTPUT);\n    pinMode(6, OUTPUT);\n    pinMode(9, OUTPUT);\n    pinMode(10, OUTPUT);\n\n    pinMode(Trig,OUTPUT);   \n    pinMode(Echo,INPUT); \n    // Define ultrasonic sensor pins\n    \n\n}\n\n//Principal function\nvoid loop()\n{ \n   avoidance(18);  //In brackets is the obstacle avoidance distance in cm\n}\n\n/*\nFunction: obtain ultrasonic sensor ranging data\nParameters: Trig, Echo\nParameter description: sensor connected to the motherboard pin port A4,A5\nTrig -------\u003e pin A4\nEcho -------\u003e pin A5\n*/\nfloat GetDistance()\n{\n    float distance;\n  \n\tdigitalWrite(Trig, LOW); \n\tdelayMicroseconds(2); \n\tdigitalWrite(Trig, HIGH); \n\tdelayMicroseconds(10);\n\tdigitalWrite(Trig, LOW);\n\n  distance = pulseIn(Echo, HIGH) / 58.00;\n     \n\treturn distance;  //Return distance\n}\n\n/*\n* Function: Obstacle avoidance\n* Parameter: set_dis sets the obstacle avoidance distance\n*/\n\n//Motor 1 output definition\nvoid motor1(int steep1, int steep2) \n{\n   analogWrite(5,steep1);\n   analogWrite(6,steep2); \n}\n\n//Motor 2 output definition\nvoid motor2(int steep1, int steep2)\n{\n   analogWrite(9,steep1);\n   analogWrite(10,steep2); \n}\n\n//Obstacle avoidance function\nvoid avoidance(int set_dis)\n{\n    int distance;\n    distance = GetDistance(); \n    Serial.println(distance);  //Print distance in serial port\n    if(distance \u003c 30)     //Judge that the distance is less than 40cm and start to decelerate\n    {\n\t  Speed_adjustment--;\n\t  //delay(5);     //Car deceleration speed\n\t  if(Speed_adjustment\u003c=120)Speed_adjustment=120;\n      MotSpeed1 = Speed_adjustment+20;  //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n\n   if(distance \u003e 30)  //Judge if the distance is more than 40cm and start to accelerate\n    {\n\t  Speed_adjustment++;\n\t  //delay(5);\n\t  if(Speed_adjustment\u003e=235)Speed_adjustment=235; //The maximum limit is 255\n      MotSpeed1 = Speed_adjustment+20; //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n     \n\tif(distance \u003c set_dis)  //Judge that the car is less than the obstacle avoidance distance and start to turn backward\n\t{\n\t\tdelay(10);\n\t\tdistance = GetDistance(); \n\t\tif(distance \u003c set_dis)\n\t\t{\n\t\t\tif(stop_bit==0)\n\t\t\t{\n\t\t\t\tmotor(stop,0,0);//stop\n\t\t\t\tdelay(300);\n\t\t\t\tstop_bit=1;\n\t\t\t}\n\t\t\tmotor(back,140,140); //Car back\n\t\t\tdelay(600);\n\t\t\tmotor(left,140,140); //The car turns left\n\t\t\tdelay(200);          \n\t\t\tSpeed_adjustment=120;\n\t\t}\n\t}\n    else\n    {\n        motor(forward,MotSpeed1,MotSpeed2);//If there is no less than the obstacle avoidance distance, move forward\n\t\t    stop_bit=0;\n    }\n  \n}\n\n//Motor direction function to determine the direction of the car\nvoid motor(int dir ,int speed1, int speed2)  \n{  \n    switch (dir)\n    {\n    case stop:\n        motor1(0, 0);\n        motor2(0, 0);\n       \n        break;\n\n    case forward:  //Go ahead\n       \n       motor1(speed1,0\n"}]}}
<<<
Content-Length: 111

{"id":4,"jsonrpc":"2.0","method":"window/workDoneProgress/create","params":{"token":"backgroundIndexProgress"}}
>>>
Content-Length: 38

{"jsonrpc":"2.0","id":4,"result":null}
<<<
Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"begin","percentage":0,"title":"indexing"}}}Content-Length: 141

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/1","percentage":0}}}Content-Length: 141

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/1","percentage":0}}}Content-Length: 107

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"end"}}}
>>>
Content-Length: 193

{"jsonrpc":"2.0","method":"textDocument/didSave","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}Content-Length: 5576

{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","version":12},"contentChanges":[{"text":"#include \u003cArduino.h\u003e\n#line 1 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\n//2021.6.7\n//Define the direction of car movement\n#define  stop     0\n#define  forward  1\n#define  back     2\n#define  left     3\n#define  right    4\n\n//Definition of ultrasonic pin\n#define  Trig A4 \n#define  Echo A5\n\n//Data variable definition\nint MotSpeed1 = 0; \nint MotSpeed2 = 0;\nint Speed_adjustment = 120;\nint stop_bit = 0;\n\n//Program initialization\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup();\n#line 37 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid loop();\n#line 49 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nfloat GetDistance();\n#line 70 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor1(int steep1, int steep2);\n#line 77 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor2(int steep1, int steep2);\n#line 84 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid avoidance(int set_dis);\n#line 135 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor(int dir ,int speed1, int speed2);\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup()  \n{\n    Serial.begin(9600); \n\n    pinMode(5, OUTPUT);\n    pinMode(6, OUTPUT);\n    pinMode(9, OUTPUT);\n    pinMode(10, OUTPUT);\n\n    pinMode(Trig,OUTPUT);   \n    pinMode(Echo,INPUT); \n    // Define ultrasonic sensor pins\n    \n\n}\n\n//Principal function\nvoid loop()\n{ \n   avoidance(18);  //In brackets is the obstacle avoidance distance in cm\n}\n\n/*\nFunction: obtain ultrasonic sensor ranging data\nParameters: Trig, Echo\nParameter description: sensor connected to the motherboard pin port A4,A5\nTrig -------\u003e pin A4\nEcho -------\u003e pin A5\n*/\nfloat GetDistance()\n{\n    float distance;\n  \n\tdigitalWrite(Trig, LOW); \n\tdelayMicroseconds(2); \n\tdigitalWrite(Trig, HIGH); \n\tdelayMicroseconds(10);\n\tdigitalWrite(Trig, LOW);\n\n  distance = pulseIn(Echo, HIGH) / 58.00;\n     \n\treturn distance;  //Return distance\n}\n\n/*\n* Function: Obstacle avoidance\n* Parameter: set_dis sets the obstacle avoidance distance\n*/\n\n//Motor 1 output definition\nvoid motor1(int steep1, int steep2) \n{\n   analogWrite(5,steep1);\n   analogWrite(6,steep2); \n}\n\n//Motor 2 output definition\nvoid motor2(int steep1, int steep2)\n{\n   analogWrite(9,steep1);\n   analogWrite(10,steep2); \n}\n\n//Obstacle avoidance function\nvoid avoidance(int set_dis)\n{\n    int distance;\n    distance = GetDistance(); \n    Serial.println(distance);  //Print distance in serial port\n    if(distance \u003c 30)     //Judge that the distance is less than 40cm and start to decelerate\n    {\n\t  Speed_adjustment--;\n\t  //delay(5);     //Car deceleration speed\n\t  if(Speed_adjustment\u003c=120)Speed_adjustment=120;\n      MotSpeed1 = Speed_adjustment+20;  //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n\n   if(distance \u003e 30)  //Judge if the distance is more than 40cm and start to accelerate\n    {\n\t  Speed_adjustment++;\n\t  //delay(5);\n\t  if(Speed_adjustment\u003e=235)Speed_adjustment=235; //The maximum limit is 255\n      MotSpeed1 = Speed_adjustment+20; //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n     \n\tif(distance \u003c set_dis)  //Judge that the car is less than the obstacle avoidance distance and start to turn backward\n\t{\n\t\tdelay(10);\n\t\tdistance = GetDistance(); \n\t\tif(distance \u003c set_dis)\n\t\t{\n\t\t\tif(stop_bit==0)\n\t\t\t{\n\t\t\t\tmotor(stop,0,0);//stop\n\t\t\t\tdelay(300);\n\t\t\t\tstop_bit=1;\n\t\t\t}\n\t\t\tmotor(back,140,140); //Car back\n\t\t\tdelay(600);\n\t\t\tmotor(left,140,140); //The car turns left\n\t\t\tdelay(200);          \n\t\t\tSpeed_adjustment=120;\n\t\t}\n\t}\n    else\n    {\n        motor(forward,MotSpeed1,MotSpeed2);//If there is no less than the obstacle avoidance distance, move forward\n\t\t    stop_bit=0;\n    }\n  \n}\n\n//Motor direction function to determine the direction of the car\nvoid motor(int dir ,int speed1, int speed2)  \n{  \n    switch (dir)\n    {\n    case stop:\n        motor1(0, 0);\n        motor2(0, 0);\n       \n        break;\n\n    case forward:  //Go ahead\n       \n       motor1(speed1,0\n"}]}}
<<<
Content-Length: 111

{"id":5,"jsonrpc":"2.0","method":"window/workDoneProgress/create","params":{"token":"backgroundIndexProgress"}}
>>>
Content-Length: 38

{"jsonrpc":"2.0","id":5,"result":null}
<<<
Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"begin","percentage":0,"title":"indexing"}}}Content-Length: 141

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/1","percentage":0}}}Content-Length: 141

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/1","percentage":0}}}Content-Length: 107

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"end"}}}
>>>
Content-Length: 241

{"jsonrpc":"2.0","id":"120","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":151,"character":40}}}
<<<
Content-Length: 248

{"id":"120","jsonrpc":"2.0","result":{"contents":{"kind":"markdown","value":"### param `speed2`  \n\n---\nType: `int`  \n\n---\n```cpp\n// In motor\nint speed2\n```"},"range":{"end":{"character":42,"line":151},"start":{"character":36,"line":151}}}}
>>>
Content-Length: 241

{"jsonrpc":"2.0","id":"121","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":150,"character":26}}}
<<<
Content-Length: 42

{"id":"121","jsonrpc":"2.0","result":null}
>>>
Content-Length: 241

{"jsonrpc":"2.0","id":"122","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":103,"character":26}}}
<<<
Content-Length: 442

{"id":"122","jsonrpc":"2.0","result":{"contents":{"kind":"markdown","value":"### function `GetDistance`  \n\n---\n→ `float`  \nFunction: obtain ultrasonic sensor ranging data Parameters: Trig, Echo Parameter description: sensor connected to the motherboard pin port A4,A5 Trig -------> pin A4 Echo -------> pin A5  \n\n---\n```cpp\nfloat GetDistance()\n```"},"range":{"end":{"character":26,"line":103},"start":{"character":15,"line":103}}}}
>>>
Content-Length: 193

{"jsonrpc":"2.0","method":"textDocument/didSave","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}Content-Length: 5576

{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","version":13},"contentChanges":[{"text":"#include \u003cArduino.h\u003e\n#line 1 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\n//2021.6.7\n//Define the direction of car movement\n#define  stop     0\n#define  forward  1\n#define  back     2\n#define  left     3\n#define  right    4\n\n//Definition of ultrasonic pin\n#define  Trig A4 \n#define  Echo A5\n\n//Data variable definition\nint MotSpeed1 = 0; \nint MotSpeed2 = 0;\nint Speed_adjustment = 120;\nint stop_bit = 0;\n\n//Program initialization\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup();\n#line 37 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid loop();\n#line 49 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nfloat GetDistance();\n#line 70 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor1(int steep1, int steep2);\n#line 77 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor2(int steep1, int steep2);\n#line 84 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid avoidance(int set_dis);\n#line 135 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor(int dir ,int speed1, int speed2);\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup()  \n{\n    Serial.begin(9600); \n\n    pinMode(5, OUTPUT);\n    pinMode(6, OUTPUT);\n    pinMode(9, OUTPUT);\n    pinMode(10, OUTPUT);\n\n    pinMode(Trig,OUTPUT);   \n    pinMode(Echo,INPUT); \n    // Define ultrasonic sensor pins\n    \n\n}\n\n//Principal function\nvoid loop()\n{ \n   avoidance(18);  //In brackets is the obstacle avoidance distance in cm\n}\n\n/*\nFunction: obtain ultrasonic sensor ranging data\nParameters: Trig, Echo\nParameter description: sensor connected to the motherboard pin port A4,A5\nTrig -------\u003e pin A4\nEcho -------\u003e pin A5\n*/\nfloat GetDistance()\n{\n    float distance;\n  \n\tdigitalWrite(Trig, LOW); \n\tdelayMicroseconds(2); \n\tdigitalWrite(Trig, HIGH); \n\tdelayMicroseconds(10);\n\tdigitalWrite(Trig, LOW);\n\n  distance = pulseIn(Echo, HIGH) / 58.00;\n     \n\treturn distance;  //Return distance\n}\n\n/*\n* Function: Obstacle avoidance\n* Parameter: set_dis sets the obstacle avoidance distance\n*/\n\n//Motor 1 output definition\nvoid motor1(int steep1, int steep2) \n{\n   analogWrite(5,steep1);\n   analogWrite(6,steep2); \n}\n\n//Motor 2 output definition\nvoid motor2(int steep1, int steep2)\n{\n   analogWrite(9,steep1);\n   analogWrite(10,steep2); \n}\n\n//Obstacle avoidance function\nvoid avoidance(int set_dis)\n{\n    int distance;\n    distance = GetDistance(); \n    Serial.println(distance);  //Print distance in serial port\n    if(distance \u003c 30)     //Judge that the distance is less than 40cm and start to decelerate\n    {\n\t  Speed_adjustment--;\n\t  //delay(5);     //Car deceleration speed\n\t  if(Speed_adjustment\u003c=120)Speed_adjustment=120;\n      MotSpeed1 = Speed_adjustment+20;  //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n\n   if(distance \u003e 30)  //Judge if the distance is more than 40cm and start to accelerate\n    {\n\t  Speed_adjustment++;\n\t  //delay(5);\n\t  if(Speed_adjustment\u003e=235)Speed_adjustment=235; //The maximum limit is 255\n      MotSpeed1 = Speed_adjustment+20; //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n     \n\tif(distance \u003c set_dis)  //Judge that the car is less than the obstacle avoidance distance and start to turn backward\n\t{\n\t\tdelay(10);\n\t\tdistance = GetDistance(); \n\t\tif(distance \u003c set_dis)\n\t\t{\n\t\t\tif(stop_bit==0)\n\t\t\t{\n\t\t\t\tmotor(stop,0,0);//stop\n\t\t\t\tdelay(300);\n\t\t\t\tstop_bit=1;\n\t\t\t}\n\t\t\tmotor(back,140,140); //Car back\n\t\t\tdelay(600);\n\t\t\tmotor(left,140,140); //The car turns left\n\t\t\tdelay(200);          \n\t\t\tSpeed_adjustment=120;\n\t\t}\n\t}\n    else\n    {\n        motor(forward,MotSpeed1,MotSpeed2);//If there is no less than the obstacle avoidance distance, move forward\n\t\t    stop_bit=0;\n    }\n  \n}\n\n//Motor direction function to determine the direction of the car\nvoid motor(int dir ,int speed1, int speed2)  \n{  \n    switch (dir)\n    {\n    case stop:\n        motor1(0, 0);\n        motor2(0, 0);\n       \n        break;\n\n    case forward:  //Go ahead\n       \n       motor1(speed1,0\n"}]}}
<<<
Content-Length: 111

{"id":6,"jsonrpc":"2.0","method":"window/workDoneProgress/create","params":{"token":"backgroundIndexProgress"}}
>>>
Content-Length: 38

{"jsonrpc":"2.0","id":6,"result":null}
<<<
Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"begin","percentage":0,"title":"indexing"}}}Content-Length: 141

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/1","percentage":0}}}Content-Length: 141

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/1","percentage":0}}}Content-Length: 107

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"end"}}}
>>>
Content-Length: 314

{"jsonrpc":"2.0","id":"123","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":148,"character":1},"end":{"line":148,"character":1}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 40

{"id":"123","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 241

{"jsonrpc":"2.0","id":"124","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":150,"character":39}}}
<<<
Content-Length: 42

{"id":"124","jsonrpc":"2.0","result":null}
>>>
Content-Length: 193

{"jsonrpc":"2.0","method":"textDocument/didSave","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}Content-Length: 5576

{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","version":14},"contentChanges":[{"text":"#include \u003cArduino.h\u003e\n#line 1 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\n//2021.6.7\n//Define the direction of car movement\n#define  stop     0\n#define  forward  1\n#define  back     2\n#define  left     3\n#define  right    4\n\n//Definition of ultrasonic pin\n#define  Trig A4 \n#define  Echo A5\n\n//Data variable definition\nint MotSpeed1 = 0; \nint MotSpeed2 = 0;\nint Speed_adjustment = 120;\nint stop_bit = 0;\n\n//Program initialization\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup();\n#line 37 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid loop();\n#line 49 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nfloat GetDistance();\n#line 70 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor1(int steep1, int steep2);\n#line 77 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor2(int steep1, int steep2);\n#line 84 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid avoidance(int set_dis);\n#line 135 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor(int dir ,int speed1, int speed2);\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup()  \n{\n    Serial.begin(9600); \n\n    pinMode(5, OUTPUT);\n    pinMode(6, OUTPUT);\n    pinMode(9, OUTPUT);\n    pinMode(10, OUTPUT);\n\n    pinMode(Trig,OUTPUT);   \n    pinMode(Echo,INPUT); \n    // Define ultrasonic sensor pins\n    \n\n}\n\n//Principal function\nvoid loop()\n{ \n   avoidance(18);  //In brackets is the obstacle avoidance distance in cm\n}\n\n/*\nFunction: obtain ultrasonic sensor ranging data\nParameters: Trig, Echo\nParameter description: sensor connected to the motherboard pin port A4,A5\nTrig -------\u003e pin A4\nEcho -------\u003e pin A5\n*/\nfloat GetDistance()\n{\n    float distance;\n  \n\tdigitalWrite(Trig, LOW); \n\tdelayMicroseconds(2); \n\tdigitalWrite(Trig, HIGH); \n\tdelayMicroseconds(10);\n\tdigitalWrite(Trig, LOW);\n\n  distance = pulseIn(Echo, HIGH) / 58.00;\n     \n\treturn distance;  //Return distance\n}\n\n/*\n* Function: Obstacle avoidance\n* Parameter: set_dis sets the obstacle avoidance distance\n*/\n\n//Motor 1 output definition\nvoid motor1(int steep1, int steep2) \n{\n   analogWrite(5,steep1);\n   analogWrite(6,steep2); \n}\n\n//Motor 2 output definition\nvoid motor2(int steep1, int steep2)\n{\n   analogWrite(9,steep1);\n   analogWrite(10,steep2); \n}\n\n//Obstacle avoidance function\nvoid avoidance(int set_dis)\n{\n    int distance;\n    distance = GetDistance(); \n    Serial.println(distance);  //Print distance in serial port\n    if(distance \u003c 30)     //Judge that the distance is less than 40cm and start to decelerate\n    {\n\t  Speed_adjustment--;\n\t  //delay(5);     //Car deceleration speed\n\t  if(Speed_adjustment\u003c=120)Speed_adjustment=120;\n      MotSpeed1 = Speed_adjustment+20;  //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n\n   if(distance \u003e 30)  //Judge if the distance is more than 40cm and start to accelerate\n    {\n\t  Speed_adjustment++;\n\t  //delay(5);\n\t  if(Speed_adjustment\u003e=235)Speed_adjustment=235; //The maximum limit is 255\n      MotSpeed1 = Speed_adjustment+20; //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n     \n\tif(distance \u003c set_dis)  //Judge that the car is less than the obstacle avoidance distance and start to turn backward\n\t{\n\t\tdelay(10);\n\t\tdistance = GetDistance(); \n\t\tif(distance \u003c set_dis)\n\t\t{\n\t\t\tif(stop_bit==0)\n\t\t\t{\n\t\t\t\tmotor(stop,0,0);//stop\n\t\t\t\tdelay(300);\n\t\t\t\tstop_bit=1;\n\t\t\t}\n\t\t\tmotor(back,140,140); //Car back\n\t\t\tdelay(600);\n\t\t\tmotor(left,140,140); //The car turns left\n\t\t\tdelay(200);          \n\t\t\tSpeed_adjustment=120;\n\t\t}\n\t}\n    else\n    {\n        motor(forward,MotSpeed1,MotSpeed2);//If there is no less than the obstacle avoidance distance, move forward\n\t\t    stop_bit=0;\n    }\n  \n}\n\n//Motor direction function to determine the direction of the car\nvoid motor(int dir ,int speed1, int speed2)  \n{  \n    switch (dir)\n    {\n    case stop:\n        motor1(0, 0);\n        motor2(0, 0);\n       \n        break;\n\n    case forward:  //Go ahead\n       \n       motor1(speed1,0\n"}]}}
<<<
Content-Length: 111

{"id":7,"jsonrpc":"2.0","method":"window/workDoneProgress/create","params":{"token":"backgroundIndexProgress"}}
>>>
Content-Length: 38

{"jsonrpc":"2.0","id":7,"result":null}
<<<
Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"begin","percentage":0,"title":"indexing"}}}Content-Length: 141

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/1","percentage":0}}}Content-Length: 141

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/1","percentage":0}}}Content-Length: 107

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"end"}}}
>>>
Content-Length: 316

{"jsonrpc":"2.0","id":"125","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":156,"character":21},"end":{"line":156,"character":21}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 40

{"id":"125","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 316

{"jsonrpc":"2.0","id":"126","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":157,"character":21},"end":{"line":157,"character":21}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 40

{"id":"126","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 316

{"jsonrpc":"2.0","id":"127","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":155,"character":14},"end":{"line":155,"character":14}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 40

{"id":"127","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 316

{"jsonrpc":"2.0","id":"128","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":157,"character":21},"end":{"line":157,"character":21}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 40

{"id":"128","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 316

{"jsonrpc":"2.0","id":"129","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":156,"character":21},"end":{"line":156,"character":21}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 40

{"id":"129","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 316

{"jsonrpc":"2.0","id":"130","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":155,"character":14},"end":{"line":155,"character":14}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 40

{"id":"130","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 316

{"jsonrpc":"2.0","id":"131","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":157,"character":21},"end":{"line":157,"character":21}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 40

{"id":"131","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 316

{"jsonrpc":"2.0","id":"132","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":156,"character":21},"end":{"line":156,"character":21}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 40

{"id":"132","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 316

{"jsonrpc":"2.0","id":"133","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":157,"character":21},"end":{"line":157,"character":21}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 40

{"id":"133","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 193

{"jsonrpc":"2.0","method":"textDocument/didSave","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}Content-Length: 5576

{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","version":15},"contentChanges":[{"text":"#include \u003cArduino.h\u003e\n#line 1 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\n//2021.6.7\n//Define the direction of car movement\n#define  stop     0\n#define  forward  1\n#define  back     2\n#define  left     3\n#define  right    4\n\n//Definition of ultrasonic pin\n#define  Trig A4 \n#define  Echo A5\n\n//Data variable definition\nint MotSpeed1 = 0; \nint MotSpeed2 = 0;\nint Speed_adjustment = 120;\nint stop_bit = 0;\n\n//Program initialization\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup();\n#line 37 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid loop();\n#line 49 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nfloat GetDistance();\n#line 70 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor1(int steep1, int steep2);\n#line 77 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor2(int steep1, int steep2);\n#line 84 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid avoidance(int set_dis);\n#line 135 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor(int dir ,int speed1, int speed2);\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup()  \n{\n    Serial.begin(9600); \n\n    pinMode(5, OUTPUT);\n    pinMode(6, OUTPUT);\n    pinMode(9, OUTPUT);\n    pinMode(10, OUTPUT);\n\n    pinMode(Trig,OUTPUT);   \n    pinMode(Echo,INPUT); \n    // Define ultrasonic sensor pins\n    \n\n}\n\n//Principal function\nvoid loop()\n{ \n   avoidance(18);  //In brackets is the obstacle avoidance distance in cm\n}\n\n/*\nFunction: obtain ultrasonic sensor ranging data\nParameters: Trig, Echo\nParameter description: sensor connected to the motherboard pin port A4,A5\nTrig -------\u003e pin A4\nEcho -------\u003e pin A5\n*/\nfloat GetDistance()\n{\n    float distance;\n  \n\tdigitalWrite(Trig, LOW); \n\tdelayMicroseconds(2); \n\tdigitalWrite(Trig, HIGH); \n\tdelayMicroseconds(10);\n\tdigitalWrite(Trig, LOW);\n\n  distance = pulseIn(Echo, HIGH) / 58.00;\n     \n\treturn distance;  //Return distance\n}\n\n/*\n* Function: Obstacle avoidance\n* Parameter: set_dis sets the obstacle avoidance distance\n*/\n\n//Motor 1 output definition\nvoid motor1(int steep1, int steep2) \n{\n   analogWrite(5,steep1);\n   analogWrite(6,steep2); \n}\n\n//Motor 2 output definition\nvoid motor2(int steep1, int steep2)\n{\n   analogWrite(9,steep1);\n   analogWrite(10,steep2); \n}\n\n//Obstacle avoidance function\nvoid avoidance(int set_dis)\n{\n    int distance;\n    distance = GetDistance(); \n    Serial.println(distance);  //Print distance in serial port\n    if(distance \u003c 30)     //Judge that the distance is less than 40cm and start to decelerate\n    {\n\t  Speed_adjustment--;\n\t  //delay(5);     //Car deceleration speed\n\t  if(Speed_adjustment\u003c=120)Speed_adjustment=120;\n      MotSpeed1 = Speed_adjustment+20;  //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n\n   if(distance \u003e 30)  //Judge if the distance is more than 40cm and start to accelerate\n    {\n\t  Speed_adjustment++;\n\t  //delay(5);\n\t  if(Speed_adjustment\u003e=235)Speed_adjustment=235; //The maximum limit is 255\n      MotSpeed1 = Speed_adjustment+20; //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n     \n\tif(distance \u003c set_dis)  //Judge that the car is less than the obstacle avoidance distance and start to turn backward\n\t{\n\t\tdelay(10);\n\t\tdistance = GetDistance(); \n\t\tif(distance \u003c set_dis)\n\t\t{\n\t\t\tif(stop_bit==0)\n\t\t\t{\n\t\t\t\tmotor(stop,0,0);//stop\n\t\t\t\tdelay(300);\n\t\t\t\tstop_bit=1;\n\t\t\t}\n\t\t\tmotor(back,140,140); //Car back\n\t\t\tdelay(600);\n\t\t\tmotor(left,140,140); //The car turns left\n\t\t\tdelay(200);          \n\t\t\tSpeed_adjustment=120;\n\t\t}\n\t}\n    else\n    {\n        motor(forward,MotSpeed1,MotSpeed2);//If there is no less than the obstacle avoidance distance, move forward\n\t\t    stop_bit=0;\n    }\n  \n}\n\n//Motor direction function to determine the direction of the car\nvoid motor(int dir ,int speed1, int speed2)  \n{  \n    switch (dir)\n    {\n    case stop:\n        motor1(0, 0);\n        motor2(0, 0);\n       \n        break;\n\n    case forward:  //Go ahead\n       \n       motor1(speed1,0\n"}]}}
<<<
Content-Length: 111

{"id":8,"jsonrpc":"2.0","method":"window/workDoneProgress/create","params":{"token":"backgroundIndexProgress"}}
>>>
Content-Length: 38

{"jsonrpc":"2.0","id":8,"result":null}
<<<
Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"begin","percentage":0,"title":"indexing"}}}Content-Length: 141

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/1","percentage":0}}}Content-Length: 141

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/1","percentage":0}}}Content-Length: 107

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"end"}}}
>>>
Content-Length: 253

{"jsonrpc":"2.0","id":"134","method":"textDocument/documentHighlight","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":137,"character":44}}}
<<<
Content-Length: 40

{"id":"134","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 316

{"jsonrpc":"2.0","id":"135","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":137,"character":44},"end":{"line":137,"character":44}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 40

{"id":"135","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 252

{"jsonrpc":"2.0","id":"136","method":"textDocument/documentHighlight","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":62,"character":20}}}
<<<
Content-Length: 40

{"id":"136","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 314

{"jsonrpc":"2.0","id":"137","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":62,"character":20},"end":{"line":62,"character":20}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 40

{"id":"137","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 314

{"jsonrpc":"2.0","id":"138","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":16,"character":18},"end":{"line":16,"character":18}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 40

{"id":"138","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 193

{"jsonrpc":"2.0","method":"textDocument/didSave","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"}}}Content-Length: 5576

{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp","version":16},"contentChanges":[{"text":"#include \u003cArduino.h\u003e\n#line 1 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\n//2021.6.7\n//Define the direction of car movement\n#define  stop     0\n#define  forward  1\n#define  back     2\n#define  left     3\n#define  right    4\n\n//Definition of ultrasonic pin\n#define  Trig A4 \n#define  Echo A5\n\n//Data variable definition\nint MotSpeed1 = 0; \nint MotSpeed2 = 0;\nint Speed_adjustment = 120;\nint stop_bit = 0;\n\n//Program initialization\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup();\n#line 37 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid loop();\n#line 49 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nfloat GetDistance();\n#line 70 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor1(int steep1, int steep2);\n#line 77 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor2(int steep1, int steep2);\n#line 84 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid avoidance(int set_dis);\n#line 135 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor(int dir ,int speed1, int speed2);\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup()  \n{\n    Serial.begin(9600); \n\n    pinMode(5, OUTPUT);\n    pinMode(6, OUTPUT);\n    pinMode(9, OUTPUT);\n    pinMode(10, OUTPUT);\n\n    pinMode(Trig,OUTPUT);   \n    pinMode(Echo,INPUT); \n    // Define ultrasonic sensor pins\n    \n\n}\n\n//Principal function\nvoid loop()\n{ \n   avoidance(18);  //In brackets is the obstacle avoidance distance in cm\n}\n\n/*\nFunction: obtain ultrasonic sensor ranging data\nParameters: Trig, Echo\nParameter description: sensor connected to the motherboard pin port A4,A5\nTrig -------\u003e pin A4\nEcho -------\u003e pin A5\n*/\nfloat GetDistance()\n{\n    float distance;\n  \n\tdigitalWrite(Trig, LOW); \n\tdelayMicroseconds(2); \n\tdigitalWrite(Trig, HIGH); \n\tdelayMicroseconds(10);\n\tdigitalWrite(Trig, LOW);\n\n  distance = pulseIn(Echo, HIGH) / 58.00;\n     \n\treturn distance;  //Return distance\n}\n\n/*\n* Function: Obstacle avoidance\n* Parameter: set_dis sets the obstacle avoidance distance\n*/\n\n//Motor 1 output definition\nvoid motor1(int steep1, int steep2) \n{\n   analogWrite(5,steep1);\n   analogWrite(6,steep2); \n}\n\n//Motor 2 output definition\nvoid motor2(int steep1, int steep2)\n{\n   analogWrite(9,steep1);\n   analogWrite(10,steep2); \n}\n\n//Obstacle avoidance function\nvoid avoidance(int set_dis)\n{\n    int distance;\n    distance = GetDistance(); \n    Serial.println(distance);  //Print distance in serial port\n    if(distance \u003c 30)     //Judge that the distance is less than 40cm and start to decelerate\n    {\n\t  Speed_adjustment--;\n\t  //delay(5);     //Car deceleration speed\n\t  if(Speed_adjustment\u003c=120)Speed_adjustment=120;\n      MotSpeed1 = Speed_adjustment+20;  //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n\n   if(distance \u003e 30)  //Judge if the distance is more than 40cm and start to accelerate\n    {\n\t  Speed_adjustment++;\n\t  //delay(5);\n\t  if(Speed_adjustment\u003e=235)Speed_adjustment=235; //The maximum limit is 255\n      MotSpeed1 = Speed_adjustment+20; //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n     \n\tif(distance \u003c set_dis)  //Judge that the car is less than the obstacle avoidance distance and start to turn backward\n\t{\n\t\tdelay(10);\n\t\tdistance = GetDistance(); \n\t\tif(distance \u003c set_dis)\n\t\t{\n\t\t\tif(stop_bit==0)\n\t\t\t{\n\t\t\t\tmotor(stop,0,0);//stop\n\t\t\t\tdelay(300);\n\t\t\t\tstop_bit=1;\n\t\t\t}\n\t\t\tmotor(back,140,140); //Car back\n\t\t\tdelay(600);\n\t\t\tmotor(left,140,140); //The car turns left\n\t\t\tdelay(200);          \n\t\t\tSpeed_adjustment=120;\n\t\t}\n\t}\n    else\n    {\n        motor(forward,MotSpeed1,MotSpeed2);//If there is no less than the obstacle avoidance distance, move forward\n\t\t    stop_bit=0;\n    }\n  \n}\n\n//Motor direction function to determine the direction of the car\nvoid motor(int dir ,int speed1, int speed2)  \n{  \n    switch (dir)\n    {\n    case stop:\n        motor1(0, 0);\n        motor2(0, 0);\n       \n        break;\n\n    case forward:  //Go ahead\n       \n       motor1(speed1,0\n"}]}}
<<<
Content-Length: 111

{"id":9,"jsonrpc":"2.0","method":"window/workDoneProgress/create","params":{"token":"backgroundIndexProgress"}}
>>>
Content-Length: 38

{"jsonrpc":"2.0","id":9,"result":null}
<<<
Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"begin","percentage":0,"title":"indexing"}}}Content-Length: 141

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/1","percentage":0}}}Content-Length: 141

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/1","percentage":0}}}Content-Length: 107

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"end"}}}
>>>
Content-Length: 252

{"jsonrpc":"2.0","id":"139","method":"textDocument/documentHighlight","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":85,"character":27}}}
<<<
Content-Length: 40

{"id":"139","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 314

{"jsonrpc":"2.0","id":"140","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":85,"character":27},"end":{"line":85,"character":27}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 40

{"id":"140","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 312

{"jsonrpc":"2.0","id":"141","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":83,"character":2},"end":{"line":83,"character":2}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 40

{"id":"141","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 252

{"jsonrpc":"2.0","id":"142","method":"textDocument/documentHighlight","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"position":{"line":85,"character":27}}}
<<<
Content-Length: 40

{"id":"142","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 314

{"jsonrpc":"2.0","id":"143","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server215188477/sketch/avoidance.ino.cpp"},"range":{"start":{"line":85,"character":27},"end":{"line":85,"character":27}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 40

{"id":"143","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 62

{"jsonrpc":"2.0","id":"144","method":"shutdown","params":null}
<<<
Content-Length: 42

{"id":"144","jsonrpc":"2.0","result":null}
>>>
Content-Length: 47

{"jsonrpc":"2.0","method":"exit","params":null}






Started logging.

>>>
Content-Length: 3203

{"jsonrpc":"2.0","id":"1","method":"initialize","params":{"processId":16372,"clientInfo":{"name":"vscode","version":"1.53.2"},"rootPath":"C:\\Users\\Administrator\\AppData\\Local\\Temp\\arduino-language-server2215796985\\sketch","rootUri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server2215796985/sketch","initializationOptions":{},"capabilities":{"workspace":{"applyEdit":true,"workspaceEdit":{"documentChanges":true,"resourceOperations":["create","rename","delete"],"failureHandling":"textOnlyTransactional"},"didChangeConfiguration":{"dynamicRegistration":true},"didChangeWatchedFiles":{"dynamicRegistration":true},"symbol":{"dynamicRegistration":true,"symbolKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]}},"executeCommand":{"dynamicRegistration":true},"workspaceFolders":true,"configuration":true},"textDocument":{"synchronization":{"dynamicRegistration":true,"willSave":true,"willSaveWaitUntil":true,"didSave":true},"completion":{"dynamicRegistration":true,"completionItem":{"snippetSupport":true,"commitCharactersSupport":true,"documentationFormat":["markdown","plaintext"],"deprecatedSupport":true,"preselectSupport":true,"tagSupport":{"valueSet":[1]}},"completionItemKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25]},"contextSupport":true},"hover":{"dynamicRegistration":true,"contentFormat":["markdown","plaintext"]},"signatureHelp":{"dynamicRegistration":true,"signatureInformation":{"documentationFormat":["markdown","plaintext"],"parameterInformation":{"labelOffsetSupport":true}},"contextSupport":true},"declaration":{"dynamicRegistration":true,"linkSupport":true},"definition":{"dynamicRegistration":true,"linkSupport":true},"typeDefinition":{"dynamicRegistration":true,"linkSupport":true},"implementation":{"dynamicRegistration":true,"linkSupport":true},"references":{"dynamicRegistration":true},"documentHighlight":{"dynamicRegistration":true},"documentSymbol":{"dynamicRegistration":true,"symbolKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]},"hierarchicalDocumentSymbolSupport":true},"codeAction":{"dynamicRegistration":true,"codeActionLiteralSupport":{"codeActionKind":{"valueSet":["","quickfix","refactor","refactor.extract","refactor.inline","refactor.rewrite","source","source.organizeImports"]}},"isPreferredSupport":true},"codeLens":{"dynamicRegistration":true},"documentLink":{"dynamicRegistration":true,"tooltipSupport":true},"colorProvider":{"dynamicRegistration":true},"formatting":{"dynamicRegistration":true},"rangeFormatting":{"dynamicRegistration":true},"onTypeFormatting":{"dynamicRegistration":true},"rename":{"dynamicRegistration":true,"prepareSupport":true},"publishDiagnostics":{"relatedInformation":true,"tagSupport":{"valueSet":[1,2]}},"foldingRange":{"dynamicRegistration":true,"rangeLimit":5000,"lineFoldingOnly":true},"selectionRange":{"dynamicRegistration":true}},"window":{"workDoneProgress":true}},"trace":"off","workspaceFolders":[{"uri":"file:///e%3A/5-%E6%95%99%E7%A8%8B/1.tutorial/ZYC0055%29Mini%20DIY%20obstacle%20avoidance%20car/ZYC0055/Part2.0%20Module%20learning/code/avoidance","name":"avoidance"}]}}
<<<
Content-Length: 1905

{"id":"1","jsonrpc":"2.0","result":{"capabilities":{"astProvider":true,"callHierarchyProvider":true,"clangdInlayHintsProvider":true,"codeActionProvider":{"codeActionKinds":["quickfix","refactor","info"]},"compilationDatabase":{"automaticReload":true},"completionProvider":{"allCommitCharacters":[" ","\t","(",")","[","]","{","}","<",">",":",";",",","+","-","/","*","%","^","&","#","?",".","=","\"","'","|"],"resolveProvider":false,"triggerCharacters":[".","<",">",":","\"","/","*"]},"declarationProvider":true,"definitionProvider":true,"documentFormattingProvider":true,"documentHighlightProvider":true,"documentLinkProvider":{"resolveProvider":false},"documentOnTypeFormattingProvider":{"firstTriggerCharacter":"\n","moreTriggerCharacter":[]},"documentRangeFormattingProvider":true,"documentSymbolProvider":true,"executeCommandProvider":{"commands":["clangd.applyFix","clangd.applyTweak"]},"hoverProvider":true,"implementationProvider":true,"memoryUsageProvider":true,"referencesProvider":true,"renameProvider":{"prepareProvider":true},"selectionRangeProvider":true,"semanticTokensProvider":{"full":{"delta":true},"legend":{"tokenModifiers":["declaration","deprecated","deduced","readonly","static","abstract","virtual","dependentName","defaultLibrary","usedAsMutableReference","functionScope","classScope","fileScope","globalScope"],"tokenTypes":["variable","variable","parameter","function","method","function","property","variable","class","interface","enum","enumMember","type","type","unknown","namespace","typeParameter","concept","type","macro","comment"]},"range":false},"signatureHelpProvider":{"triggerCharacters":["(",")","{","}","<",">",","]},"textDocumentSync":{"change":2,"openClose":true,"save":true},"typeDefinitionProvider":true,"typeHierarchyProvider":true,"workspaceSymbolProvider":true},"serverInfo":{"name":"clangd","version":"clangd version 14.0.0 windows x86_64-pc-windows-msvc"}}}
>>>
Content-Length: 52

{"jsonrpc":"2.0","method":"initialized","params":{}}Content-Length: 6120

{"jsonrpc":"2.0","method":"textDocument/didOpen","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server2215796985/sketch/avoidance.ino.cpp","languageId":"cpp","version":1,"text":"#include \u003cArduino.h\u003e\n#line 1 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\n//2021.6.7\n//Define the direction of car movement\n#define  stop     0\n#define  forward  1\n#define  back     2\n#define  left     3\n#define  right    4\n\n//Definition of ultrasonic pin\n#define  Trig A4 \n#define  Echo A5\n\n//Data variable definition\nint MotSpeed1 = 0; \nint MotSpeed2 = 0;\nint Speed_adjustment = 120;\nint stop_bit = 0;\n\n//Program initialization\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup();\n#line 37 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid loop();\n#line 49 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nfloat GetDistance();\n#line 70 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor1(int steep1, int steep2);\n#line 77 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor2(int steep1, int steep2);\n#line 84 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid avoidance(int set_dis);\n#line 135 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor(int dir ,int speed1, int speed2);\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup()  \n{\n    Serial.begin(9600); \n\n    pinMode(5, OUTPUT);\n    pinMode(6, OUTPUT);\n    pinMode(9, OUTPUT);\n    pinMode(10, OUTPUT);\n\n    pinMode(Trig,OUTPUT);   \n    pinMode(Echo,INPUT); \n    // Define ultrasonic sensor pins\n    \n\n}\n\n//Principal function\nvoid loop()\n{ \n   avoidance(18);  //In brackets is the obstacle avoidance distance in cm\n}\n\n/*\nFunction: obtain ultrasonic sensor ranging data\nParameters: Trig, Echo\nParameter description: sensor connected to the motherboard pin port A4,A5\nTrig -------\u003e pin A4\nEcho -------\u003e pin A5\n*/\nfloat GetDistance()\n{\n    float distance;\n  \n\tdigitalWrite(Trig, LOW); \n\tdelayMicroseconds(2); \n\tdigitalWrite(Trig, HIGH); \n\tdelayMicroseconds(10);\n\tdigitalWrite(Trig, LOW);\n\n  distance = pulseIn(Echo, HIGH) / 58.00;\n     \n\treturn distance;  //Return distance\n}\n\n/*\n* Function: Obstacle avoidance\n* Parameter: set_dis sets the obstacle avoidance distance\n*/\n\n//Motor 1 output definition\nvoid motor1(int steep1, int steep2) \n{\n   analogWrite(5,steep1);\n   analogWrite(6,steep2); \n}\n\n//Motor 2 output definition\nvoid motor2(int steep1, int steep2)\n{\n   analogWrite(9,steep1);\n   analogWrite(10,steep2); \n}\n\n//Obstacle avoidance function\nvoid avoidance(int set_dis)\n{\n    int distance;\n    distance = GetDistance(); \n    Serial.println(distance);  //Print distance in serial port\n    if(distance \u003c 30)     //Judge that the distance is less than 40cm and start to decelerate\n    {\n\t  Speed_adjustment--;\n\t  //delay(5);     //Car deceleration speed\n\t  if(Speed_adjustment\u003c=120)Speed_adjustment=120;\n      MotSpeed1 = Speed_adjustment+20;  //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n\n   if(distance \u003e 30)  //Judge if the distance is more than 40cm and start to accelerate\n    {\n\t  Speed_adjustment++;\n\t  //delay(5);\n\t  if(Speed_adjustment\u003e=235)Speed_adjustment=235; //The maximum limit is 255\n      MotSpeed1 = Speed_adjustment+20; //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n     \n\tif(distance \u003c set_dis)  //Judge that the car is less than the obstacle avoidance distance and start to turn backward\n\t{\n\t\tdelay(10);\n\t\tdistance = GetDistance(); \n\t\tif(distance \u003c set_dis)\n\t\t{\n\t\t\tif(stop_bit==0)\n\t\t\t{\n\t\t\t\tmotor(stop,0,0);//stop\n\t\t\t\tdelay(300);\n\t\t\t\tstop_bit=1;\n\t\t\t}\n\t\t\tmotor(back,140,140); //Car back\n\t\t\tdelay(600);\n\t\t\tmotor(left,140,140); //The car turns left\n\t\t\tdelay(200);          \n\t\t\tSpeed_adjustment=120;\n\t\t}\n\t}\n    else\n    {\n        motor(forward,MotSpeed1,MotSpeed2);//If there is no less than the obstacle avoidance distance, move forward\n\t\t    stop_bit=0;\n    }\n  \n}\n\n//Motor direction function to determine the direction of the car\nvoid motor(int dir ,int speed1, int speed2)  \n{  \n    switch (dir)\n    {\n    case stop:\n        motor1(0, 0);\n        motor2(0, 0);\n       \n        break;\n\n    case forward:  //Go ahead\n       \n       motor1(speed1,0); //If the circuit is not connected correctly, modify here to correct the motor direction\n       motor2(speed2,0); \n       \n        break;\n\n    case back:  //Back up\n        \n        motor1(0,speed1);\n        motor2(0,speed2);\n        \n        break;\n\n    case left:   //Turn left\n        motor1(0, speed1);\n        motor2(speed2, 0);\n        \n        break;\n\n    case right:   //Turn right\n        \n        motor1(speed1, 0);\n        motor2(0, speed2);\n       \n        break;\n    \n    default:\n        break;\n    }\n}\n\n"}}}
<<<
Content-Length: 188

{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[],"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server2215796985/.clangd"}}Content-Length: 111

{"id":0,"jsonrpc":"2.0","method":"window/workDoneProgress/create","params":{"token":"backgroundIndexProgress"}}
>>>
Content-Length: 38

{"jsonrpc":"2.0","id":0,"result":null}
<<<
Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"begin","percentage":0,"title":"indexing"}}}Content-Length: 141

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/1","percentage":0}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/27","percentage":0}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/27","percentage":0}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/27","percentage":0}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"1/27","percentage":3}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"1/27","percentage":3}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"1/27","percentage":3}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"1/27","percentage":3}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"1/27","percentage":3}}}Content-Length: 467

{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"readability-misleading-indentation","message":"Different indentation for 'if' and corresponding 'else'","range":{"end":{"character":8,"line":142},"start":{"character":4,"line":142}},"relatedInformation":[],"severity":2,"source":"clang-tidy"}],"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server2215796985/sketch/avoidance.ino.cpp","version":1}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"2/27","percentage":7}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"2/27","percentage":7}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"3/27","percentage":11}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"3/27","percentage":11}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"4/27","percentage":14}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"4/27","percentage":14}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"5/27","percentage":18}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"5/27","percentage":18}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"6/27","percentage":22}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"6/27","percentage":22}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"7/27","percentage":25}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"7/27","percentage":25}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"8/27","percentage":29}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"8/27","percentage":29}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"9/27","percentage":33}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"9/27","percentage":33}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"10/27","percentage":37}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"10/27","percentage":37}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"11/27","percentage":40}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"11/27","percentage":40}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"12/27","percentage":44}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"12/27","percentage":44}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"13/27","percentage":48}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"13/27","percentage":48}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"14/27","percentage":51}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"14/27","percentage":51}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"15/27","percentage":55}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"15/27","percentage":55}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"16/27","percentage":59}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"16/27","percentage":59}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"17/27","percentage":62}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"17/27","percentage":62}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"18/27","percentage":66}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"18/27","percentage":66}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"19/27","percentage":70}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"19/27","percentage":70}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"20/27","percentage":74}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"20/27","percentage":74}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"21/27","percentage":77}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"21/27","percentage":77}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"22/27","percentage":81}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"23/27","percentage":85}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"24/27","percentage":88}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"25/27","percentage":92}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"26/27","percentage":96}}}Content-Length: 107

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"end"}}}
>>>
Content-Length: 313

{"jsonrpc":"2.0","id":"2","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server2215796985/sketch/avoidance.ino.cpp"},"range":{"start":{"line":18,"character":17},"end":{"line":18,"character":17}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 38

{"id":"2","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 313

{"jsonrpc":"2.0","id":"3","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server2215796985/sketch/avoidance.ino.cpp"},"range":{"start":{"line":17,"character":27},"end":{"line":17,"character":27}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 38

{"id":"3","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 313

{"jsonrpc":"2.0","id":"4","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server2215796985/sketch/avoidance.ino.cpp"},"range":{"start":{"line":16,"character":18},"end":{"line":16,"character":18}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 38

{"id":"4","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 238

{"jsonrpc":"2.0","id":"5","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server2215796985/sketch/avoidance.ino.cpp"},"position":{"line":3,"character":22}}}
<<<
Content-Length: 40

{"id":"5","jsonrpc":"2.0","result":null}
>>>
Content-Length: 60

{"jsonrpc":"2.0","id":"6","method":"shutdown","params":null}
<<<
Content-Length: 40

{"id":"6","jsonrpc":"2.0","result":null}
>>>
Content-Length: 47

{"jsonrpc":"2.0","method":"exit","params":null}






Started logging.

>>>
Content-Length: 3203

{"jsonrpc":"2.0","id":"1","method":"initialize","params":{"processId":12948,"clientInfo":{"name":"vscode","version":"1.53.2"},"rootPath":"C:\\Users\\Administrator\\AppData\\Local\\Temp\\arduino-language-server3210763168\\sketch","rootUri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server3210763168/sketch","initializationOptions":{},"capabilities":{"workspace":{"applyEdit":true,"workspaceEdit":{"documentChanges":true,"resourceOperations":["create","rename","delete"],"failureHandling":"textOnlyTransactional"},"didChangeConfiguration":{"dynamicRegistration":true},"didChangeWatchedFiles":{"dynamicRegistration":true},"symbol":{"dynamicRegistration":true,"symbolKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]}},"executeCommand":{"dynamicRegistration":true},"workspaceFolders":true,"configuration":true},"textDocument":{"synchronization":{"dynamicRegistration":true,"willSave":true,"willSaveWaitUntil":true,"didSave":true},"completion":{"dynamicRegistration":true,"completionItem":{"snippetSupport":true,"commitCharactersSupport":true,"documentationFormat":["markdown","plaintext"],"deprecatedSupport":true,"preselectSupport":true,"tagSupport":{"valueSet":[1]}},"completionItemKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25]},"contextSupport":true},"hover":{"dynamicRegistration":true,"contentFormat":["markdown","plaintext"]},"signatureHelp":{"dynamicRegistration":true,"signatureInformation":{"documentationFormat":["markdown","plaintext"],"parameterInformation":{"labelOffsetSupport":true}},"contextSupport":true},"declaration":{"dynamicRegistration":true,"linkSupport":true},"definition":{"dynamicRegistration":true,"linkSupport":true},"typeDefinition":{"dynamicRegistration":true,"linkSupport":true},"implementation":{"dynamicRegistration":true,"linkSupport":true},"references":{"dynamicRegistration":true},"documentHighlight":{"dynamicRegistration":true},"documentSymbol":{"dynamicRegistration":true,"symbolKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]},"hierarchicalDocumentSymbolSupport":true},"codeAction":{"dynamicRegistration":true,"codeActionLiteralSupport":{"codeActionKind":{"valueSet":["","quickfix","refactor","refactor.extract","refactor.inline","refactor.rewrite","source","source.organizeImports"]}},"isPreferredSupport":true},"codeLens":{"dynamicRegistration":true},"documentLink":{"dynamicRegistration":true,"tooltipSupport":true},"colorProvider":{"dynamicRegistration":true},"formatting":{"dynamicRegistration":true},"rangeFormatting":{"dynamicRegistration":true},"onTypeFormatting":{"dynamicRegistration":true},"rename":{"dynamicRegistration":true,"prepareSupport":true},"publishDiagnostics":{"relatedInformation":true,"tagSupport":{"valueSet":[1,2]}},"foldingRange":{"dynamicRegistration":true,"rangeLimit":5000,"lineFoldingOnly":true},"selectionRange":{"dynamicRegistration":true}},"window":{"workDoneProgress":true}},"trace":"off","workspaceFolders":[{"uri":"file:///e%3A/5-%E6%95%99%E7%A8%8B/1.tutorial/ZYC0055%29Mini%20DIY%20obstacle%20avoidance%20car/ZYC0055/Part2.0%20Module%20learning/code/avoidance","name":"avoidance"}]}}
<<<
Content-Length: 1905

{"id":"1","jsonrpc":"2.0","result":{"capabilities":{"astProvider":true,"callHierarchyProvider":true,"clangdInlayHintsProvider":true,"codeActionProvider":{"codeActionKinds":["quickfix","refactor","info"]},"compilationDatabase":{"automaticReload":true},"completionProvider":{"allCommitCharacters":[" ","\t","(",")","[","]","{","}","<",">",":",";",",","+","-","/","*","%","^","&","#","?",".","=","\"","'","|"],"resolveProvider":false,"triggerCharacters":[".","<",">",":","\"","/","*"]},"declarationProvider":true,"definitionProvider":true,"documentFormattingProvider":true,"documentHighlightProvider":true,"documentLinkProvider":{"resolveProvider":false},"documentOnTypeFormattingProvider":{"firstTriggerCharacter":"\n","moreTriggerCharacter":[]},"documentRangeFormattingProvider":true,"documentSymbolProvider":true,"executeCommandProvider":{"commands":["clangd.applyFix","clangd.applyTweak"]},"hoverProvider":true,"implementationProvider":true,"memoryUsageProvider":true,"referencesProvider":true,"renameProvider":{"prepareProvider":true},"selectionRangeProvider":true,"semanticTokensProvider":{"full":{"delta":true},"legend":{"tokenModifiers":["declaration","deprecated","deduced","readonly","static","abstract","virtual","dependentName","defaultLibrary","usedAsMutableReference","functionScope","classScope","fileScope","globalScope"],"tokenTypes":["variable","variable","parameter","function","method","function","property","variable","class","interface","enum","enumMember","type","type","unknown","namespace","typeParameter","concept","type","macro","comment"]},"range":false},"signatureHelpProvider":{"triggerCharacters":["(",")","{","}","<",">",","]},"textDocumentSync":{"change":2,"openClose":true,"save":true},"typeDefinitionProvider":true,"typeHierarchyProvider":true,"workspaceSymbolProvider":true},"serverInfo":{"name":"clangd","version":"clangd version 14.0.0 windows x86_64-pc-windows-msvc"}}}
>>>
Content-Length: 52

{"jsonrpc":"2.0","method":"initialized","params":{}}Content-Length: 6120

{"jsonrpc":"2.0","method":"textDocument/didOpen","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server3210763168/sketch/avoidance.ino.cpp","languageId":"cpp","version":1,"text":"#include \u003cArduino.h\u003e\n#line 1 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\n//2021.6.7\n//Define the direction of car movement\n#define  stop     0\n#define  forward  1\n#define  back     2\n#define  left     3\n#define  right    4\n\n//Definition of ultrasonic pin\n#define  Trig A4 \n#define  Echo A5\n\n//Data variable definition\nint MotSpeed1 = 0; \nint MotSpeed2 = 0;\nint Speed_adjustment = 120;\nint stop_bit = 0;\n\n//Program initialization\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup();\n#line 37 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid loop();\n#line 49 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nfloat GetDistance();\n#line 70 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor1(int steep1, int steep2);\n#line 77 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor2(int steep1, int steep2);\n#line 84 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid avoidance(int set_dis);\n#line 135 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid motor(int dir ,int speed1, int speed2);\n#line 20 \"E:\\\\5-教程\\\\1.tutorial\\\\ZYC0055)Mini DIY obstacle avoidance car\\\\ZYC0055\\\\Part2.0 Module learning\\\\code\\\\avoidance\\\\avoidance.ino\"\nvoid setup()  \n{\n    Serial.begin(9600); \n\n    pinMode(5, OUTPUT);\n    pinMode(6, OUTPUT);\n    pinMode(9, OUTPUT);\n    pinMode(10, OUTPUT);\n\n    pinMode(Trig,OUTPUT);   \n    pinMode(Echo,INPUT); \n    // Define ultrasonic sensor pins\n    \n\n}\n\n//Principal function\nvoid loop()\n{ \n   avoidance(18);  //In brackets is the obstacle avoidance distance in cm\n}\n\n/*\nFunction: obtain ultrasonic sensor ranging data\nParameters: Trig, Echo\nParameter description: sensor connected to the motherboard pin port A4,A5\nTrig -------\u003e pin A4\nEcho -------\u003e pin A5\n*/\nfloat GetDistance()\n{\n    float distance;\n  \n\tdigitalWrite(Trig, LOW); \n\tdelayMicroseconds(2); \n\tdigitalWrite(Trig, HIGH); \n\tdelayMicroseconds(10);\n\tdigitalWrite(Trig, LOW);\n\n  distance = pulseIn(Echo, HIGH) / 58.00;\n     \n\treturn distance;  //Return distance\n}\n\n/*\n* Function: Obstacle avoidance\n* Parameter: set_dis sets the obstacle avoidance distance\n*/\n\n//Motor 1 output definition\nvoid motor1(int steep1, int steep2) \n{\n   analogWrite(5,steep1);\n   analogWrite(6,steep2); \n}\n\n//Motor 2 output definition\nvoid motor2(int steep1, int steep2)\n{\n   analogWrite(9,steep1);\n   analogWrite(10,steep2); \n}\n\n//Obstacle avoidance function\nvoid avoidance(int set_dis)\n{\n    int distance;\n    distance = GetDistance(); \n    Serial.println(distance);  //Print distance in serial port\n    if(distance \u003c 30)     //Judge that the distance is less than 40cm and start to decelerate\n    {\n\t  Speed_adjustment--;\n\t  //delay(5);     //Car deceleration speed\n\t  if(Speed_adjustment\u003c=120)Speed_adjustment=120;\n      MotSpeed1 = Speed_adjustment+20;  //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n\n   if(distance \u003e 30)  //Judge if the distance is more than 40cm and start to accelerate\n    {\n\t  Speed_adjustment++;\n\t  //delay(5);\n\t  if(Speed_adjustment\u003e=235)Speed_adjustment=235; //The maximum limit is 255\n      MotSpeed1 = Speed_adjustment+20; //In order to make up for the car's yaw, a value can be added according to the actual situation //as:Speed_adjustment+20\n      MotSpeed2 = Speed_adjustment;\n    }\n     \n\tif(distance \u003c set_dis)  //Judge that the car is less than the obstacle avoidance distance and start to turn backward\n\t{\n\t\tdelay(10);\n\t\tdistance = GetDistance(); \n\t\tif(distance \u003c set_dis)\n\t\t{\n\t\t\tif(stop_bit==0)\n\t\t\t{\n\t\t\t\tmotor(stop,0,0);//stop\n\t\t\t\tdelay(300);\n\t\t\t\tstop_bit=1;\n\t\t\t}\n\t\t\tmotor(back,140,140); //Car back\n\t\t\tdelay(600);\n\t\t\tmotor(left,140,140); //The car turns left\n\t\t\tdelay(200);          \n\t\t\tSpeed_adjustment=120;\n\t\t}\n\t}\n    else\n    {\n        motor(forward,MotSpeed1,MotSpeed2);//If there is no less than the obstacle avoidance distance, move forward\n\t\t    stop_bit=0;\n    }\n  \n}\n\n//Motor direction function to determine the direction of the car\nvoid motor(int dir ,int speed1, int speed2)  \n{  \n    switch (dir)\n    {\n    case stop:\n        motor1(0, 0);\n        motor2(0, 0);\n       \n        break;\n\n    case forward:  //Go ahead\n       \n       motor1(speed1,0); //If the circuit is not connected correctly, modify here to correct the motor direction\n       motor2(speed2,0); \n       \n        break;\n\n    case back:  //Back up\n        \n        motor1(0,speed1);\n        motor2(0,speed2);\n        \n        break;\n\n    case left:   //Turn left\n        motor1(0, speed1);\n        motor2(speed2, 0);\n        \n        break;\n\n    case right:   //Turn right\n        \n        motor1(speed1, 0);\n        motor2(0, speed2);\n       \n        break;\n    \n    default:\n        break;\n    }\n}\n\n"}}}Content-Length: 210

{"jsonrpc":"2.0","id":"2","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server3210763168/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 188

{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[],"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server3210763168/.clangd"}}Content-Length: 111

{"id":0,"jsonrpc":"2.0","method":"window/workDoneProgress/create","params":{"token":"backgroundIndexProgress"}}
>>>
Content-Length: 38

{"jsonrpc":"2.0","id":0,"result":null}
<<<
Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"begin","percentage":0,"title":"indexing"}}}Content-Length: 141

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/1","percentage":0}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/27","percentage":0}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/27","percentage":0}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/27","percentage":0}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/27","percentage":0}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/27","percentage":0}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"0/27","percentage":0}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"1/27","percentage":3}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"1/27","percentage":3}}}Content-Length: 467

{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"readability-misleading-indentation","message":"Different indentation for 'if' and corresponding 'else'","range":{"end":{"character":8,"line":142},"start":{"character":4,"line":142}},"relatedInformation":[],"severity":2,"source":"clang-tidy"}],"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server3210763168/sketch/avoidance.ino.cpp","version":1}}Content-Length: 3892

{"id":"2","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":1,"line":191},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 210

{"jsonrpc":"2.0","id":"3","method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server3210763168/sketch/avoidance.ino.cpp"}}}
<<<
Content-Length: 3892

{"id":"3","jsonrpc":"2.0","result":[{"detail":"int","kind":13,"name":"MotSpeed1","range":{"end":{"character":17,"line":15},"start":{"character":0,"line":15}},"selectionRange":{"end":{"character":13,"line":15},"start":{"character":4,"line":15}}},{"detail":"int","kind":13,"name":"MotSpeed2","range":{"end":{"character":17,"line":16},"start":{"character":0,"line":16}},"selectionRange":{"end":{"character":13,"line":16},"start":{"character":4,"line":16}}},{"detail":"int","kind":13,"name":"Speed_adjustment","range":{"end":{"character":26,"line":17},"start":{"character":0,"line":17}},"selectionRange":{"end":{"character":20,"line":17},"start":{"character":4,"line":17}}},{"detail":"int","kind":13,"name":"stop_bit","range":{"end":{"character":16,"line":18},"start":{"character":0,"line":18}},"selectionRange":{"end":{"character":12,"line":18},"start":{"character":4,"line":18}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":12,"line":22},"start":{"character":0,"line":22}},"selectionRange":{"end":{"character":10,"line":22},"start":{"character":5,"line":22}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":11,"line":24},"start":{"character":0,"line":24}},"selectionRange":{"end":{"character":9,"line":24},"start":{"character":5,"line":24}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":19,"line":26},"start":{"character":0,"line":26}},"selectionRange":{"end":{"character":17,"line":26},"start":{"character":6,"line":26}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":35,"line":28},"start":{"character":0,"line":28}},"selectionRange":{"end":{"character":11,"line":28},"start":{"character":5,"line":28}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":35,"line":30},"start":{"character":0,"line":30}},"selectionRange":{"end":{"character":11,"line":30},"start":{"character":5,"line":30}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":27,"line":32},"start":{"character":0,"line":32}},"selectionRange":{"end":{"character":14,"line":32},"start":{"character":5,"line":32}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":43,"line":34},"start":{"character":0,"line":34}},"selectionRange":{"end":{"character":10,"line":34},"start":{"character":5,"line":34}}},{"detail":"void ()","kind":12,"name":"setup","range":{"end":{"character":1,"line":50},"start":{"character":0,"line":36}},"selectionRange":{"end":{"character":10,"line":36},"start":{"character":5,"line":36}}},{"detail":"void ()","kind":12,"name":"loop","range":{"end":{"character":1,"line":56},"start":{"character":0,"line":53}},"selectionRange":{"end":{"character":9,"line":53},"start":{"character":5,"line":53}}},{"detail":"float ()","kind":12,"name":"GetDistance","range":{"end":{"character":1,"line":78},"start":{"character":0,"line":65}},"selectionRange":{"end":{"character":17,"line":65},"start":{"character":6,"line":65}}},{"detail":"void (int, int)","kind":12,"name":"motor1","range":{"end":{"character":1,"line":90},"start":{"character":0,"line":86}},"selectionRange":{"end":{"character":11,"line":86},"start":{"character":5,"line":86}}},{"detail":"void (int, int)","kind":12,"name":"motor2","range":{"end":{"character":1,"line":97},"start":{"character":0,"line":93}},"selectionRange":{"end":{"character":11,"line":93},"start":{"character":5,"line":93}}},{"detail":"void (int)","kind":12,"name":"avoidance","range":{"end":{"character":1,"line":148},"start":{"character":0,"line":100}},"selectionRange":{"end":{"character":14,"line":100},"start":{"character":5,"line":100}}},{"detail":"void (int, int, int)","kind":12,"name":"motor","range":{"end":{"character":1,"line":191},"start":{"character":0,"line":151}},"selectionRange":{"end":{"character":10,"line":151},"start":{"character":5,"line":151}}}]}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"4","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server3210763168/sketch/avoidance.ino.cpp"},"range":{"start":{"line":173,"character":14},"end":{"line":173,"character":14}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 38

{"id":"4","jsonrpc":"2.0","result":[]}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"2/27","percentage":7}}}Content-Length: 142

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"2/27","percentage":7}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"3/27","percentage":11}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"3/27","percentage":11}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"4/27","percentage":14}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"4/27","percentage":14}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"5/27","percentage":18}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"5/27","percentage":18}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"6/27","percentage":22}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"6/27","percentage":22}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"7/27","percentage":25}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"7/27","percentage":25}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"8/27","percentage":29}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"8/27","percentage":29}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"9/27","percentage":33}}}Content-Length: 143

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"9/27","percentage":33}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"10/27","percentage":37}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"10/27","percentage":37}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"11/27","percentage":40}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"11/27","percentage":40}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"12/27","percentage":44}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"12/27","percentage":44}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"13/27","percentage":48}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"13/27","percentage":48}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"14/27","percentage":51}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"14/27","percentage":51}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"15/27","percentage":55}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"15/27","percentage":55}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"16/27","percentage":59}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"16/27","percentage":59}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"17/27","percentage":62}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"17/27","percentage":62}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"18/27","percentage":66}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"18/27","percentage":66}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"19/27","percentage":70}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"19/27","percentage":70}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"20/27","percentage":74}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"20/27","percentage":74}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"21/27","percentage":77}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"21/27","percentage":77}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"22/27","percentage":81}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"23/27","percentage":85}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"24/27","percentage":88}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"25/27","percentage":92}}}Content-Length: 144

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"report","message":"26/27","percentage":96}}}Content-Length: 107

{"jsonrpc":"2.0","method":"$/progress","params":{"token":"backgroundIndexProgress","value":{"kind":"end"}}}
>>>
Content-Length: 315

{"jsonrpc":"2.0","id":"5","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server3210763168/sketch/avoidance.ino.cpp"},"range":{"start":{"line":136,"character":14},"end":{"line":136,"character":14}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 38

{"id":"5","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 240

{"jsonrpc":"2.0","id":"6","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server3210763168/sketch/avoidance.ino.cpp"},"position":{"line":137,"character":42}}}
<<<
Content-Length: 40

{"id":"6","jsonrpc":"2.0","result":null}
>>>
Content-Length: 239

{"jsonrpc":"2.0","id":"7","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server3210763168/sketch/avoidance.ino.cpp"},"position":{"line":43,"character":24}}}
<<<
Content-Length: 40

{"id":"7","jsonrpc":"2.0","result":null}
>>>
Content-Length: 239

{"jsonrpc":"2.0","id":"8","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server3210763168/sketch/avoidance.ino.cpp"},"position":{"line":40,"character":18}}}
<<<
Content-Length: 217

{"id":"8","jsonrpc":"2.0","result":{"contents":{"kind":"markdown","value":"### macro `OUTPUT`  \n\n---\n```cpp\n#define OUTPUT 0x1\n```"},"range":{"end":{"character":21,"line":40},"start":{"character":15,"line":40}}}}
>>>
Content-Length: 238

{"jsonrpc":"2.0","id":"9","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server3210763168/sketch/avoidance.ino.cpp"},"position":{"line":47,"character":2}}}
<<<
Content-Length: 40

{"id":"9","jsonrpc":"2.0","result":null}
>>>
Content-Length: 239

{"jsonrpc":"2.0","id":"10","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server3210763168/sketch/avoidance.ino.cpp"},"position":{"line":47,"character":2}}}
<<<
Content-Length: 41

{"id":"10","jsonrpc":"2.0","result":null}
>>>
Content-Length: 312

{"jsonrpc":"2.0","id":"11","method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server3210763168/sketch/avoidance.ino.cpp"},"range":{"start":{"line":37,"character":1},"end":{"line":37,"character":1}},"context":{"diagnostics":[]}}}
<<<
Content-Length: 39

{"id":"11","jsonrpc":"2.0","result":[]}
>>>
Content-Length: 241

{"jsonrpc":"2.0","id":"12","method":"textDocument/hover","params":{"textDocument":{"uri":"file:///C:/Users/Administrator/AppData/Local/Temp/arduino-language-server3210763168/sketch/avoidance.ino.cpp"},"position":{"line":109,"character":38}}}
<<<
Content-Length: 287

{"id":"12","jsonrpc":"2.0","result":{"contents":{"kind":"markdown","value":"### variable `Speed_adjustment`  \n\n---\nType: `int`  \nValue = `120 (0x78)`  \n\n---\n```cpp\nint Speed_adjustment = 120\n```"},"range":{"end":{"character":44,"line":109},"start":{"character":28,"line":109}}}}
>>>
Content-Length: 61

{"jsonrpc":"2.0","id":"13","method":"shutdown","params":null}
<<<
Content-Length: 41

{"id":"13","jsonrpc":"2.0","result":null}
>>>
Content-Length: 47

{"jsonrpc":"2.0","method":"exit","params":null}