henryemil7:
IR_remote.h
This will be IRremote.hpp in its newest form.
This is a Lafvin special. The title is, indeed, IR_remote.h
@henryemil7 - Your error is "just" a warning and will not effect (?) your sketch/kit.
The full report is (below), but the last line should be the memory usage. Meaning: your LafVin car is fine.
FQBN: arduino:avr:nano
Using board 'nano' from platform in folder: C:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8
Using core 'arduino' from platform in folder: C:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8
Detecting libraries used...
C:\Users\user\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\variants\eightanaloginputs C:\Users\user\AppData\Local\arduino\sketches\EBDCB5F63BC7446346B263C043556EF4\sketch\Test_1_Infrared_Remote_Control_Robot_Arm_Smart_Car.ino.cpp -o nul
Alternatives for Servo.h: [Servo@1.1.8 Servo@1.3.0]
ResolveLibrary(Servo.h)
-> candidates: [Servo@1.1.8 Servo@1.3.0]
C:\Users\user\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\variants\eightanaloginputs -Ic:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src C:\Users\user\AppData\Local\arduino\sketches\EBDCB5F63BC7446346B263C043556EF4\sketch\Test_1_Infrared_Remote_Control_Robot_Arm_Smart_Car.ino.cpp -o nul
C:\Users\user\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\variants\eightanaloginputs -Ic:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src C:\Users\user\AppData\Local\arduino\sketches\EBDCB5F63BC7446346B263C043556EF4\sketch\IR_remote.cpp -o nul
C:\Users\user\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\variants\eightanaloginputs -Ic:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src C:\Users\user\AppData\Local\arduino\sketches\EBDCB5F63BC7446346B263C043556EF4\sketch\Keymap.cpp -o nul
C:\Users\user\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\variants\eightanaloginputs -Ic:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src c:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src\avr\Servo.cpp -o nul
C:\Users\user\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\variants\eightanaloginputs -Ic:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src c:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src\esp32\Servo.cpp -o nul
C:\Users\user\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\variants\eightanaloginputs -Ic:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src c:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src\mbed\Servo.cpp -o nul
C:\Users\user\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\variants\eightanaloginputs -Ic:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src c:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src\megaavr\Servo.cpp -o nul
C:\Users\user\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\variants\eightanaloginputs -Ic:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src c:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src\nrf52\Servo.cpp -o nul
C:\Users\user\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\variants\eightanaloginputs -Ic:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src c:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src\renesas\Servo.cpp -o nul
C:\Users\user\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\variants\eightanaloginputs -Ic:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src c:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src\sam\Servo.cpp -o nul
C:\Users\user\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\variants\eightanaloginputs -Ic:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src c:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src\samd\Servo.cpp -o nul
C:\Users\user\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\variants\eightanaloginputs -Ic:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src c:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src\stm32f4\Servo.cpp -o nul
C:\Users\user\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\variants\eightanaloginputs -Ic:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src c:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src\xmc\Servo.cpp -o nul
C:\Users\user\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\variants\eightanaloginputs -Ic:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src c:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src\zephyr\Servo.cpp -o nul
Generating function prototypes...
C:\Users\user\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino -IC:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\variants\eightanaloginputs -Ic:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo\src C:\Users\user\AppData\Local\arduino\sketches\EBDCB5F63BC7446346B263C043556EF4\sketch\Test_1_Infrared_Remote_Control_Robot_Arm_Smart_Car.ino.cpp -o C:\Users\user\AppData\Local\Temp\499199848\sketch_merged.cpp
C:\Users\user\AppData\Local\Arduino15\packages\builtin\tools\ctags\5.8-arduino11/ctags -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives C:\Users\user\AppData\Local\Temp\499199848\sketch_merged.cpp
Compiling sketch...
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "-Ic:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\sketch\\IR_remote.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\sketch\\IR_remote.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "-Ic:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\sketch\\Keymap.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\sketch\\Keymap.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "-Ic:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\sketch\\Test_1_Infrared_Remote_Control_Robot_Arm_Smart_Car.ino.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\sketch\\Test_1_Infrared_Remote_Control_Robot_Arm_Smart_Car.ino.cpp.o"
C:\Users\user\Downloads\Test_1_Infrared_Remote_Control_Robot_Arm_Smart_Car\IR_remote.cpp: In member function 'void IRremote::sendString(String)':
C:\Users\user\Downloads\Test_1_Infrared_Remote_Control_Robot_Arm_Smart_Car\IR_remote.cpp:535:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(int i = 0;i < s.length();i++)
~~^~~~~~~~~~~~
Compiling libraries...
Compiling library "Servo"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "-Ic:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src" "c:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src\\avr\\Servo.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\libraries\\Servo\\avr\\Servo.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "-Ic:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src" "c:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src\\esp32\\Servo.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\libraries\\Servo\\esp32\\Servo.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "-Ic:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src" "c:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src\\mbed\\Servo.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\libraries\\Servo\\mbed\\Servo.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "-Ic:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src" "c:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src\\megaavr\\Servo.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\libraries\\Servo\\megaavr\\Servo.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "-Ic:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src" "c:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src\\nrf52\\Servo.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\libraries\\Servo\\nrf52\\Servo.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "-Ic:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src" "c:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src\\renesas\\Servo.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\libraries\\Servo\\renesas\\Servo.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "-Ic:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src" "c:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src\\sam\\Servo.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\libraries\\Servo\\sam\\Servo.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "-Ic:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src" "c:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src\\samd\\Servo.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\libraries\\Servo\\samd\\Servo.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "-Ic:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src" "c:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src\\stm32f4\\Servo.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\libraries\\Servo\\stm32f4\\Servo.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "-Ic:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src" "c:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src\\xmc\\Servo.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\libraries\\Servo\\xmc\\Servo.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "-Ic:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src" "c:\\Users\\user\\OneDrive\\Documents\\Arduino\\sketchbook\\libraries\\Servo\\src\\zephyr\\Servo.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\libraries\\Servo\\zephyr\\Servo.cpp.o"
Compiling core...
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\CDC.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\CDC.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\HardwareSerial.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\HardwareSerial.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\HardwareSerial0.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\HardwareSerial0.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\HardwareSerial1.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\HardwareSerial1.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\HardwareSerial2.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\HardwareSerial2.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\HardwareSerial3.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\HardwareSerial3.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\IPAddress.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\IPAddress.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\PluggableUSB.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\PluggableUSB.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\Print.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\Print.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\Stream.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\Stream.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\Tone.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\Tone.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\USBCore.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\USBCore.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc" -c -g -Os -Wall -Wextra -std=gnu11 -ffunction-sections -fdata-sections -MMD -flto -fno-fat-lto-objects -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\WInterrupts.c" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\WInterrupts.c.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\WMath.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\WMath.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\WString.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\WString.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\abi.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\abi.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc" -c -g -Os -Wall -Wextra -std=gnu11 -ffunction-sections -fdata-sections -MMD -flto -fno-fat-lto-objects -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\hooks.c" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\hooks.c.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\main.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\main.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\new.cpp" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\new.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc" -c -g -Os -Wall -Wextra -std=gnu11 -ffunction-sections -fdata-sections -MMD -flto -fno-fat-lto-objects -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\wiring.c" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\wiring.c.o"
C:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino\new.cpp: In function 'void* operator new(std::size_t, std::nothrow_t)':
C:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino\new.cpp:59:60: warning: unused parameter 'tag' [-Wunused-parameter]
void * operator new(std::size_t size, const std::nothrow_t tag) noexcept {
^~~
C:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino\new.cpp: In function 'void* operator new [](std::size_t, const std::nothrow_t&)':
C:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino\new.cpp:68:63: warning: unused parameter 'tag' [-Wunused-parameter]
void * operator new[](std::size_t size, const std::nothrow_t& tag) noexcept {
^~~
C:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino\new.cpp: In function 'void operator delete(void*, const std::nothrow_t&)':
C:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino\new.cpp:103:55: warning: unused parameter 'tag' [-Wunused-parameter]
void operator delete(void* ptr, const std::nothrow_t& tag) noexcept {
^~~
C:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino\new.cpp: In function 'void operator delete [](void*, const std::nothrow_t&)':
C:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.8\cores\arduino\new.cpp:106:57: warning: unused parameter 'tag' [-Wunused-parameter]
void operator delete[](void* ptr, const std::nothrow_t& tag) noexcept {
^~~
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc" -c -g -Os -Wall -Wextra -std=gnu11 -ffunction-sections -fdata-sections -MMD -flto -fno-fat-lto-objects -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\wiring_analog.c" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\wiring_analog.c.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc" -c -g -Os -Wall -Wextra -std=gnu11 -ffunction-sections -fdata-sections -MMD -flto -fno-fat-lto-objects -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\wiring_digital.c" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\wiring_digital.c.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc" -c -g -x assembler-with-cpp -flto -MMD -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\wiring_pulse.S" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\wiring_pulse.S.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc" -c -g -Os -Wall -Wextra -std=gnu11 -ffunction-sections -fdata-sections -MMD -flto -fno-fat-lto-objects -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\wiring_pulse.c" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\wiring_pulse.c.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc" -c -g -Os -Wall -Wextra -std=gnu11 -ffunction-sections -fdata-sections -MMD -flto -fno-fat-lto-objects -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\variants\\eightanaloginputs" "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.8\\cores\\arduino\\wiring_shift.c" -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\wiring_shift.c.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\CDC.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\HardwareSerial.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\HardwareSerial0.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\HardwareSerial1.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\HardwareSerial2.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\HardwareSerial3.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\IPAddress.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\PluggableUSB.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\Print.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\Stream.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\Tone.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\USBCore.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\WInterrupts.c.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\WMath.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\WString.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\abi.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\hooks.c.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\main.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\new.cpp.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\wiring.c.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\wiring_analog.c.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\wiring_digital.c.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\wiring_pulse.S.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\wiring_pulse.c.o"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc-ar" rcs "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\core.a" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\core\\wiring_shift.c.o"
Archiving built core (caching) in: C:\Users\user\AppData\Local\arduino\cores\arduino_avr_nano_cpu_atmega328_d6a0e58516c60417f39aaecf776dd952\core.a
Linking everything together...
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc" -Wall -Wextra -Os -g -flto -fuse-linker-plugin -Wl,--gc-sections -mmcu=atmega328p -o "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4/Test_1_Infrared_Remote_Control_Robot_Arm_Smart_Car.ino.elf" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\sketch\\IR_remote.cpp.o" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\sketch\\Keymap.cpp.o" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\sketch\\Test_1_Infrared_Remote_Control_Robot_Arm_Smart_Car.ino.cpp.o" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\libraries\\Servo\\avr\\Servo.cpp.o" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\libraries\\Servo\\esp32\\Servo.cpp.o" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\libraries\\Servo\\mbed\\Servo.cpp.o" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\libraries\\Servo\\megaavr\\Servo.cpp.o" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\libraries\\Servo\\nrf52\\Servo.cpp.o" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\libraries\\Servo\\renesas\\Servo.cpp.o" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\libraries\\Servo\\sam\\Servo.cpp.o" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\libraries\\Servo\\samd\\Servo.cpp.o" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\libraries\\Servo\\stm32f4\\Servo.cpp.o" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\libraries\\Servo\\xmc\\Servo.cpp.o" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4\\libraries\\Servo\\zephyr\\Servo.cpp.o" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4/core\\core.a" "-LC:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4" -lm
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-objcopy" -O ihex -j .eeprom --set-section-flags=.eeprom=alloc,load --no-change-warnings --change-section-lma .eeprom=0 "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4/Test_1_Infrared_Remote_Control_Robot_Arm_Smart_Car.ino.elf" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4/Test_1_Infrared_Remote_Control_Robot_Arm_Smart_Car.ino.eep"
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-objcopy" -O ihex -R .eeprom "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4/Test_1_Infrared_Remote_Control_Robot_Arm_Smart_Car.ino.elf" "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4/Test_1_Infrared_Remote_Control_Robot_Arm_Smart_Car.ino.hex"
Multiple libraries were found for "Servo.h"
Used: C:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo
Not used: C:\Users\user\AppData\Local\Arduino15\libraries\Servo
Using library Servo at version 1.3.0 in folder: C:\Users\user\OneDrive\Documents\Arduino\sketchbook\libraries\Servo
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-size" -A "C:\\Users\\user\\AppData\\Local\\arduino\\sketches\\EBDCB5F63BC7446346B263C043556EF4/Test_1_Infrared_Remote_Control_Robot_Arm_Smart_Car.ino.elf"
Sketch uses 6816 bytes (22%) of program storage space. Maximum is 30720 bytes.
Global variables use 373 bytes (18%) of dynamic memory, leaving 1675 bytes for local variables. Maximum is 2048 bytes.
Test_1_Infrared_Remote_Control_Robot_Arm_Smart_Car.ino
#include "IR_remote.h"
#include "keymap.h"
IRremote ir(3);
#include <Servo.h>
int base_degress;
int arm_degress;
int claw_degress;
Servo myservo1;
Servo myservo2;
Servo myservo3;
void setup()
{
IRremote ir(3);
base_degress = 90;
arm_degress = 90;
claw_degress = 90;
myservo1.attach(9);
myservo2.attach(10);
myservo3.attach(11);
myservo1.write(claw_degress);
delay(500);
myservo2.write(arm_degress);
delay(500);
myservo3.write(base_degress);
delay(500);
Stop();
pinMode(2, OUTPUT);
pinMode(5, OUTPUT);
pinMode(4, OUTPUT);
pinMode(6, OUTPUT);
}
void loop(){
if (ir.getIrKey(ir.getCode(),1) == IR_KEYCODE_UP) {
Move_Forward(100);
delay(300);
Stop();
} else if (ir.getIrKey(ir.getCode(),1) == IR_KEYCODE_DOWN) {
Move_Backward(100);
delay(300);
Stop();
} else if (ir.getIrKey(ir.getCode(),1) == IR_KEYCODE_LEFT) {
Rotate_Left(70);
delay(300);
Stop();
} else if (ir.getIrKey(ir.getCode(),1) == IR_KEYCODE_RIGHT) {
Rotate_Right(70);
delay(300);
Stop();
} else if (ir.getIrKey(ir.getCode(),1) == IR_KEYCODE_OK) {
Stop();
} else if (ir.getIrKey(ir.getCode(),1) == IR_KEYCODE_9) {
claw_degress = claw_degress - 5;
if (claw_degress <= 50) {
claw_degress = 50;
}
myservo1.write(claw_degress);
delay(2);
} else if (ir.getIrKey(ir.getCode(),1) == IR_KEYCODE_7) {
claw_degress = claw_degress + 5;
if (claw_degress >= 180) {
claw_degress = 180;
}
myservo1.write(claw_degress);
delay(2);
} else if (ir.getIrKey(ir.getCode(),1) == IR_KEYCODE_2) {
arm_degress = arm_degress + 5;
if (arm_degress >= 180) {
arm_degress = 180;
}
myservo2.write(arm_degress);
delay(2);
} else if (ir.getIrKey(ir.getCode(),1) == IR_KEYCODE_8) {
arm_degress = arm_degress - 5;
if (arm_degress <= 0) {
arm_degress = 0;
}
myservo2.write(arm_degress);
delay(2);
} else if (ir.getIrKey(ir.getCode(),1) == IR_KEYCODE_4) {
base_degress = base_degress + 5;
if (base_degress >= 180) {
base_degress = 180;
}
myservo3.write(base_degress);
delay(2);
} else if (ir.getIrKey(ir.getCode(),1) == IR_KEYCODE_6) {
base_degress = base_degress - 5;
if (base_degress <= 0) {
base_degress = 0;
}
myservo3.write(base_degress);
delay(2);
}
}
void Move_Backward(int speed) {
digitalWrite(2,LOW);
analogWrite(5,speed);
digitalWrite(4,HIGH);
analogWrite(6,speed);
}
void Rotate_Right(int speed) {
digitalWrite(2,HIGH);
analogWrite(5,speed);
digitalWrite(4,HIGH);
analogWrite(6,speed);
}
void Rotate_Left(int speed) {
digitalWrite(2,LOW);
analogWrite(5,speed);
digitalWrite(4,LOW);
analogWrite(6,speed);
}
void Stop() {
digitalWrite(2,LOW);
analogWrite(5,0);
digitalWrite(4,HIGH);
analogWrite(6,0);
}
void Move_Forward(int speed) {
digitalWrite(2,HIGH);
analogWrite(5,speed);
digitalWrite(4,LOW);
analogWrite(6,speed);
}
IR_remote.cpp
#include "IR_remote.h"
#include "Keymap.h"
// Provides ISR
#ifndef __AVR_ATmega32U4__
#include <avr/interrupt.h>
volatile irparams_t irparams;
bool MATCH(uint8_t measured_ticks, uint8_t desired_us)
{
// Serial.print(measured_ticks);Serial.print(",");Serial.println(desired_us);
return(measured_ticks >= desired_us - (desired_us>>2)-1 && measured_ticks <= desired_us + (desired_us>>2)+1);
}
ISR(TIMER_INTR_NAME)
{
// Serial.println("ISR");
//Serial.println(millis());
uint8_t irdata = (uint8_t)digitalRead(irparams.recvpin);
// uint32_t new_time = micros();
// uint8_t timer = (new_time - irparams.lastTime)>>6;
irparams.timer++; // One more 50us tick
if (irparams.rawlen >= RAWBUF)
{
// Buffer overflow
irparams.rcvstate = STATE_STOP;
}
switch(irparams.rcvstate)
{
case STATE_IDLE: // In the middle of a gap
if (irdata == MARK)
{
irparams.rawlen = 0;
irparams.timer = 0;
irparams.rcvstate = STATE_MARK;
}
break;
case STATE_MARK: // timing MARK
if (irdata == SPACE)
{
// MARK ended, record time
irparams.rawbuf[irparams.rawlen++] = irparams.timer;
irparams.timer = 0;
irparams.rcvstate = STATE_SPACE;
}
break;
case STATE_SPACE: // timing SPACE
if (irdata == MARK)
{
// SPACE just ended, record it
irparams.rawbuf[irparams.rawlen++] = irparams.timer;
irparams.timer = 0;
irparams.rcvstate = STATE_MARK;
}
else
{ // SPACE
if (irparams.timer > GAP_TICKS)
{
// big SPACE, indicates gap between codes
// Mark current code as ready for processing
// Switch to STOP
// Don't reset timer; keep counting space width
irparams.rcvstate = STATE_STOP;
irparams.lastTime = millis();
}
}
break;
case STATE_STOP: // waiting, measuring gap
if(millis() - irparams.lastTime > 120)
{
irparams.rawlen = 0;
irparams.timer = 0;
irparams.rcvstate = STATE_IDLE;
}
else if (irdata == MARK)
{
// reset gap timer
irparams.timer = 0;
}
break;
}
// irparams.lastTime = new_time;
}
/**
* Alternate Constructor which can call your own function to map the IR to arduino port,
* no pins are used or initialized here.
* \param[in]
* None
*/
IRremote::IRremote(int pin)
{
pinMode(pin,INPUT);
irparams.recvpin = pin;
// attachInterrupt(INT0, irISR, CHANGE);
irDelayTime = 0;
irIndex = 0;
irRead = 0;
irReady = false;
irBuffer = "";
irPressed = false;
begin();
}
/**
* \par Function
* begin
* \par Description
* Initialize interrupt.
* \param[in]
* None
* \par Output
* None
* \par Return
* None
* \par Others
* None
*/
void IRremote::begin()
{
cli();
// setup pulse clock timer interrupt
//Prescale /8 (16M/8 = 0.5 microseconds per tick)
// Therefore, the timer interval can range from 0.5 to 128 microseconds
// depending on the reset value (255 to 0)
TIMER_CONFIG_NORMAL();
//Timer2 Overflow Interrupt Enable
TIMER_ENABLE_INTR;
// TIMER_RESET;
sei(); // enable interrupts
// initialize state machine variables
irparams.rawlen = 0;
irparams.rcvstate = STATE_IDLE;
}
/**
* \par Function
* end
* \par Description
* Close the interrupt.
* \param[in]
* None
* \par Output
* None
* \par Return
* None
* \par Others
* None
*/
void IRremote::end()
{
EIMSK &= ~(1 << INT0);
}
/**
* \par Function
* decode
* \par Description
* Decodes the received IR message.
* \param[in]
* None
* \par Output
* None
* \par Return
* Returns 0 if no data ready, 1 if data ready.
* \par Others
* Results of decoding are stored in results.
*/
ErrorStatus IRremote::decode()
{
rawbuf = irparams.rawbuf;
rawlen = irparams.rawlen;
if (irparams.rcvstate != STATE_STOP)
{
return ERROR;
}
if (decodeNEC())
{
begin();
return SUCCESS;
}
begin();
return ERROR;
}
/**
* \par Function
* decodeNEC
* \par Description
* Decodes NEC the received IR message.
* \param[in]
* None
* \par Output
* None
* \par Return
* Returns ERROR if decode NEC no done, SUCCESS if decode NEC done.
* \par Others
* Results of decode NEC.
*/
// NECs have a repeat only 4 items long
ErrorStatus IRremote::decodeNEC()
{
static unsigned long repeat_value = 0xFFFFFFFF;
static byte repeta_time = 0;
uint32_t data = 0;
int offset = 0; // Skip first space
// Initial mark
if (!MATCH(rawbuf[offset], NEC_HDR_MARK/50))
{
return ERROR;
}
offset++;
// Check for repeat
if (rawlen == 3 &&
MATCH(rawbuf[offset], NEC_RPT_SPACE/50) &&
MATCH(rawbuf[offset+1], NEC_BIT_MARK/50))
{
rawbuf[offset] = 0;
rawbuf[offset+1] = 0;
repeta_time++;
// if(repeta_time > 1) {
repeta_time = 0;
bits = 0;
value = repeat_value;
// Serial.println("REPEAT");
decode_type = NEC;
return SUCCESS;
// }
}
if (rawlen < (2 * NEC_BITS + 3))
{
return ERROR;
}
// Initial space
if (!MATCH(rawbuf[offset], NEC_HDR_SPACE/50))
{
return ERROR;
}
rawbuf[offset] = 0;
offset++;
for (int i = 0; i < NEC_BITS; i++)
{
if (!MATCH(rawbuf[offset], NEC_BIT_MARK/50))
{
return ERROR;
}
rawbuf[offset] = 0;
offset++;
if (MATCH(rawbuf[offset], NEC_ONE_SPACE/50))
{
//data = (data << 1) | 1;
data = (data >> 1) | 0x80000000;
}
else if (MATCH(rawbuf[offset], NEC_ZERO_SPACE/50))
{
//data <<= 1;
data >>= 1;
}
else
{
return ERROR;
}
offset++;
}
// Success
bits = NEC_BITS;
value = data;
repeat_value = data;
decode_type = NEC;
repeta_time = 0;
return SUCCESS;
}
/**
* \par Function
* mark
* \par Description
* Sends an IR mark for the specified number of microseconds.
* \param[in]
* us - THe time of a PWM.
* \par Output
* None
* \par Return
* None
* \par Others
* None
*/
void IRremote::mark(uint16_t us)
{
// Sends an IR mark for the specified number of microseconds.
// The mark output is modulated at the PWM frequency.
TIMER_ENABLE_PWM; // Enable pin 3 PWM output
delayMicroseconds(us);
}
/**
* \par Function
* space
* \par Description
* Sends an IR mark for the specified number of microseconds.
* \param[in]
* us - THe time of a PWM.
* \par Output
* None
* \par Return
* None
* \par Others
* None
*/
/* Leave pin off for time (given in microseconds) */
void IRremote::space(uint16_t us)
{
// Sends an IR space for the specified number of microseconds.
// A space is no output, so the PWM output is disabled.
TIMER_DISABLE_PWM; // Disable pin 3 PWM output
delayMicroseconds(us);
}
/**
* \par Function
* enableIROut
* \par Description
* Enable an IR for the specified number of khz.
* \param[in]
* us - THe time of a INTR.
* \par Output
* None
* \par Return
* None
* \par Others
* None
*/
void IRremote::enableIROut(uint8_t khz)
{
TIMER_DISABLE_INTR; //Timer2 disable Interrupt
TIMER_CONFIG_KHZ(khz);
}
/**
* \par Function
* enableIRIn
* \par Description
* Enable an IR to write in.
* \param[in]
* None
* \par Output
* None
* \par Return
* None
* \par Others
* None
*/
// initialization
void IRremote::enableIRIn() {
cli();
// setup pulse clock timer interrupt
//Prescale /8 (16M/8 = 0.5 microseconds per tick)
// Therefore, the timer interval can range from 0.5 to 128 microseconds
// depending on the reset value (255 to 0)
TIMER_CONFIG_NORMAL();
//Timer2 Overflow Interrupt Enable
TIMER_ENABLE_INTR;
//TIMER_RESET;
sei(); // enable interrupts
// initialize state machine variables
irparams.rcvstate = STATE_IDLE;
irparams.rawlen = 0;
// set pin modes
pinMode(irparams.recvpin, INPUT);
}
/**
* \par Function
* sendRaw
* \par Description
* Send the length of data with hz.
* \param[in]
* buf[] - The data's buffer.
* \param[in]
* len - The data's length.
* \param[in]
* hz - The hz for sending data.
* \par Output
* None
* \par Return
* None
* \par Others
* None
*/
void IRremote::sendRaw(unsigned int buf[], int len, uint8_t hz)
{
enableIROut(hz);
for (int i = 0; i < len; i++)
{
if (i & 1)
{
space(buf[i]);
}
else
{
mark(buf[i]);
}
}
space(0); // Just to be sure
}
/**
* \par Function
* getString
* \par Description
* Get string in a INTR.
* \param[in]
* None
* \par Output
* None
* \par Return
* Return the result in a IRQ.
* \par Others
* None
*/
String IRremote::getString()
{
if(decode())
{
irRead = ((value >> 8) >> 8) & 0xff;
if(irRead == 0xa || irRead == 0xd)
{
irIndex = 0;
irReady = true;
}
else
{
irBuffer += irRead;
irIndex++;
}
irDelayTime = millis();
}
else
{
if(irRead > 0)
{
if(millis() - irDelayTime > 100)
{
irPressed = false;
irRead = 0;
irDelayTime = millis();
Pre_Str = "";
}
}
}
if(irReady)
{
irReady = false;
String s = String(irBuffer);
Pre_Str = s;
irBuffer = "";
return s;
}
return Pre_Str;
}
/**
* \par Function
* getCode
* \par Description
* Get the reading code.
* \param[in]
* None
* \par Output
* None
* \par Return
* Return the result of reading.
* \par Others
* None
*/
unsigned char IRremote::getCode()
{
irIndex = 0;
loop();
return irRead;
}
String IRremote::getKeyMap(byte keycode, byte ir_type)
{
byte i;
ST_KEY_MAP *irkeymap = normal_ir_keymap;
if (ir_type == IR_TYPE_EM) irkeymap = em_ir_keymap;
for (i = 0; i < KEY_MAX; i++) {
if (irkeymap[i].keycode == keycode)
return irkeymap[i].keyname;
}
return "";
}
byte IRremote::getIrKey(byte keycode, byte ir_type)
{
byte i;
ST_KEY_MAP *irkeymap = normal_ir_keymap;
if (ir_type == IR_TYPE_EM) irkeymap = em_ir_keymap;
for (i = 0; i < KEY_MAX; i++) {
if (irkeymap[i].keycode == keycode)
return i;
}
return 0xFF;
}
/**
* \par Function
* sendString
* \par Description
* Send data.
* \param[in]
* s - The string you want to send.
* \par Output
* None
* \par Return
* None
* \par Others
* None
*/
void IRremote::sendString(String s)
{
unsigned long l;
uint8_t data;
s.concat('\n');
for(int i = 0;i < s.length();i++)
{
data = s.charAt(i);
l = 0x0000ffff & (uint8_t)(~data);
l = l << 8;
l = l + ((uint8_t)data);
l = l << 16;
l = l | 0x000000ff;
sendNEC(l,32);
delay(20);
}
enableIRIn();
}
/**
* \par Function
* sendString
* \par Description
* Send data.
* \param[in]
* v - The string you want to send.
* \par Output
* None
* \par Return
* None
* \par Others
* None
*/
void IRremote::sendString(float v)
{
dtostrf(v,5, 8, floatString);
sendString(floatString);
}
/**
* \par Function
* sendNEC
* \par Description
* Send NEC.
* \param[in]
* data - The data you want to send.
* \param[in]
* nbits - The data bit you want to send.
* \par Output
* None
* \par Return
* None
* \par Others
* None
*/
void IRremote::sendNEC(unsigned long data, int nbits)
{
enableIROut(38);
mark(NEC_HDR_MARK);
space(NEC_HDR_SPACE);
for (int i = 0; i < nbits; i++)
{
if (data & 1)
{
mark(NEC_BIT_MARK);
space(NEC_ONE_SPACE);
}
else
{
mark(NEC_BIT_MARK);
space(NEC_ZERO_SPACE);
}
data >>= 1;
}
mark(NEC_BIT_MARK);
space(0);
}
/**
* \par Function
* loop
* \par Description
* A circle of operation.
* \param[in]
* None
* \par Output0
* None
* \par Return
* None
* \par Others
* None
*/
void IRremote::loop()
{
if(decode())
{
irRead = ((value >> 8) >> 8) & 0xff;
irPressed = true;
if(irRead == 0xa || irRead == 0xd)
{
irIndex = 0;
irReady = true;
}
else
{
irBuffer += irRead;
irIndex++;
if(irIndex > 64)
{
irIndex = 0;
irBuffer = "";
}
}
irDelayTime = millis();
}
else
{
if(irRead > 0)
{
// Serial.println(millis() - irDelayTime);
if(millis() - irDelayTime > 0)
{
irPressed = false;
irRead = 0;
irDelayTime = millis();
}
}
}
// Serial.println(irRead, HEX);
}
/**
* \par Function
* keyPressed
* \par Description
* Press key.
* \param[in]
* None
* \par Output
* None
* \par Return
* Return you the pressed key or not.
* \par Others
* None
*/
boolean IRremote::keyPressed(unsigned char r)
{
irIndex = 0;
loop();
return irRead == r;
}
#endif // !defined(__AVR_ATmega32U4__)
IR_remote.h
#ifndef IRremote_h
#define IRremote_h
/* Includes ------------------------------------------------------------------*/
#include <stdint.h>
#include <stdbool.h>
#include <Arduino.h>
#ifdef ME_PORT_DEFINED
#endif // ME_PORT_DEFINED
#ifndef __AVR_ATmega32U4__
#define MARK 0
#define SPACE 1
#define NEC_BITS 32
#define USECPERTICK 50 // microseconds per clock interrupt tick
#define RAWBUF 80 // Length of raw duration buffer
typedef enum {ERROR = 0, SUCCESS = !ERROR} ErrorStatus;
#define NEC_HDR_MARK 9000
#define NEC_HDR_SPACE 4500
#define NEC_BIT_MARK 560
#define NEC_ONE_SPACE 1600
#define NEC_ZERO_SPACE 560
#define NEC_RPT_SPACE 2250
#define NEC_RPT_PERIOD 110000
#define _GAP 5000 // Minimum map between transmissions
// receiver states
#define STATE_IDLE 2
#define STATE_MARK 3
#define STATE_SPACE 4
#define STATE_STOP 5
// Values for decode_type
#define NEC 1
#define SONY 2
#define RC5 3
#define RC6 4
#define DISH 5
#define SHARP 6
#define PANASONIC 7
#define JVC 8
#define SANYO 9
#define MITSUBISHI 10
#define SAMSUNG 11
#define LG 12
#define UNKNOWN -1
#define TOPBIT 0x80000000
#ifdef F_CPU
#define SYSCLOCK F_CPU // main Arduino clock
#else
#define SYSCLOCK 16000000 // main Arduino clock
#endif
#define _GAP 5000 // Minimum map between transmissions
#define GAP_TICKS (_GAP/USECPERTICK)
#define TIMER_DISABLE_INTR (TIMSK2 = 0)
#define TIMER_ENABLE_PWM (TCCR2A |= _BV(COM2B1))
#define TIMER_DISABLE_PWM (TCCR2A &= ~(_BV(COM2B1)))
#define TIMER_ENABLE_INTR (TIMSK2 = _BV(OCIE2A))
#define TIMER_DISABLE_INTR (TIMSK2 = 0)
#define TIMER_INTR_NAME TIMER2_COMPA_vect
#define TIMER_CONFIG_KHZ(val) ({ \
const uint8_t pwmval = F_CPU / 2000 / (val); \
TCCR2A = _BV(WGM20); \
TCCR2B = _BV(WGM22) | _BV(CS20); \
OCR2A = pwmval; \
OCR2B = pwmval / 3; \
})
#define TIMER_COUNT_TOP (SYSCLOCK * USECPERTICK / 1000000)
#if (TIMER_COUNT_TOP < 256)
#define TIMER_CONFIG_NORMAL() ({ \
TCCR2A = _BV(WGM21); \
TCCR2B = _BV(CS20); \
OCR2A = TIMER_COUNT_TOP; \
TCNT2 = 0; \
})
#else
#define TIMER_CONFIG_NORMAL() ({ \
TCCR2A = _BV(WGM21); \
TCCR2B = _BV(CS21); \
OCR2A = TIMER_COUNT_TOP / 8; \
TCNT2 = 0; \
})
#endif
// information for the interrupt handler
typedef struct {
uint8_t recvpin; // pin for IR data from detector
volatile uint8_t rcvstate; // state machine
volatile uint32_t lastTime;
unsigned int timer; //
volatile uint8_t rawbuf[RAWBUF]; // raw data
volatile uint8_t rawlen; // counter of entries in rawbuf
} irparams_t;
class IRremote
{
public:
IRremote(int pin);
ErrorStatus decode();
void begin();
void end();
void loop();
boolean keyPressed(unsigned char r);
// void resume();
int8_t decode_type; // NEC, SONY, RC5, UNKNOWN
unsigned long value; // Decoded value
uint8_t bits; // Number of bits in decoded value
volatile uint8_t *rawbuf; // Raw intervals in .5 us ticks
int rawlen; // Number of records in rawbuf.
String getString();
unsigned char getCode();
String getKeyMap(byte keycode, byte ir_type = 1);
byte getIrKey(byte keycode, byte ir_type = 1);
void sendString(String s);
void sendString(float v);
void sendNEC(unsigned long data, int nbits);
void sendRaw(unsigned int buf[], int len, uint8_t hz);
void enableIROut(uint8_t khz);
void enableIRIn();
void mark(uint16_t us);
void space(uint16_t us);
private:
ErrorStatus decodeNEC();
int16_t irIndex;
char irRead;
char floatString[5];
boolean irReady;
boolean irPressed;
String irBuffer;
String Pre_Str;
double irDelayTime;
};
#endif // !__AVR_ATmega32U4__
#endif
Keymap.cpp
#include "Keymap.h"
// ST_KEY_MAP normal_ir_keymap[18] = {
// {"1", 0x45},
// {"2", 0x46},
// {"3", 0x47},
// {"4", 0x44},
// {"5", 0x40},
// {"6", 0x43},
// {"7", 0x07},
// {"8", 0x15},
// {"9", 0x09},
// {"0", 0x19},
// {"*", 0x16},
// {"#", 0x0D},
// {"up", 0x18},
// {"down", 0x52},
// {"ok", 0x1C},
// {"left", 0x08},
// {"right", 0x5A}
// };//不带logh方向盘在下方
// ST_KEY_MAP normal_ir_keymap[18] = {
// {"up", 0x46},
// {"left", 0x44},
// {"ok", 0x40},
// {"right", 0x43},
// {"down", 0x15},
// {"1", 0x16},
// {"2", 0x19},
// {"3", 0x0d},
// {"4", 0x0c},
// {"5", 0x18},
// {"6", 0x5e},
// {"7", 0x08},
// {"8", 0x1c},
// {"9", 0x5A},
// {"*", 0x42},
// {"0", 0x52},
// {"#", 0x4A}
// };
ST_KEY_MAP normal_ir_keymap[18] = {
{"1", 0x16},
{"2", 0x19},
{"3", 0x0d},
{"4", 0x0c},
{"5", 0x18},
{"6", 0x5e},
{"7", 0x08},
{"8", 0x1c},
{"9", 0x5A},
{"0", 0x52},
{"*", 0x42},
{"#", 0x4A},
{"up", 0x46},
{"down", 0x15},
{"ok", 0x40},
{"left", 0x44},
{"right", 0x43},
};//带logo LA
// ST_KEY_MAP em_ir_keymap[21] = {
// {"A", 0x45},
// {"B", 0x46},
// {"C", 0x47},
// {"D", 0x44},
// {"up", 0x40},
// {"+", 0x43},
// {"left", 0x07},
// {"ok", 0x15},
// {"right", 0x09},
// {"0", 0x16},
// {"down", 0x19},
// {"-", 0x0d},
// {"1", 0x0c},
// {"2", 0x18},
// {"3", 0x5e},
// {"4", 0x08},
// {"5", 0x1c},
// {"6", 0x5A},
// {"7", 0x42},
// {"8", 0x52},
// {"9", 0x4A}
// };
keymap.h
#ifndef _KEYMAY_H_
#define _KEYMAY_H_
#include <Arduino.h>
#define KEY_MAX 21
typedef struct
{
String keyname;
byte keycode;
}ST_KEY_MAP;
#define IR_TYPE_NORMAL 1
#define IR_TYPE_EM 2
typedef enum {
IR_KEYCODE_1 = 0,
IR_KEYCODE_2,
IR_KEYCODE_3,
IR_KEYCODE_4,
IR_KEYCODE_5,
IR_KEYCODE_6,
IR_KEYCODE_7,
IR_KEYCODE_8,
IR_KEYCODE_9,
IR_KEYCODE_0,
IR_KEYCODE_STAR, // *
IR_KEYCODE_POUND, // #
IR_KEYCODE_UP,
IR_KEYCODE_DOWN,
IR_KEYCODE_OK,
IR_KEYCODE_LEFT,
IR_KEYCODE_RIGHT,
}E_NORMAL_IR_KEYCODE;
typedef enum {
EM_IR_KEYCODE_A = 0,
EM_IR_KEYCODE_B,
EM_IR_KEYCODE_C,
EM_IR_KEYCODE_D,
EM_IR_KEYCODE_UP,
EM_IR_KEYCODE_PLUS,
EM_IR_KEYCODE_LEFT,
EM_IR_KEYCODE_OK,
EM_IR_KEYCODE_RIGHT,
EM_IR_KEYCODE_0,
EM_IR_KEYCODE_DOWN,
EM_IR_KEYCODE_REDUCE,
EM_IR_KEYCODE_1,
EM_IR_KEYCODE_2,
EM_IR_KEYCODE_3,
EM_IR_KEYCODE_4,
EM_IR_KEYCODE_5,
EM_IR_KEYCODE_6,
EM_IR_KEYCODE_7,
EM_IR_KEYCODE_8,
EM_IR_KEYCODE_9,
}E_EM_IR_KEYCODE;
extern ST_KEY_MAP normal_ir_keymap[];
extern ST_KEY_MAP em_ir_keymap[];
#endif /* _KEYMAY_H_ */