2 Commits 90fa4f7a08 ... 8aedffc156

Author SHA1 Message Date
  fstange 8aedffc156 Improved Bluetooth Communication 6 years ago
  fstange b4c30a3967 Update 6 years ago
85 changed files with 4425 additions and 94 deletions
  1. 1 0
      ArduinoOutput/Hauptprojekt.ino.eep
  2. BIN
      ArduinoOutput/Hauptprojekt.ino.elf
  3. 1368 0
      ArduinoOutput/Hauptprojekt.ino.hex
  4. 1495 0
      ArduinoOutput/Hauptprojekt.ino.with_bootloader.hex
  5. 10 0
      ArduinoOutput/build.options.json
  6. 14 0
      ArduinoOutput/core/CDC.cpp.d
  7. BIN
      ArduinoOutput/core/CDC.cpp.o
  8. 16 0
      ArduinoOutput/core/HardwareSerial.cpp.d
  9. BIN
      ArduinoOutput/core/HardwareSerial.cpp.o
  10. 16 0
      ArduinoOutput/core/HardwareSerial0.cpp.d
  11. BIN
      ArduinoOutput/core/HardwareSerial0.cpp.o
  12. 16 0
      ArduinoOutput/core/HardwareSerial1.cpp.d
  13. BIN
      ArduinoOutput/core/HardwareSerial1.cpp.o
  14. 16 0
      ArduinoOutput/core/HardwareSerial2.cpp.d
  15. BIN
      ArduinoOutput/core/HardwareSerial2.cpp.o
  16. 16 0
      ArduinoOutput/core/HardwareSerial3.cpp.d
  17. BIN
      ArduinoOutput/core/HardwareSerial3.cpp.o
  18. 16 0
      ArduinoOutput/core/IPAddress.cpp.d
  19. BIN
      ArduinoOutput/core/IPAddress.cpp.o
  20. 15 0
      ArduinoOutput/core/PluggableUSB.cpp.d
  21. BIN
      ArduinoOutput/core/PluggableUSB.cpp.o
  22. 14 0
      ArduinoOutput/core/Print.cpp.d
  23. BIN
      ArduinoOutput/core/Print.cpp.o
  24. 14 0
      ArduinoOutput/core/Stream.cpp.d
  25. BIN
      ArduinoOutput/core/Stream.cpp.o
  26. 14 0
      ArduinoOutput/core/Tone.cpp.d
  27. BIN
      ArduinoOutput/core/Tone.cpp.o
  28. 15 0
      ArduinoOutput/core/USBCore.cpp.d
  29. BIN
      ArduinoOutput/core/USBCore.cpp.o
  30. 6 0
      ArduinoOutput/core/WInterrupts.c.d
  31. BIN
      ArduinoOutput/core/WInterrupts.c.o
  32. 2 0
      ArduinoOutput/core/WMath.cpp.d
  33. BIN
      ArduinoOutput/core/WMath.cpp.o
  34. 3 0
      ArduinoOutput/core/WString.cpp.d
  35. BIN
      ArduinoOutput/core/WString.cpp.o
  36. 2 0
      ArduinoOutput/core/abi.cpp.d
  37. BIN
      ArduinoOutput/core/abi.cpp.o
  38. BIN
      ArduinoOutput/core/core.a
  39. 2 0
      ArduinoOutput/core/hooks.c.d
  40. BIN
      ArduinoOutput/core/hooks.c.o
  41. 15 0
      ArduinoOutput/core/main.cpp.d
  42. BIN
      ArduinoOutput/core/main.cpp.o
  43. 2 0
      ArduinoOutput/core/new.cpp.d
  44. BIN
      ArduinoOutput/core/new.cpp.o
  45. 6 0
      ArduinoOutput/core/wiring.c.d
  46. BIN
      ArduinoOutput/core/wiring.c.o
  47. 6 0
      ArduinoOutput/core/wiring_analog.c.d
  48. BIN
      ArduinoOutput/core/wiring_analog.c.o
  49. 6 0
      ArduinoOutput/core/wiring_digital.c.d
  50. BIN
      ArduinoOutput/core/wiring_digital.c.o
  51. 2 0
      ArduinoOutput/core/wiring_pulse.S.d
  52. BIN
      ArduinoOutput/core/wiring_pulse.S.o
  53. 6 0
      ArduinoOutput/core/wiring_pulse.c.d
  54. BIN
      ArduinoOutput/core/wiring_pulse.c.o
  55. 6 0
      ArduinoOutput/core/wiring_shift.c.d
  56. BIN
      ArduinoOutput/core/wiring_shift.c.o
  57. 8 0
      ArduinoOutput/libraries/Wire/Wire.cpp.d
  58. BIN
      ArduinoOutput/libraries/Wire/Wire.cpp.o
  59. 6 0
      ArduinoOutput/libraries/Wire/utility/twi.c.d
  60. BIN
      ArduinoOutput/libraries/Wire/utility/twi.c.o
  61. 18 0
      ArduinoOutput/libraries/Zumo32U4/L3G.cpp.d
  62. BIN
      ArduinoOutput/libraries/Zumo32U4/L3G.cpp.o
  63. 18 0
      ArduinoOutput/libraries/Zumo32U4/LSM303.cpp.d
  64. BIN
      ArduinoOutput/libraries/Zumo32U4/LSM303.cpp.o
  65. 3 0
      ArduinoOutput/libraries/Zumo32U4/PololuBuzzer.cpp.d
  66. BIN
      ArduinoOutput/libraries/Zumo32U4/PololuBuzzer.cpp.o
  67. 16 0
      ArduinoOutput/libraries/Zumo32U4/PololuHD44780.cpp.d
  68. BIN
      ArduinoOutput/libraries/Zumo32U4/PololuHD44780.cpp.o
  69. 16 0
      ArduinoOutput/libraries/Zumo32U4/Pushbutton.cpp.d
  70. BIN
      ArduinoOutput/libraries/Zumo32U4/Pushbutton.cpp.o
  71. 16 0
      ArduinoOutput/libraries/Zumo32U4/QTRSensors.cpp.d
  72. BIN
      ArduinoOutput/libraries/Zumo32U4/QTRSensors.cpp.o
  73. 17 0
      ArduinoOutput/libraries/Zumo32U4/Zumo32U4Encoders.cpp.d
  74. BIN
      ArduinoOutput/libraries/Zumo32U4/Zumo32U4Encoders.cpp.o
  75. 3 0
      ArduinoOutput/libraries/Zumo32U4/Zumo32U4IRPulses.cpp.d
  76. BIN
      ArduinoOutput/libraries/Zumo32U4/Zumo32U4IRPulses.cpp.o
  77. 4 0
      ArduinoOutput/libraries/Zumo32U4/Zumo32U4Motors.cpp.d
  78. BIN
      ArduinoOutput/libraries/Zumo32U4/Zumo32U4Motors.cpp.o
  79. 18 0
      ArduinoOutput/libraries/Zumo32U4/Zumo32U4ProximitySensors.cpp.d
  80. BIN
      ArduinoOutput/libraries/Zumo32U4/Zumo32U4ProximitySensors.cpp.o
  81. 493 0
      ArduinoOutput/preproc/ctags_target_for_gcc_minus_e.cpp
  82. 529 0
      ArduinoOutput/sketch/Hauptprojekt.ino.cpp
  83. 34 0
      ArduinoOutput/sketch/Hauptprojekt.ino.cpp.d
  84. BIN
      ArduinoOutput/sketch/Hauptprojekt.ino.cpp.o
  85. 106 94
      Zumo32U4/Hauptprojekt/Hauptprojekt.ino

+ 1 - 0
ArduinoOutput/Hauptprojekt.ino.eep

@@ -0,0 +1 @@
1
+:00000001FF

BIN
ArduinoOutput/Hauptprojekt.ino.elf


File diff suppressed because it is too large
+ 1368 - 0
ArduinoOutput/Hauptprojekt.ino.hex


File diff suppressed because it is too large
+ 1495 - 0
ArduinoOutput/Hauptprojekt.ino.with_bootloader.hex


File diff suppressed because it is too large
+ 10 - 0
ArduinoOutput/build.options.json


+ 14 - 0
ArduinoOutput/core/CDC.cpp.d

@@ -0,0 +1,14 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\CDC.cpp.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\CDC.cpp \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBAPI.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Arduino.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\binary.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WCharacter.h \
7
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WString.h \
8
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\HardwareSerial.h \
9
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Stream.h \
10
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Print.h \
11
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Printable.h \
12
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h \
13
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBDesc.h \
14
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBCore.h

BIN
ArduinoOutput/core/CDC.cpp.o


+ 16 - 0
ArduinoOutput/core/HardwareSerial.cpp.d

@@ -0,0 +1,16 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\HardwareSerial.cpp.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\HardwareSerial.cpp \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Arduino.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\binary.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WCharacter.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WString.h \
7
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\HardwareSerial.h \
8
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Stream.h \
9
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Print.h \
10
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Printable.h \
11
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBAPI.h \
12
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBDesc.h \
13
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBCore.h \
14
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h \
15
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\HardwareSerial_private.h \
16
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\wiring_private.h

BIN
ArduinoOutput/core/HardwareSerial.cpp.o


+ 16 - 0
ArduinoOutput/core/HardwareSerial0.cpp.d

@@ -0,0 +1,16 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\HardwareSerial0.cpp.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\HardwareSerial0.cpp \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Arduino.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\binary.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WCharacter.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WString.h \
7
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\HardwareSerial.h \
8
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Stream.h \
9
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Print.h \
10
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Printable.h \
11
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBAPI.h \
12
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBDesc.h \
13
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBCore.h \
14
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h \
15
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\HardwareSerial_private.h \
16
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\wiring_private.h

BIN
ArduinoOutput/core/HardwareSerial0.cpp.o


+ 16 - 0
ArduinoOutput/core/HardwareSerial1.cpp.d

@@ -0,0 +1,16 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\HardwareSerial1.cpp.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\HardwareSerial1.cpp \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Arduino.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\binary.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WCharacter.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WString.h \
7
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\HardwareSerial.h \
8
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Stream.h \
9
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Print.h \
10
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Printable.h \
11
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBAPI.h \
12
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBDesc.h \
13
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBCore.h \
14
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h \
15
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\HardwareSerial_private.h \
16
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\wiring_private.h

BIN
ArduinoOutput/core/HardwareSerial1.cpp.o


+ 16 - 0
ArduinoOutput/core/HardwareSerial2.cpp.d

@@ -0,0 +1,16 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\HardwareSerial2.cpp.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\HardwareSerial2.cpp \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Arduino.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\binary.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WCharacter.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WString.h \
7
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\HardwareSerial.h \
8
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Stream.h \
9
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Print.h \
10
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Printable.h \
11
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBAPI.h \
12
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBDesc.h \
13
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBCore.h \
14
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h \
15
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\HardwareSerial_private.h \
16
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\wiring_private.h

BIN
ArduinoOutput/core/HardwareSerial2.cpp.o


+ 16 - 0
ArduinoOutput/core/HardwareSerial3.cpp.d

@@ -0,0 +1,16 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\HardwareSerial3.cpp.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\HardwareSerial3.cpp \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Arduino.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\binary.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WCharacter.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WString.h \
7
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\HardwareSerial.h \
8
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Stream.h \
9
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Print.h \
10
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Printable.h \
11
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBAPI.h \
12
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBDesc.h \
13
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBCore.h \
14
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h \
15
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\HardwareSerial_private.h \
16
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\wiring_private.h

BIN
ArduinoOutput/core/HardwareSerial3.cpp.o


+ 16 - 0
ArduinoOutput/core/IPAddress.cpp.d

@@ -0,0 +1,16 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\IPAddress.cpp.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\IPAddress.cpp \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Arduino.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/binary.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/WCharacter.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/WString.h \
7
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/HardwareSerial.h \
8
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Stream.h \
9
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Print.h \
10
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Printable.h \
11
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBAPI.h \
12
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Arduino.h \
13
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBDesc.h \
14
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBCore.h \
15
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h \
16
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/IPAddress.h

BIN
ArduinoOutput/core/IPAddress.cpp.o


+ 15 - 0
ArduinoOutput/core/PluggableUSB.cpp.d

@@ -0,0 +1,15 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\PluggableUSB.cpp.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\PluggableUSB.cpp \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBAPI.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Arduino.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\binary.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WCharacter.h \
7
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WString.h \
8
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\HardwareSerial.h \
9
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Stream.h \
10
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Print.h \
11
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Printable.h \
12
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h \
13
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBDesc.h \
14
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBCore.h \
15
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\PluggableUSB.h

BIN
ArduinoOutput/core/PluggableUSB.cpp.o


+ 14 - 0
ArduinoOutput/core/Print.cpp.d

@@ -0,0 +1,14 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\Print.cpp.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Print.cpp \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Arduino.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\binary.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WCharacter.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WString.h \
7
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\HardwareSerial.h \
8
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Stream.h \
9
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Print.h \
10
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Printable.h \
11
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBAPI.h \
12
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBDesc.h \
13
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBCore.h \
14
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h

BIN
ArduinoOutput/core/Print.cpp.o


+ 14 - 0
ArduinoOutput/core/Stream.cpp.d

@@ -0,0 +1,14 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\Stream.cpp.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Stream.cpp \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Arduino.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\binary.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WCharacter.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WString.h \
7
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\HardwareSerial.h \
8
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Stream.h \
9
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Print.h \
10
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Printable.h \
11
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBAPI.h \
12
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBDesc.h \
13
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBCore.h \
14
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h

BIN
ArduinoOutput/core/Stream.cpp.o


+ 14 - 0
ArduinoOutput/core/Tone.cpp.d

@@ -0,0 +1,14 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\Tone.cpp.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Tone.cpp \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Arduino.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\binary.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WCharacter.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WString.h \
7
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\HardwareSerial.h \
8
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Stream.h \
9
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Print.h \
10
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Printable.h \
11
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBAPI.h \
12
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBDesc.h \
13
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBCore.h \
14
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h

BIN
ArduinoOutput/core/Tone.cpp.o


+ 15 - 0
ArduinoOutput/core/USBCore.cpp.d

@@ -0,0 +1,15 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\USBCore.cpp.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBCore.cpp \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBAPI.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Arduino.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\binary.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WCharacter.h \
7
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WString.h \
8
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\HardwareSerial.h \
9
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Stream.h \
10
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Print.h \
11
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Printable.h \
12
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h \
13
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBDesc.h \
14
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\USBCore.h \
15
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\PluggableUSB.h

BIN
ArduinoOutput/core/USBCore.cpp.o


+ 6 - 0
ArduinoOutput/core/WInterrupts.c.d

@@ -0,0 +1,6 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\WInterrupts.c.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WInterrupts.c \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\wiring_private.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Arduino.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\binary.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h

BIN
ArduinoOutput/core/WInterrupts.c.o


+ 2 - 0
ArduinoOutput/core/WMath.cpp.d

@@ -0,0 +1,2 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\WMath.cpp.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WMath.cpp

BIN
ArduinoOutput/core/WMath.cpp.o


+ 3 - 0
ArduinoOutput/core/WString.cpp.d

@@ -0,0 +1,3 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\WString.cpp.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WString.cpp \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\WString.h

BIN
ArduinoOutput/core/WString.cpp.o


+ 2 - 0
ArduinoOutput/core/abi.cpp.d

@@ -0,0 +1,2 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\abi.cpp.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\abi.cpp

BIN
ArduinoOutput/core/abi.cpp.o


BIN
ArduinoOutput/core/core.a


+ 2 - 0
ArduinoOutput/core/hooks.c.d

@@ -0,0 +1,2 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\hooks.c.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\hooks.c

BIN
ArduinoOutput/core/hooks.c.o


+ 15 - 0
ArduinoOutput/core/main.cpp.d

@@ -0,0 +1,15 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\main.cpp.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\main.cpp \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Arduino.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/binary.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/WCharacter.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/WString.h \
7
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/HardwareSerial.h \
8
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Stream.h \
9
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Print.h \
10
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Printable.h \
11
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBAPI.h \
12
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Arduino.h \
13
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBDesc.h \
14
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBCore.h \
15
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h

BIN
ArduinoOutput/core/main.cpp.o


+ 2 - 0
ArduinoOutput/core/new.cpp.d

@@ -0,0 +1,2 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\new.cpp.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\new.cpp

BIN
ArduinoOutput/core/new.cpp.o


+ 6 - 0
ArduinoOutput/core/wiring.c.d

@@ -0,0 +1,6 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\wiring.c.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\wiring.c \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\wiring_private.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Arduino.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\binary.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h

BIN
ArduinoOutput/core/wiring.c.o


+ 6 - 0
ArduinoOutput/core/wiring_analog.c.d

@@ -0,0 +1,6 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\wiring_analog.c.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\wiring_analog.c \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\wiring_private.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Arduino.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\binary.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h

BIN
ArduinoOutput/core/wiring_analog.c.o


+ 6 - 0
ArduinoOutput/core/wiring_digital.c.d

@@ -0,0 +1,6 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\wiring_digital.c.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\wiring_digital.c \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\wiring_private.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Arduino.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\binary.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h

BIN
ArduinoOutput/core/wiring_digital.c.o


+ 2 - 0
ArduinoOutput/core/wiring_pulse.S.d

@@ -0,0 +1,2 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\wiring_pulse.S.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\wiring_pulse.S

BIN
ArduinoOutput/core/wiring_pulse.S.o


+ 6 - 0
ArduinoOutput/core/wiring_pulse.c.d

@@ -0,0 +1,6 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\wiring_pulse.c.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\wiring_pulse.c \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\wiring_private.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Arduino.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\binary.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h

BIN
ArduinoOutput/core/wiring_pulse.c.o


+ 6 - 0
ArduinoOutput/core/wiring_shift.c.d

@@ -0,0 +1,6 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\core\wiring_shift.c.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\wiring_shift.c \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\wiring_private.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\Arduino.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino\binary.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h

BIN
ArduinoOutput/core/wiring_shift.c.o


+ 8 - 0
ArduinoOutput/libraries/Wire/Wire.cpp.d

@@ -0,0 +1,8 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\libraries\Wire\Wire.cpp.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\libraries\Wire\src\Wire.cpp \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\libraries\Wire\src\utility/twi.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\libraries\Wire\src\Wire.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Stream.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Print.h \
7
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/WString.h \
8
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Printable.h

BIN
ArduinoOutput/libraries/Wire/Wire.cpp.o


+ 6 - 0
ArduinoOutput/libraries/Wire/utility/twi.c.d

@@ -0,0 +1,6 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\libraries\Wire\utility\twi.c.o: \
2
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\libraries\Wire\src\utility\twi.c \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Arduino.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/binary.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\libraries\Wire\src\utility\twi.h

BIN
ArduinoOutput/libraries/Wire/utility/twi.c.o


+ 18 - 0
ArduinoOutput/libraries/Zumo32U4/L3G.cpp.d

@@ -0,0 +1,18 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\libraries\Zumo32U4\L3G.cpp.o: \
2
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4\L3G.cpp \
3
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/L3G.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Arduino.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/binary.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/WCharacter.h \
7
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/WString.h \
8
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/HardwareSerial.h \
9
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Stream.h \
10
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Print.h \
11
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Printable.h \
12
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBAPI.h \
13
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Arduino.h \
14
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBDesc.h \
15
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBCore.h \
16
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h \
17
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\libraries\Wire\src/Wire.h \
18
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Stream.h

BIN
ArduinoOutput/libraries/Zumo32U4/L3G.cpp.o


+ 18 - 0
ArduinoOutput/libraries/Zumo32U4/LSM303.cpp.d

@@ -0,0 +1,18 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\libraries\Zumo32U4\LSM303.cpp.o: \
2
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4\LSM303.cpp \
3
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/LSM303.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Arduino.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/binary.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/WCharacter.h \
7
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/WString.h \
8
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/HardwareSerial.h \
9
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Stream.h \
10
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Print.h \
11
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Printable.h \
12
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBAPI.h \
13
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Arduino.h \
14
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBDesc.h \
15
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBCore.h \
16
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h \
17
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\libraries\Wire\src/Wire.h \
18
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Stream.h

BIN
ArduinoOutput/libraries/Zumo32U4/LSM303.cpp.o


+ 3 - 0
ArduinoOutput/libraries/Zumo32U4/PololuBuzzer.cpp.d

@@ -0,0 +1,3 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\libraries\Zumo32U4\PololuBuzzer.cpp.o: \
2
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4\PololuBuzzer.cpp \
3
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4\PololuBuzzer.h

BIN
ArduinoOutput/libraries/Zumo32U4/PololuBuzzer.cpp.o


+ 16 - 0
ArduinoOutput/libraries/Zumo32U4/PololuHD44780.cpp.d

@@ -0,0 +1,16 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\libraries\Zumo32U4\PololuHD44780.cpp.o: \
2
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4\PololuHD44780.cpp \
3
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/PololuHD44780.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Arduino.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/binary.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/WCharacter.h \
7
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/WString.h \
8
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/HardwareSerial.h \
9
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Stream.h \
10
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Print.h \
11
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Printable.h \
12
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBAPI.h \
13
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Arduino.h \
14
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBDesc.h \
15
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBCore.h \
16
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h

BIN
ArduinoOutput/libraries/Zumo32U4/PololuHD44780.cpp.o


+ 16 - 0
ArduinoOutput/libraries/Zumo32U4/Pushbutton.cpp.d

@@ -0,0 +1,16 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\libraries\Zumo32U4\Pushbutton.cpp.o: \
2
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4\Pushbutton.cpp \
3
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4\Pushbutton.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Arduino.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/binary.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/WCharacter.h \
7
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/WString.h \
8
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/HardwareSerial.h \
9
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Stream.h \
10
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Print.h \
11
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Printable.h \
12
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBAPI.h \
13
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Arduino.h \
14
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBDesc.h \
15
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBCore.h \
16
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h

BIN
ArduinoOutput/libraries/Zumo32U4/Pushbutton.cpp.o


+ 16 - 0
ArduinoOutput/libraries/Zumo32U4/QTRSensors.cpp.d

@@ -0,0 +1,16 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\libraries\Zumo32U4\QTRSensors.cpp.o: \
2
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4\QTRSensors.cpp \
3
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4\QTRSensors.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Arduino.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/binary.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/WCharacter.h \
7
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/WString.h \
8
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/HardwareSerial.h \
9
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Stream.h \
10
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Print.h \
11
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Printable.h \
12
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBAPI.h \
13
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Arduino.h \
14
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBDesc.h \
15
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBCore.h \
16
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h

BIN
ArduinoOutput/libraries/Zumo32U4/QTRSensors.cpp.o


+ 17 - 0
ArduinoOutput/libraries/Zumo32U4/Zumo32U4Encoders.cpp.d

@@ -0,0 +1,17 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\libraries\Zumo32U4\Zumo32U4Encoders.cpp.o: \
2
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4\Zumo32U4Encoders.cpp \
3
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/Zumo32U4Encoders.h \
4
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/FastGPIO.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Arduino.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/binary.h \
7
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/WCharacter.h \
8
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/WString.h \
9
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/HardwareSerial.h \
10
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Stream.h \
11
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Print.h \
12
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Printable.h \
13
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBAPI.h \
14
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Arduino.h \
15
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBDesc.h \
16
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBCore.h \
17
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h

BIN
ArduinoOutput/libraries/Zumo32U4/Zumo32U4Encoders.cpp.o


+ 3 - 0
ArduinoOutput/libraries/Zumo32U4/Zumo32U4IRPulses.cpp.d

@@ -0,0 +1,3 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\libraries\Zumo32U4\Zumo32U4IRPulses.cpp.o: \
2
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4\Zumo32U4IRPulses.cpp \
3
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/Zumo32U4IRPulses.h

BIN
ArduinoOutput/libraries/Zumo32U4/Zumo32U4IRPulses.cpp.o


+ 4 - 0
ArduinoOutput/libraries/Zumo32U4/Zumo32U4Motors.cpp.d

@@ -0,0 +1,4 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\libraries\Zumo32U4\Zumo32U4Motors.cpp.o: \
2
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4\Zumo32U4Motors.cpp \
3
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/Zumo32U4Motors.h \
4
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/FastGPIO.h

BIN
ArduinoOutput/libraries/Zumo32U4/Zumo32U4Motors.cpp.o


+ 18 - 0
ArduinoOutput/libraries/Zumo32U4/Zumo32U4ProximitySensors.cpp.d

@@ -0,0 +1,18 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\libraries\Zumo32U4\Zumo32U4ProximitySensors.cpp.o: \
2
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4\Zumo32U4ProximitySensors.cpp \
3
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/Zumo32U4ProximitySensors.h \
4
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/Zumo32U4IRPulses.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Arduino.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/binary.h \
7
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/WCharacter.h \
8
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/WString.h \
9
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/HardwareSerial.h \
10
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Stream.h \
11
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Print.h \
12
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Printable.h \
13
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBAPI.h \
14
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Arduino.h \
15
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBDesc.h \
16
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBCore.h \
17
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h \
18
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/FastGPIO.h

BIN
ArduinoOutput/libraries/Zumo32U4/Zumo32U4ProximitySensors.cpp.o


+ 493 - 0
ArduinoOutput/preproc/ctags_target_for_gcc_minus_e.cpp

@@ -0,0 +1,493 @@
1
+# 1 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino"
2
+# 1 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino"
3
+//Verfassser: Felix Stange, 4056379, MET2016 
4
+//Datum: erstellt am 19.07.2017, zuletzt geändert am 06.02.2018 
5
+//Projektbeschreibung: Der Zumo fährt automatisch zwischen 2 Linien ohne diese zu überfahren mithilfe 
6
+//der Liniensensoren (3), ähnlich einer Spurhalteautomatik (heller Belag und dunkle Streifen). 
7
+//Außerdem werden Kollisionen verhindert durch Nutzung der vorderen Abstandssensoren. Kommt es 
8
+//dennoch zu einer Kollision, wird diese durch die Beschleunigungssensoren (LSM303) erkannt. 
9
+//Für den Überholvorgang werden die seitlichen Abstandssensoren und der Drehbewegungssensor (L3G) 
10
+//genutzt. Mithilfe der Quadraturencoder in den Motoren können Wegstrecken vermessen werden. 
11
+//Der Zumo kommuniziert über ein Bluetooth-Modul (HC-05) mit anderen Geräten. Die 
12
+//Kommunikation erfolgt seriell ('SERIAL' für USB, 'SERIAL1' für Bluetooth). 
13
+//Das LCD kann bei Bluetoothnutzung nicht verwendet werden. 
14
+
15
+# 14 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino" 2
16
+# 15 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino" 2
17
+
18
+Zumo32U4ProximitySensors proxSensors; //Abstandssensoren
19
+Zumo32U4LineSensors lineSensors; //Liniensensoren
20
+Zumo32U4Motors motors;
21
+Zumo32U4ButtonA buttonA;
22
+Zumo32U4Encoders encoders; //Motorencoder
23
+LSM303 compass; //Beschleunigungssensor x-Achse
24
+L3G gyro; //Drehbewegungssensor z-Achse
25
+
26
+int16_t lineValue[3]; //von links (0) nach rechts (2)
27
+uint16_t lineOffset[3];
28
+
29
+uint8_t proxValue[4]; //von links (0) nach rechts (3)
30
+
31
+int16_t encoderCounts[2]; //von links (0) nach rechts (1)
32
+int16_t driveRotation[2];
33
+
34
+int32_t rotationAngle = 0; //Drehwinkel
35
+int32_t turnAngle = 0;
36
+int16_t turnRate;
37
+int16_t gyroOffset;
38
+uint16_t gyroLastUpdate;
39
+
40
+int32_t moveDisplay = 0; //Beschleunigung
41
+int32_t moveDistance = 0;
42
+int16_t moveRate;
43
+int16_t compassOffset;
44
+uint16_t compassLastUpdate;
45
+
46
+uint16_t LastUpdate = 0; //Systemzeit
47
+uint16_t CycleTime = 0; //Zykluszeit
48
+int maxSpeed = 200; //Maximale Geschwindigkeit (möglich 400)
49
+char dir; //Fahrtrichtung, Ereignis
50
+char report[200]; //Ausgabe
51
+String btData;
52
+
53
+/*-----------------------------------------------------------------*/
54
+
55
+//Setup Liniensensoren
56
+void LineSetup()
57
+{
58
+  ledYellow(1);
59
+  lineSensors.initThreeSensors();
60
+
61
+  //Kalibrierung
62
+  uint32_t total[3] = {0, 0, 0};
63
+  for(uint8_t i = 0; i < 120; i++)
64
+  {
65
+    if (i > 30 && i <= 90) motors.setSpeeds(maxSpeed, -maxSpeed);
66
+    else motors.setSpeeds(-maxSpeed, maxSpeed);
67
+    lineSensors.read(lineOffset);
68
+    total[0] += lineOffset[0];
69
+    total[1] += lineOffset[1];
70
+    total[2] += lineOffset[2];
71
+    lineSensors.calibrate();
72
+  }
73
+  ledYellow(0);
74
+  motors.setSpeeds(0, 0);
75
+  lineOffset[0] = total[0] / 120;
76
+  lineOffset[1] = total[1] / 120;
77
+  lineOffset[2] = total[2] / 120;
78
+}
79
+
80
+//Setup Abstandssensoren
81
+void ProxSetup()
82
+{
83
+  proxSensors.initThreeSensors();
84
+}
85
+
86
+//Setup Drehbewegungssensor
87
+void GyroSetup()
88
+{
89
+  ledYellow(1);
90
+  gyro.init();
91
+
92
+  gyro.writeReg(L3G::CTRL1, 0b11111111); //Ausgaberate 800Hz, Tiefpassfilter 100Hz
93
+  gyro.writeReg(L3G::CTRL4, 0b00100000); //2000dps Auflösung
94
+  gyro.writeReg(L3G::CTRL5, 0b00000000); //Hochpassfilter ausgeschaltet
95
+
96
+  //Kalibrierung
97
+  int32_t total = 0;
98
+  for (uint16_t i = 0; i < 1024; i++)
99
+  {
100
+    while(!gyro.readReg(L3G::STATUS_REG) & 0x08);
101
+    gyro.read();
102
+    total += gyro.g.z;
103
+  }
104
+  gyroOffset = total / 1024;
105
+
106
+  gyroLastUpdate = micros();
107
+  ledYellow(0);
108
+}
109
+
110
+//Setup Beschleunigungssensor
111
+void CompassSetup()
112
+{
113
+  ledYellow(1);
114
+  compass.init();
115
+  compass.enableDefault();
116
+
117
+  //Kalibrierung
118
+  int32_t total = 0;
119
+  for (uint16_t i = 0; i < 1024; i++)
120
+  {
121
+    compass.read();
122
+    total += compass.a.x;
123
+  }
124
+  compassOffset = total / 1024;
125
+
126
+  compassLastUpdate = micros();
127
+  ledYellow(0);
128
+}
129
+
130
+/*-----------------------------------------------------------------*/
131
+
132
+void setup()
133
+{
134
+  //Initialisierung der Bluetoothverbindung
135
+  Serial1.begin(9600);
136
+  if(Serial1.available()) Serial1.println("Verbindung hergestellt");
137
+
138
+  //Initialisierung und Kalibrierung der Sensoren
139
+  Serial1.println("Sensorkalibrierung");
140
+  Wire.begin();
141
+  delay(500);
142
+  LastUpdate = micros();
143
+  ProxSetup();
144
+  LineSetup();
145
+  GyroSetup();
146
+  CompassSetup();
147
+
148
+  //Zumo bereit zu starten
149
+  Serial1.println("Zumo bereit, starte mit A");
150
+  ledGreen(1);
151
+  buttonA.waitForButton();
152
+  randomSeed(millis());
153
+  delay(500);
154
+}
155
+
156
+/*-----------------------------------------------------------------*/
157
+
158
+//Update Durchlaufzeit
159
+void TimeUpdate()
160
+{
161
+  uint16_t m = micros();
162
+  CycleTime = m - LastUpdate;
163
+  LastUpdate = m;
164
+}
165
+
166
+//Update Abstandssensoren
167
+void ProxUpdate()
168
+{
169
+  proxSensors.read();
170
+  proxValue[0] = proxSensors.countsLeftWithLeftLeds();
171
+  proxValue[1] = proxSensors.countsFrontWithLeftLeds();
172
+  proxValue[2] = proxSensors.countsFrontWithRightLeds();
173
+  proxValue[3] = proxSensors.countsRightWithRightLeds();
174
+}
175
+
176
+//Updaten Liniensensoren
177
+void LineUpdate()
178
+{
179
+  uint16_t lineRaw[3];
180
+  lineSensors.read(lineRaw);
181
+  lineValue[0] = lineRaw[0] - lineOffset[0];
182
+  lineValue[1] = lineRaw[1] - lineOffset[1];
183
+  lineValue[2] = lineRaw[2] - lineOffset[2];
184
+}
185
+
186
+//Update Drehbewegungssensor
187
+void GyroUpdate()
188
+{
189
+  gyro.read();
190
+  turnRate = gyro.g.z - gyroOffset;
191
+  uint16_t m = micros();
192
+  uint16_t dt = m - gyroLastUpdate;
193
+  gyroLastUpdate = m;
194
+  int32_t d = (int32_t)turnRate * dt;
195
+  turnAngle += (int64_t)d * 14680064 / 17578125;
196
+  rotationAngle = (((int32_t)turnAngle >> 16) * 360) >> 16;
197
+}
198
+
199
+// Update Beschleunigungssensor
200
+void CompassUpdate()
201
+{
202
+  compass.read();
203
+  moveRate = compass.a.x - compassOffset;
204
+  uint16_t m = micros();
205
+  uint16_t dt = m - compassLastUpdate;
206
+  compassLastUpdate = m;
207
+  int32_t d = (int32_t)moveRate * dt;
208
+  moveDistance += (int64_t)d * dt >> 14;
209
+  moveDisplay = moveDistance * 1000 / 9,81;
210
+}
211
+
212
+//Update Encoder
213
+void EncoderUpdate()
214
+{
215
+  encoderCounts[0] = encoders.getCountsLeft();
216
+  driveRotation[0] = encoderCounts[0] / 910; //12cpr (Motorwelle) * 75,81:1 (Getriebe) = 909,7cpr (Antriebszahnrad)
217
+  encoderCounts[1] = encoders.getCountsRight();
218
+  driveRotation[1] = encoderCounts[1] / 910;
219
+}
220
+
221
+/*-----------------------------------------------------------------*/
222
+
223
+ //Funktion Kollisionserkennung
224
+void Kollisionserkennung()
225
+{
226
+  dir = 'X';
227
+  Serial1.println("Kollision");
228
+  ledRed(1);
229
+
230
+  motors.setSpeeds(0, 0);
231
+  delay(500);
232
+  while(lineValue[0] < 300 && lineValue[2] < 300)
233
+  {
234
+    motors.setSpeeds(-maxSpeed/2, -maxSpeed/2);
235
+  }
236
+  delay(500);
237
+}
238
+
239
+//Funktion Hindernisumfahrung
240
+void Hindernisumfahren()
241
+{
242
+  dir = 'U';
243
+  Serial1.println("Hindernisumfahren");
244
+  ledYellow(1);
245
+
246
+  //Schritt 1: Spurwechsel links   
247
+  //links drehen                        
248
+  rotationAngle = 0;
249
+  GyroUpdate();
250
+  while(rotationAngle < 45)
251
+  {
252
+    GyroUpdate();
253
+    motors.setSpeeds(maxSpeed/2, maxSpeed);
254
+  }
255
+  //geradeaus über Mittellinie fahren
256
+  LineUpdate();
257
+  while(lineValue[2] < 300)
258
+  {
259
+    LineUpdate();
260
+    motors.setSpeeds(maxSpeed, maxSpeed);
261
+  }
262
+  //rechts drehen
263
+  GyroUpdate();
264
+  while(rotationAngle > 0)
265
+  {
266
+    GyroUpdate();
267
+    motors.setSpeeds(maxSpeed, maxSpeed/2);
268
+  }
269
+  //geradeaus fahren
270
+  motors.setSpeeds(maxSpeed, maxSpeed);
271
+
272
+  //Gegenverkehr beachten
273
+  proxSensors.read();
274
+  proxValue[1] = proxSensors.countsFrontWithLeftLeds();
275
+  proxValue[2] = proxSensors.countsFrontWithRightLeds();
276
+  if(proxValue[1] < 4 || proxValue[2] < 4)
277
+  {
278
+    //Schritt 2: Hindernis passieren
279
+    motors.setSpeeds(maxSpeed, maxSpeed);
280
+    delay(1000);
281
+    proxSensors.read();
282
+    proxValue[3] = proxSensors.countsRightWithRightLeds();
283
+    while(proxValue[3] > 4)
284
+    {
285
+      motors.setSpeeds(maxSpeed, maxSpeed);
286
+      proxSensors.read();
287
+      proxValue[3] = proxSensors.countsRightWithRightLeds();
288
+      Spurhalten();
289
+    }
290
+  }
291
+
292
+  //Schritt 3: Spurwechsel rechts     
293
+  //rechts drehen                     
294
+  rotationAngle = 0;
295
+  GyroUpdate();
296
+  while(rotationAngle > -45)
297
+  {
298
+    GyroUpdate();
299
+    motors.setSpeeds(maxSpeed, maxSpeed/2);
300
+  }
301
+  //geradeaus über Mittellinie fahren
302
+  LineUpdate();
303
+  while(lineValue[0] < 300)
304
+  {
305
+    LineUpdate();
306
+    motors.setSpeeds(maxSpeed, maxSpeed);
307
+  }
308
+  //links drehen
309
+  GyroUpdate();
310
+  while(rotationAngle < 0)
311
+  {
312
+    GyroUpdate();
313
+    motors.setSpeeds(maxSpeed/2, maxSpeed);
314
+  }
315
+  //geradeaus fahren
316
+  motors.setSpeeds(maxSpeed, maxSpeed);
317
+
318
+  Serial1.println("Umfahren beendet");
319
+}
320
+
321
+//Funktion Abbiegen
322
+void Abbiegen()
323
+{
324
+  dir = 'A';
325
+  ledYellow(1);
326
+  Serial1.println("Abbiegen");
327
+
328
+  //Kodierung analysieren
329
+  bool leftCode; //links => 1
330
+  bool rightCode; //rechts => 2
331
+  if(lineValue[0] > 1000) leftCode = true;
332
+  else leftCode = false;
333
+  if(lineValue[2] > 1000) rightCode = true;
334
+  else rightCode = false;
335
+
336
+  //Zufallszahl erzeugen
337
+  uint8_t randy; //geradeaus => 0
338
+  if(leftCode == true && rightCode == true) randy = random(1, 3); //1, 2
339
+  else if(leftCode == true && rightCode == false) randy = random(0, 2); //0, 1
340
+  else if(leftCode == false && rightCode == true)
341
+  {
342
+    randy = random(3); //0, (1), 2
343
+    while(randy == 1) randy = random(3); //!1 => 0, 2
344
+  }
345
+
346
+  //links Abbiegen
347
+  if(randy == 1 && leftCode == true)
348
+  {
349
+    //zur Kreuzungsmitte fahren
350
+    driveRotation[0] = 0;
351
+    driveRotation[1] = 0;
352
+    while(driveRotation[0] != 1 && driveRotation[1] != 1 && lineValue[0] < 300 && lineValue[2] < 300)
353
+    {
354
+      EncoderUpdate();
355
+      motors.setSpeeds(maxSpeed/2, maxSpeed/2);
356
+    }
357
+    //links drehen
358
+    rotationAngle = 0;
359
+    GyroUpdate();
360
+    while(rotationAngle != 90)
361
+    {
362
+      GyroUpdate();
363
+      if(lineValue[0] > 300 && lineValue[0] < 500) motors.setSpeeds(maxSpeed/2, maxSpeed/2);
364
+      else if(lineValue[1] > 300 && lineValue[1] < 500) motors.setSpeeds(-maxSpeed/4, -maxSpeed/4);
365
+      else if(lineValue[2] > 300 && lineValue[2] < 500) motors.setSpeeds(0, maxSpeed/2);
366
+      else motors.setSpeeds(maxSpeed/4, maxSpeed/2);
367
+    }
368
+    //geradeaus fahren
369
+    motors.setSpeeds(maxSpeed/2, maxSpeed/2);
370
+  }
371
+
372
+  //rechts Abbiegen
373
+  else if(randy == 2 && rightCode == true)
374
+  {
375
+    //rechts drehen
376
+    rotationAngle = 0;
377
+    GyroUpdate();
378
+    while(rotationAngle != -90)
379
+    {
380
+      GyroUpdate();
381
+      if(lineValue[0] > 300 && lineValue[0] < 500) motors.setSpeeds(maxSpeed/2, 0);
382
+      else if(lineValue[1] > 300 && lineValue[1] < 500) motors.setSpeeds(-maxSpeed/4, -maxSpeed/4);
383
+      else if(lineValue[2] > 300 && lineValue[2] < 500) motors.setSpeeds(maxSpeed/2, maxSpeed/2);
384
+      else motors.setSpeeds(maxSpeed/2, maxSpeed/4);
385
+    }
386
+    //geradeaus fahren
387
+    motors.setSpeeds(maxSpeed/2, maxSpeed/2);
388
+  }
389
+
390
+  //nicht Abbiegen, geradeaus fahren
391
+  else motors.setSpeeds(maxSpeed/2, maxSpeed/2);
392
+  delay(500);
393
+
394
+  Serial1.println("Abbiegen beendet");
395
+}
396
+
397
+//Funktion Spurhalten
398
+void Spurhalten()
399
+{
400
+  //linke Linie erreicht, nach rechts fahren
401
+  if(lineValue[0] > 300 && lineValue[0] < 500)
402
+  {
403
+    dir = 'R';
404
+    ledYellow(1);
405
+    Serial1.println("Spur nach rechts korrigieren");
406
+    motors.setSpeeds(maxSpeed, maxSpeed/2);
407
+    delay(100);
408
+  }
409
+
410
+  //rechte Linie erreicht, nach links fahren
411
+  else if(lineValue[2] > 300 && lineValue[2] < 500)
412
+  {
413
+    dir = 'L';
414
+    ledYellow(1);
415
+    Serial1.println("Spur nach links korrigieren");
416
+    motors.setSpeeds(maxSpeed/2, maxSpeed);
417
+    delay(100);
418
+  }
419
+
420
+  //Linie überfahren, zurücksetzen
421
+  else if(lineValue[1] > 300 && lineValue[1] < 500)
422
+  {
423
+    dir = 'B';
424
+    ledRed(1);
425
+    Serial1.println("Spur verlassen");
426
+    Serial1.println("1");
427
+    while(lineValue[0] < 300 && lineValue[2] < 300) //Zumo fährt solange rückwärst bis er wieder auf der Spur steht
428
+    {
429
+      motors.setSpeeds(-maxSpeed/2, -maxSpeed/2);
430
+    }
431
+    delay(500);
432
+  }
433
+
434
+  //normale Fahrt
435
+  else
436
+  {
437
+    dir = 'F';
438
+    ledGreen(1);
439
+    Serial1.println("Spur folgen");
440
+    motors.setSpeeds(maxSpeed, maxSpeed);
441
+  }
442
+}
443
+
444
+//Funktion Serielle Ausgabe
445
+void SerialOutput()
446
+{
447
+  snprintf_P(report, sizeof(report),
448
+    (__extension__({static const char __c[] __attribute__((__progmem__)) = ("Abstand: %d %d %d %d   Linie: %d %d %d   Weg: %d %d   Winkel: %d   Zeit: %d"); &__c[0];})),
449
+    proxValue[0], proxValue[1], proxValue[2], proxValue[3],
450
+    lineValue[0], lineValue[1], lineValue[2],
451
+    driveRotation[0], driveRotation[1], rotationAngle, CycleTime);
452
+  Serial1.println(report);
453
+}
454
+
455
+/*-----------------------------------------------------------------*/
456
+
457
+void loop()
458
+{
459
+  ledGreen(0);
460
+  ledYellow(0);
461
+  ledRed(0);
462
+
463
+  //Abfragen der Sensordaten
464
+  TimeUpdate();
465
+  LineUpdate();
466
+  ProxUpdate();
467
+  GyroUpdate();
468
+  CompassUpdate();
469
+  EncoderUpdate();
470
+
471
+  //Funktionsauswahl
472
+  btData = Serial1.readString();
473
+  //verfügbare Funktionen bei laufenden Manövern
474
+  if(btData == "Abbiegen" || btData == "Hindernisumfahren" || btData == "Kollision")
475
+  {
476
+    maxSpeed = 100;
477
+    if(moveRate > 1000 || proxValue[1] > 4 || proxValue[2] > 4 || lineValue[0] > 1000 ||
478
+    lineValue[2] > 1000) motors.setSpeeds(0, 0);
479
+    else Spurhalten();
480
+  }
481
+  //verfügbare Funktionen im Normalfall
482
+  else
483
+  {
484
+    if(moveRate > 1000) Kollisionserkennung();
485
+    else if(proxValue[1] == 6 || proxValue[2] == 6) motors.setSpeeds(0, 0);
486
+    else if(proxValue[1] == 5 || proxValue[2] == 5) Hindernisumfahren();
487
+    else if(lineValue[0] > 1000 || lineValue[2] > 1000) Abbiegen();
488
+    else Spurhalten();
489
+  }
490
+
491
+  //Ausgabe über Bluetoothverbindung
492
+  SerialOutput();
493
+}

+ 529 - 0
ArduinoOutput/sketch/Hauptprojekt.ino.cpp

@@ -0,0 +1,529 @@
1
+#include <Arduino.h>
2
+#line 1 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino"
3
+#line 1 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino"
4
+//Verfassser: Felix Stange, 4056379, MET2016 
5
+//Datum: erstellt am 19.07.2017, zuletzt geändert am 06.02.2018 
6
+//Projektbeschreibung: Der Zumo fährt automatisch zwischen 2 Linien ohne diese zu überfahren mithilfe 
7
+//der Liniensensoren (3), ähnlich einer Spurhalteautomatik (heller Belag und dunkle Streifen). 
8
+//Außerdem werden Kollisionen verhindert durch Nutzung der vorderen Abstandssensoren. Kommt es 
9
+//dennoch zu einer Kollision, wird diese durch die Beschleunigungssensoren (LSM303) erkannt. 
10
+//Für den Überholvorgang werden die seitlichen Abstandssensoren und der Drehbewegungssensor (L3G) 
11
+//genutzt. Mithilfe der Quadraturencoder in den Motoren können Wegstrecken vermessen werden. 
12
+//Der Zumo kommuniziert über ein Bluetooth-Modul (HC-05) mit anderen Geräten. Die 
13
+//Kommunikation erfolgt seriell ('SERIAL' für USB, 'SERIAL1' für Bluetooth). 
14
+//Das LCD kann bei Bluetoothnutzung nicht verwendet werden. 
15
+
16
+#include <Wire.h>
17
+#include <Zumo32U4.h>
18
+
19
+Zumo32U4ProximitySensors  proxSensors;  //Abstandssensoren
20
+Zumo32U4LineSensors       lineSensors;  //Liniensensoren
21
+Zumo32U4Motors            motors;
22
+Zumo32U4ButtonA           buttonA;
23
+Zumo32U4Encoders          encoders;     //Motorencoder
24
+LSM303                    compass;      //Beschleunigungssensor x-Achse
25
+L3G                       gyro;         //Drehbewegungssensor z-Achse
26
+
27
+int16_t   lineValue[3];                 //von links (0) nach rechts (2)
28
+uint16_t  lineOffset[3]; 
29
+
30
+uint8_t   proxValue[4];                 //von links (0) nach rechts (3)
31
+
32
+int16_t   encoderCounts[2];             //von links (0) nach rechts (1)
33
+int16_t   driveRotation[2];
34
+
35
+int32_t   rotationAngle = 0;            //Drehwinkel
36
+int32_t   turnAngle = 0; 
37
+int16_t   turnRate;
38
+int16_t   gyroOffset;
39
+uint16_t  gyroLastUpdate;
40
+
41
+int32_t   moveDisplay = 0;              //Beschleunigung
42
+int32_t   moveDistance = 0;   
43
+int16_t   moveRate;
44
+int16_t   compassOffset;                
45
+uint16_t  compassLastUpdate;
46
+
47
+uint16_t  LastUpdate = 0;               //Systemzeit
48
+uint16_t  CycleTime = 0;                //Zykluszeit
49
+int       maxSpeed = 200;               //Maximale Geschwindigkeit (möglich 400)
50
+char      dir;                          //Fahrtrichtung, Ereignis
51
+char      report[200];                  //Ausgabe
52
+String    btData;
53
+
54
+/*-----------------------------------------------------------------*/
55
+
56
+//Setup Liniensensoren
57
+#line 54 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino"
58
+void LineSetup();
59
+#line 79 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino"
60
+void ProxSetup();
61
+#line 85 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino"
62
+void GyroSetup();
63
+#line 109 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino"
64
+void CompassSetup();
65
+#line 130 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino"
66
+void setup();
67
+#line 157 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino"
68
+void TimeUpdate();
69
+#line 165 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino"
70
+void ProxUpdate();
71
+#line 175 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino"
72
+void LineUpdate();
73
+#line 185 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino"
74
+void GyroUpdate();
75
+#line 198 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino"
76
+void CompassUpdate();
77
+#line 211 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino"
78
+void EncoderUpdate();
79
+#line 222 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino"
80
+void Kollisionserkennung();
81
+#line 238 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino"
82
+void Hindernisumfahren();
83
+#line 320 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino"
84
+void Abbiegen();
85
+#line 396 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino"
86
+void Spurhalten();
87
+#line 443 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino"
88
+void SerialOutput();
89
+#line 455 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino"
90
+void loop();
91
+#line 54 "c:\\Users\\Carolin\\Downloads\\VSCode\\Zumo32U4\\Zumo32U4\\Hauptprojekt\\Hauptprojekt.ino"
92
+void LineSetup()                                            
93
+{
94
+  ledYellow(1);
95
+  lineSensors.initThreeSensors();     
96
+  
97
+  //Kalibrierung
98
+  uint32_t total[3] = {0, 0, 0};  
99
+  for(uint8_t i = 0; i < 120; i++)                                
100
+  {
101
+    if (i > 30 && i <= 90) motors.setSpeeds(maxSpeed, -maxSpeed);
102
+    else motors.setSpeeds(-maxSpeed, maxSpeed);
103
+    lineSensors.read(lineOffset);  
104
+    total[0] += lineOffset[0];
105
+    total[1] += lineOffset[1];
106
+    total[2] += lineOffset[2];
107
+    lineSensors.calibrate();                                      
108
+  }
109
+  ledYellow(0);
110
+  motors.setSpeeds(0, 0);
111
+  lineOffset[0] = total[0] / 120;
112
+  lineOffset[1] = total[1] / 120;
113
+  lineOffset[2] = total[2] / 120;
114
+}
115
+
116
+//Setup Abstandssensoren
117
+void ProxSetup()
118
+{
119
+  proxSensors.initThreeSensors();  
120
+}
121
+
122
+//Setup Drehbewegungssensor
123
+void GyroSetup()                                            
124
+{                                                                 
125
+  ledYellow(1);
126
+  gyro.init();
127
+
128
+  gyro.writeReg(L3G::CTRL1, 0b11111111);                          //Ausgaberate 800Hz, Tiefpassfilter 100Hz
129
+  gyro.writeReg(L3G::CTRL4, 0b00100000);                          //2000dps Auflösung
130
+  gyro.writeReg(L3G::CTRL5, 0b00000000);                          //Hochpassfilter ausgeschaltet
131
+
132
+  //Kalibrierung
133
+  int32_t total = 0;                                              
134
+  for (uint16_t i = 0; i < 1024; i++)
135
+  {
136
+    while(!gyro.readReg(L3G::STATUS_REG) & 0x08);
137
+    gyro.read();
138
+    total += gyro.g.z;
139
+  }
140
+  gyroOffset = total / 1024;
141
+
142
+  gyroLastUpdate = micros();
143
+  ledYellow(0);
144
+}
145
+
146
+//Setup Beschleunigungssensor
147
+void CompassSetup()                                            
148
+{
149
+  ledYellow(1);
150
+  compass.init();
151
+  compass.enableDefault();  
152
+
153
+  //Kalibrierung
154
+  int32_t total = 0;                                              
155
+  for (uint16_t i = 0; i < 1024; i++)
156
+  {
157
+    compass.read();
158
+    total += compass.a.x;
159
+  }
160
+  compassOffset = total / 1024;
161
+
162
+  compassLastUpdate = micros();  
163
+  ledYellow(0);
164
+}
165
+
166
+/*-----------------------------------------------------------------*/
167
+
168
+void setup() 
169
+{
170
+  //Initialisierung der Bluetoothverbindung
171
+  Serial1.begin(9600);                                              
172
+  if(Serial1.available()) Serial1.println("Verbindung hergestellt");  
173
+
174
+  //Initialisierung und Kalibrierung der Sensoren
175
+  Serial1.println("Sensorkalibrierung");   
176
+  Wire.begin();                       
177
+  delay(500);
178
+  LastUpdate = micros();
179
+  ProxSetup();
180
+  LineSetup();                                                
181
+  GyroSetup();
182
+  CompassSetup();
183
+  
184
+  //Zumo bereit zu starten
185
+  Serial1.println("Zumo bereit, starte mit A");
186
+  ledGreen(1);
187
+  buttonA.waitForButton();
188
+  randomSeed(millis());
189
+  delay(500);
190
+}
191
+
192
+/*-----------------------------------------------------------------*/
193
+
194
+//Update Durchlaufzeit
195
+void TimeUpdate()
196
+{
197
+  uint16_t m = micros();
198
+  CycleTime = m - LastUpdate;
199
+  LastUpdate = m;
200
+}
201
+
202
+//Update Abstandssensoren
203
+void ProxUpdate()
204
+{
205
+  proxSensors.read();
206
+  proxValue[0] = proxSensors.countsLeftWithLeftLeds();
207
+  proxValue[1] = proxSensors.countsFrontWithLeftLeds();
208
+  proxValue[2] = proxSensors.countsFrontWithRightLeds();  
209
+  proxValue[3] = proxSensors.countsRightWithRightLeds(); 
210
+}
211
+
212
+//Updaten Liniensensoren
213
+void LineUpdate()
214
+{
215
+  uint16_t  lineRaw[3];
216
+  lineSensors.read(lineRaw);
217
+  lineValue[0] = lineRaw[0] - lineOffset[0];
218
+  lineValue[1] = lineRaw[1] - lineOffset[1];
219
+  lineValue[2] = lineRaw[2] - lineOffset[2];
220
+}
221
+
222
+//Update Drehbewegungssensor
223
+void GyroUpdate()                                                 
224
+{
225
+  gyro.read();
226
+  turnRate = gyro.g.z - gyroOffset;
227
+  uint16_t m = micros();
228
+  uint16_t dt = m - gyroLastUpdate;
229
+  gyroLastUpdate = m;
230
+  int32_t d = (int32_t)turnRate * dt;
231
+  turnAngle += (int64_t)d * 14680064 / 17578125;
232
+  rotationAngle = (((int32_t)turnAngle >> 16) * 360) >> 16;
233
+}
234
+
235
+// Update Beschleunigungssensor
236
+void CompassUpdate()
237
+{
238
+  compass.read();
239
+  moveRate = compass.a.x - compassOffset;
240
+  uint16_t m = micros();
241
+  uint16_t dt = m - compassLastUpdate;
242
+  compassLastUpdate = m;
243
+  int32_t d = (int32_t)moveRate * dt;
244
+  moveDistance += (int64_t)d * dt >> 14;
245
+  moveDisplay = moveDistance * 1000 / 9,81;
246
+}
247
+
248
+//Update Encoder
249
+void EncoderUpdate()
250
+{
251
+  encoderCounts[0] = encoders.getCountsLeft();
252
+  driveRotation[0] = encoderCounts[0] / 910;                        //12cpr (Motorwelle) * 75,81:1 (Getriebe) = 909,7cpr (Antriebszahnrad)
253
+  encoderCounts[1] = encoders.getCountsRight();
254
+  driveRotation[1] = encoderCounts[1] / 910;
255
+}
256
+
257
+/*-----------------------------------------------------------------*/
258
+
259
+ //Funktion Kollisionserkennung
260
+void Kollisionserkennung()                                            
261
+{
262
+  dir = 'X';
263
+  Serial1.println("Kollision");
264
+  ledRed(1);
265
+
266
+  motors.setSpeeds(0, 0);
267
+  delay(500);
268
+  while(lineValue[0] < 300 && lineValue[2] < 300)
269
+  {
270
+    motors.setSpeeds(-maxSpeed/2, -maxSpeed/2);
271
+  }
272
+  delay(500); 
273
+}
274
+
275
+//Funktion Hindernisumfahrung
276
+void Hindernisumfahren()                                              
277
+{
278
+  dir = 'U';
279
+  Serial1.println("Hindernisumfahren"); 
280
+  ledYellow(1);
281
+
282
+  //Schritt 1: Spurwechsel links   
283
+  //links drehen                        
284
+  rotationAngle = 0;                                                      
285
+  GyroUpdate();                                                 
286
+  while(rotationAngle < 45)          
287
+  {
288
+    GyroUpdate();  
289
+    motors.setSpeeds(maxSpeed/2, maxSpeed); 
290
+  }
291
+  //geradeaus über Mittellinie fahren
292
+  LineUpdate();
293
+  while(lineValue[2] < 300)          
294
+  {
295
+    LineUpdate();
296
+    motors.setSpeeds(maxSpeed, maxSpeed); 
297
+  } 
298
+  //rechts drehen
299
+  GyroUpdate();
300
+  while(rotationAngle > 0)                                               
301
+  {                                                                   
302
+    GyroUpdate();
303
+    motors.setSpeeds(maxSpeed, maxSpeed/2); 
304
+  }
305
+  //geradeaus fahren
306
+  motors.setSpeeds(maxSpeed, maxSpeed); 
307
+
308
+  //Gegenverkehr beachten
309
+  proxSensors.read();                                                 
310
+  proxValue[1] = proxSensors.countsFrontWithLeftLeds();
311
+  proxValue[2] = proxSensors.countsFrontWithRightLeds();  
312
+  if(proxValue[1] < 4 || proxValue[2] < 4)
313
+  {
314
+    //Schritt 2: Hindernis passieren
315
+    motors.setSpeeds(maxSpeed, maxSpeed);                    
316
+    delay(1000);
317
+    proxSensors.read();
318
+    proxValue[3] = proxSensors.countsRightWithRightLeds();  
319
+    while(proxValue[3] > 4)
320
+    {
321
+      motors.setSpeeds(maxSpeed, maxSpeed);  
322
+      proxSensors.read();
323
+      proxValue[3] = proxSensors.countsRightWithRightLeds();  
324
+      Spurhalten();
325
+    }
326
+  }
327
+  
328
+  //Schritt 3: Spurwechsel rechts     
329
+  //rechts drehen                     
330
+  rotationAngle = 0;                                                      
331
+  GyroUpdate();                                                 
332
+  while(rotationAngle > -45)          
333
+  {
334
+    GyroUpdate();  
335
+    motors.setSpeeds(maxSpeed, maxSpeed/2); 
336
+  }
337
+  //geradeaus über Mittellinie fahren
338
+  LineUpdate();
339
+  while(lineValue[0] < 300)          
340
+  {
341
+    LineUpdate();
342
+    motors.setSpeeds(maxSpeed, maxSpeed); 
343
+  } 
344
+  //links drehen
345
+  GyroUpdate();
346
+  while(rotationAngle < 0)                                               
347
+  {                                                                   
348
+    GyroUpdate();
349
+    motors.setSpeeds(maxSpeed/2, maxSpeed); 
350
+  }
351
+  //geradeaus fahren
352
+  motors.setSpeeds(maxSpeed, maxSpeed); 
353
+
354
+  Serial1.println("Umfahren beendet");  
355
+}
356
+
357
+//Funktion Abbiegen
358
+void Abbiegen()
359
+{
360
+  dir = 'A';
361
+  ledYellow(1); 
362
+  Serial1.println("Abbiegen");  
363
+
364
+  //Kodierung analysieren
365
+  bool  leftCode;                                                         //links => 1
366
+  bool  rightCode;                                                        //rechts => 2
367
+  if(lineValue[0] > 1000) leftCode = true;
368
+  else leftCode = false;
369
+  if(lineValue[2] > 1000) rightCode = true;
370
+  else rightCode = false;
371
+
372
+  //Zufallszahl erzeugen
373
+  uint8_t randy;                                                          //geradeaus => 0
374
+  if(leftCode == true && rightCode == true) randy = random(1, 3);         //1, 2
375
+  else if(leftCode == true && rightCode == false) randy = random(0, 2);   //0, 1
376
+  else if(leftCode == false && rightCode == true)
377
+  {
378
+    randy = random(3);                                                    //0, (1), 2
379
+    while(randy == 1) randy = random(3);                                  //!1 => 0, 2
380
+  }
381
+
382
+  //links Abbiegen
383
+  if(randy == 1 && leftCode == true) 
384
+  {
385
+    //zur Kreuzungsmitte fahren
386
+    driveRotation[0] = 0;
387
+    driveRotation[1] = 0;
388
+    while(driveRotation[0] != 1 && driveRotation[1] != 1 && lineValue[0] < 300 && lineValue[2] < 300)
389
+    {
390
+      EncoderUpdate();
391
+      motors.setSpeeds(maxSpeed/2, maxSpeed/2);
392
+    }
393
+    //links drehen
394
+    rotationAngle = 0;
395
+    GyroUpdate();
396
+    while(rotationAngle != 90)
397
+    {
398
+      GyroUpdate();
399
+      if(lineValue[0] > 300 && lineValue[0] < 500) motors.setSpeeds(maxSpeed/2, maxSpeed/2);
400
+      else if(lineValue[1] > 300 && lineValue[1] < 500) motors.setSpeeds(-maxSpeed/4, -maxSpeed/4);
401
+      else if(lineValue[2] > 300 && lineValue[2] < 500) motors.setSpeeds(0, maxSpeed/2);
402
+      else motors.setSpeeds(maxSpeed/4, maxSpeed/2);
403
+    }
404
+    //geradeaus fahren
405
+    motors.setSpeeds(maxSpeed/2, maxSpeed/2);
406
+  }
407
+
408
+  //rechts Abbiegen
409
+  else if(randy == 2 && rightCode == true)
410
+  {
411
+    //rechts drehen
412
+    rotationAngle = 0;
413
+    GyroUpdate();
414
+    while(rotationAngle != -90)
415
+    {
416
+      GyroUpdate();
417
+      if(lineValue[0] > 300 && lineValue[0] < 500) motors.setSpeeds(maxSpeed/2, 0);
418
+      else if(lineValue[1] > 300 && lineValue[1] < 500) motors.setSpeeds(-maxSpeed/4, -maxSpeed/4);
419
+      else if(lineValue[2] > 300 && lineValue[2] < 500) motors.setSpeeds(maxSpeed/2, maxSpeed/2);
420
+      else motors.setSpeeds(maxSpeed/2, maxSpeed/4);
421
+    }
422
+    //geradeaus fahren
423
+    motors.setSpeeds(maxSpeed/2, maxSpeed/2); 
424
+  }  
425
+
426
+  //nicht Abbiegen, geradeaus fahren
427
+  else motors.setSpeeds(maxSpeed/2, maxSpeed/2); 
428
+  delay(500);
429
+
430
+  Serial1.println("Abbiegen beendet");  
431
+}
432
+
433
+//Funktion Spurhalten
434
+void Spurhalten()                                                   
435
+{
436
+  //linke Linie erreicht, nach rechts fahren
437
+  if(lineValue[0] > 300 && lineValue[0] < 500)                      
438
+  {
439
+    dir = 'R';
440
+    ledYellow(1); 
441
+    Serial1.println("Spur nach rechts korrigieren");  
442
+    motors.setSpeeds(maxSpeed, maxSpeed/2);
443
+    delay(100);    
444
+  }
445
+
446
+  //rechte Linie erreicht, nach links fahren
447
+  else if(lineValue[2] > 300 && lineValue[2] < 500)                 
448
+  {
449
+    dir = 'L'; 
450
+    ledYellow(1); 
451
+    Serial1.println("Spur nach links korrigieren");  
452
+    motors.setSpeeds(maxSpeed/2, maxSpeed);  
453
+    delay(100);  
454
+  }
455
+
456
+  //Linie überfahren, zurücksetzen
457
+  else if(lineValue[1] > 300 && lineValue[1] < 500)                 
458
+  { 
459
+    dir = 'B';  
460
+    ledRed(1); 
461
+    Serial1.println("Spur verlassen");  
462
+    Serial1.println("1"); 
463
+    while(lineValue[0] < 300 && lineValue[2] < 300)                 //Zumo fährt solange rückwärst bis er wieder auf der Spur steht
464
+    {
465
+      motors.setSpeeds(-maxSpeed/2, -maxSpeed/2);
466
+    }
467
+    delay(500);    
468
+  }  
469
+
470
+  //normale Fahrt
471
+  else                                                                
472
+  {
473
+    dir = 'F'; 
474
+    ledGreen(1); 
475
+    Serial1.println("Spur folgen");  
476
+    motors.setSpeeds(maxSpeed, maxSpeed);
477
+  }
478
+}
479
+
480
+//Funktion Serielle Ausgabe
481
+void SerialOutput()                                                     
482
+{
483
+  snprintf_P(report, sizeof(report),
484
+    PSTR("Abstand: %d %d %d %d   Linie: %d %d %d   Weg: %d %d   Winkel: %d   Zeit: %d"),
485
+    proxValue[0], proxValue[1], proxValue[2], proxValue[3], 
486
+    lineValue[0], lineValue[1], lineValue[2],
487
+    driveRotation[0], driveRotation[1], rotationAngle, CycleTime);
488
+  Serial1.println(report);
489
+}
490
+
491
+/*-----------------------------------------------------------------*/
492
+
493
+void loop() 
494
+{
495
+  ledGreen(0);
496
+  ledYellow(0);
497
+  ledRed(0);
498
+
499
+  //Abfragen der Sensordaten
500
+  TimeUpdate();
501
+  LineUpdate();                                         
502
+  ProxUpdate();
503
+  GyroUpdate();
504
+  CompassUpdate();
505
+  EncoderUpdate();
506
+
507
+  //Funktionsauswahl
508
+  btData = Serial1.readString();
509
+  //verfügbare Funktionen bei laufenden Manövern
510
+  if(btData == "Abbiegen" || btData == "Hindernisumfahren" || btData == "Kollision")                                                  
511
+  {
512
+    maxSpeed = 100;
513
+    if(moveRate > 1000 || proxValue[1] > 4 || proxValue[2] > 4 || lineValue[0] > 1000 || 
514
+    lineValue[2] > 1000) motors.setSpeeds(0, 0);  
515
+    else Spurhalten();
516
+  }
517
+  //verfügbare Funktionen im Normalfall
518
+  else                                                              
519
+  {
520
+    if(moveRate > 1000) Kollisionserkennung();         
521
+    else if(proxValue[1] == 6 || proxValue[2] == 6) motors.setSpeeds(0, 0);  
522
+    else if(proxValue[1] == 5 || proxValue[2] == 5) Hindernisumfahren();
523
+    else if(lineValue[0] > 1000 || lineValue[2] > 1000) Abbiegen();
524
+    else Spurhalten();
525
+  }
526
+
527
+  //Ausgabe über Bluetoothverbindung
528
+  SerialOutput();                                                         
529
+}

+ 34 - 0
ArduinoOutput/sketch/Hauptprojekt.ino.cpp.d

@@ -0,0 +1,34 @@
1
+c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\sketch\Hauptprojekt.ino.cpp.o: \
2
+ c:\Users\Carolin\Downloads\VSCode\Zumo32U4\ArduinoOutput\sketch\Hauptprojekt.ino.cpp \
3
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Arduino.h \
4
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/binary.h \
5
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/WCharacter.h \
6
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/WString.h \
7
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/HardwareSerial.h \
8
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Stream.h \
9
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Print.h \
10
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Printable.h \
11
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBAPI.h \
12
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Arduino.h \
13
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBDesc.h \
14
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/USBCore.h \
15
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\variants\leonardo/pins_arduino.h \
16
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\libraries\Wire\src/Wire.h \
17
+ C:\Users\Carolin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.20\cores\arduino/Stream.h \
18
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/Zumo32U4.h \
19
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/FastGPIO.h \
20
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/LSM303.h \
21
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/L3G.h \
22
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/Zumo32U4Buttons.h \
23
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/Pushbutton.h \
24
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/USBPause.h \
25
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/Zumo32U4Buzzer.h \
26
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/PololuBuzzer.h \
27
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/Zumo32U4Encoders.h \
28
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/Zumo32U4IRPulses.h \
29
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/Zumo32U4LCD.h \
30
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/PololuHD44780.h \
31
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/Zumo32U4LineSensors.h \
32
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/QTRSensors.h \
33
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/Zumo32U4Motors.h \
34
+ C:\Users\Carolin\Documents\Arduino\libraries\Zumo32U4/Zumo32U4ProximitySensors.h

BIN
ArduinoOutput/sketch/Hauptprojekt.ino.cpp.o


+ 106 - 94
Zumo32U4/Hauptprojekt/Hauptprojekt.ino

@@ -1,7 +1,7 @@
1
-//Verfassser: Felix Stange 4056379 MET2016
2
-//Datum: 19.07.2017 erstellt, 08.12.2017 zuletzt geändert
3
-//Projekt: Der Zumo fährt automatisch zwischen 2 Linien ohne diese zu überfahren mithilfe der 
4
-//Liniensensoren (3), ähnlich einer Spurhalteautomatik (dunkler Belag und helle Streifen). 
1
+//Verfassser: Felix Stange, 4056379, MET2016 
2
+//Datum: erstellt am 19.07.2017, zuletzt geändert am 15.02.2018 
3
+//Projektbeschreibung: Der Zumo fährt automatisch zwischen 2 Linien ohne diese zu überfahren mithilfe 
4
+//der Liniensensoren (3), ähnlich einer Spurhalteautomatik (heller Belag und dunkle Streifen). 
5 5
 //Außerdem werden Kollisionen verhindert durch Nutzung der vorderen Abstandssensoren. Kommt es 
6 6
 //dennoch zu einer Kollision, wird diese durch die Beschleunigungssensoren (LSM303) erkannt. 
7 7
 //Für den Überholvorgang werden die seitlichen Abstandssensoren und der Drehbewegungssensor (L3G) 
@@ -21,9 +21,8 @@ Zumo32U4Encoders          encoders;     //Motorencoder
21 21
 LSM303                    compass;      //Beschleunigungssensor x-Achse
22 22
 L3G                       gyro;         //Drehbewegungssensor z-Achse
23 23
 
24
-uint16_t  lineValue[3];                 //von links (0) nach rechts (2)
24
+int16_t   lineValue[3];                 //von links (0) nach rechts (2)
25 25
 uint16_t  lineOffset[3]; 
26
-uint16_t  lineRaw[3];
27 26
 
28 27
 uint8_t   proxValue[4];                 //von links (0) nach rechts (3)
29 28
 
@@ -42,11 +41,12 @@ int16_t   moveRate;
42 41
 int16_t   compassOffset;                
43 42
 uint16_t  compassLastUpdate;
44 43
 
45
-uint16_t  LastUpdate;
44
+uint16_t  LastUpdate = 0;               //Systemzeit
45
+uint16_t  CycleTime = 0;                //Zykluszeit
46 46
 int       maxSpeed = 200;               //Maximale Geschwindigkeit (möglich 400)
47
-char      dir = 'O';                    //Fahrtrichtung, Ereignis
48
-char      report[250];                  //Ausgabe
49
-int       warning = 0;                  //1 zeigt Überhol-/Abbiegevorgang an
47
+char      dir;                          //Fahrtrichtung, Ereignis
48
+char      report[200];                  //Ausgabe
49
+String    btData;
50 50
 
51 51
 /*-----------------------------------------------------------------*/
52 52
 
@@ -144,7 +144,7 @@ void setup()
144 144
   CompassSetup();
145 145
   
146 146
   //Zumo bereit zu starten
147
-  Serial1.println("Zumo bereit, drücke A");
147
+  Serial1.println("Zumo bereit, starte mit A");
148 148
   ledGreen(1);
149 149
   buttonA.waitForButton();
150 150
   randomSeed(millis());
@@ -157,7 +157,7 @@ void setup()
157 157
 void TimeUpdate()
158 158
 {
159 159
   uint16_t m = micros();
160
-  uint16_t dt = m - LastUpdate;
160
+  CycleTime = m - LastUpdate;
161 161
   LastUpdate = m;
162 162
 }
163 163
 
@@ -174,6 +174,7 @@ void ProxUpdate()
174 174
 //Updaten Liniensensoren
175 175
 void LineUpdate()
176 176
 {
177
+  uint16_t  lineRaw[3];
177 178
   lineSensors.read(lineRaw);
178 179
   lineValue[0] = lineRaw[0] - lineOffset[0];
179 180
   lineValue[1] = lineRaw[1] - lineOffset[1];
@@ -210,7 +211,7 @@ void CompassUpdate()
210 211
 void EncoderUpdate()
211 212
 {
212 213
   encoderCounts[0] = encoders.getCountsLeft();
213
-  driveRotation[0] = encoderCounts[0] / 910;                         //12cpr (Motorwelle) * 75,81:1 (Getriebe) = 909,7cpr (Antriebszahnrad)
214
+  driveRotation[0] = encoderCounts[0] / 910;                        //12cpr (Motorwelle) * 75,81:1 (Getriebe) = 909,7cpr (Antriebszahnrad)
214 215
   encoderCounts[1] = encoders.getCountsRight();
215 216
   driveRotation[1] = encoderCounts[1] / 910;
216 217
 }
@@ -218,24 +219,26 @@ void EncoderUpdate()
218 219
 /*-----------------------------------------------------------------*/
219 220
 
220 221
  //Funktion Kollisionserkennung
221
-void CollisionDetection()                                            
222
+void Kollisionserkennung()                                            
222 223
 {
223 224
   dir = 'X';
224
-  Serial1.println("Aufprall erkannt");
225
+  Serial1.println("Kollision");
225 226
   ledRed(1);
226 227
 
227 228
   motors.setSpeeds(0, 0);
228 229
   delay(500);
229
-  motors.setSpeeds(-maxSpeed/2, -maxSpeed/2);
230
+  while(lineValue[0] < 300 && lineValue[2] < 300)
231
+  {
232
+    motors.setSpeeds(-maxSpeed/2, -maxSpeed/2);
233
+  }
230 234
   delay(500); 
231 235
 }
232 236
 
233 237
 //Funktion Hindernisumfahrung
234
-void ObstacleAvoidance()                                              
238
+void Hindernisumfahren()                                              
235 239
 {
236 240
   dir = 'U';
237
-  Serial1.println("Überholen"); 
238
-  Serial1.println("1"); 
241
+  Serial1.println("Hindernisumfahren"); 
239 242
   ledYellow(1);
240 243
 
241 244
   //Schritt 1: Spurwechsel links   
@@ -249,7 +252,7 @@ void ObstacleAvoidance()
249 252
   }
250 253
   //geradeaus über Mittellinie fahren
251 254
   LineUpdate();
252
-  while(lineValue[2] > 1000)          
255
+  while(lineValue[2] < 300)          
253 256
   {
254 257
     LineUpdate();
255 258
     motors.setSpeeds(maxSpeed, maxSpeed); 
@@ -268,7 +271,7 @@ void ObstacleAvoidance()
268 271
   proxSensors.read();                                                 
269 272
   proxValue[1] = proxSensors.countsFrontWithLeftLeds();
270 273
   proxValue[2] = proxSensors.countsFrontWithRightLeds();  
271
-  if(proxValue[1] < 4 || proxValue[2] < 4)
274
+  if(proxValue[1] < 5 || proxValue[2] < 5)
272 275
   {
273 276
     //Schritt 2: Hindernis passieren
274 277
     motors.setSpeeds(maxSpeed, maxSpeed);                    
@@ -280,7 +283,7 @@ void ObstacleAvoidance()
280 283
       motors.setSpeeds(maxSpeed, maxSpeed);  
281 284
       proxSensors.read();
282 285
       proxValue[3] = proxSensors.countsRightWithRightLeds();  
283
-      TrackKeeper();
286
+      Spurhalten();
284 287
     }
285 288
   }
286 289
   
@@ -295,7 +298,7 @@ void ObstacleAvoidance()
295 298
   }
296 299
   //geradeaus über Mittellinie fahren
297 300
   LineUpdate();
298
-  while(lineValue[0] > 1000)          
301
+  while(lineValue[0] < 300)          
299 302
   {
300 303
     LineUpdate();
301 304
     motors.setSpeeds(maxSpeed, maxSpeed); 
@@ -310,65 +313,22 @@ void ObstacleAvoidance()
310 313
   //geradeaus fahren
311 314
   motors.setSpeeds(maxSpeed, maxSpeed); 
312 315
 
313
-  Serial1.println("Überholen beendet");  
314
-}
315
-
316
-//Funktion Spurhalten
317
-void TrackKeeper()                                                   
318
-{
319
-  //linke Linie erreicht, nach rechts fahren
320
-  if(lineValue[0] < 1000)                      
321
-  {
322
-    motors.setSpeeds(maxSpeed, maxSpeed/2);
323
-    ledYellow(1);
324
-    delay(100);    
325
-    dir = 'R';
326
-  }
327
-
328
-  //rechte Linie erreicht, nach links fahren
329
-  else if(lineValue[2] < 1000)                 
330
-  {
331
-    motors.setSpeeds(maxSpeed/2, maxSpeed);  
332
-    ledYellow(1); 
333
-    delay(100); 
334
-    dir = 'L';     
335
-  }
336
-
337
-  //Linie überfahren, zurücksetzen
338
-  else if(lineValue[1] < 1000)                 
339
-  { 
340
-    ledRed(1); 
341
-    while(lineValue[0] > 1000 && lineValue[2] > 1000)
342
-    {
343
-      motors.setSpeeds(-maxSpeed/2, -maxSpeed/2);
344
-    }
345
-    delay(500); 
346
-    dir = 'B';     
347
-  }  
348
-
349
-  //normale Fahrt
350
-  else                                                                
351
-  {
352
-    motors.setSpeeds(maxSpeed, maxSpeed);    
353
-    ledGreen(1); 
354
-    dir = 'F';     
355
-  }
316
+  Serial1.println("Umfahren beendet");  
356 317
 }
357 318
 
358 319
 //Funktion Abbiegen
359
-void Crossroad()
320
+void Abbiegen()
360 321
 {
361
-  ledYellow(1); 
362 322
   dir = 'A';
323
+  ledYellow(1); 
363 324
   Serial1.println("Abbiegen");  
364
-  Serial1.println("1"); 
365 325
 
366 326
   //Kodierung analysieren
367 327
   bool  leftCode;                                                         //links => 1
368 328
   bool  rightCode;                                                        //rechts => 2
369
-  if(lineValue[0] > 500 && lineValue[0] < 1500) leftCode = true;
329
+  if(lineValue[0] > 1000) leftCode = true;
370 330
   else leftCode = false;
371
-  if(lineValue[2] > 500 && lineValue[2] < 1500) rightCode = true;
331
+  if(lineValue[2] > 1000) rightCode = true;
372 332
   else rightCode = false;
373 333
 
374 334
   //Zufallszahl erzeugen
@@ -387,7 +347,7 @@ void Crossroad()
387 347
     //zur Kreuzungsmitte fahren
388 348
     driveRotation[0] = 0;
389 349
     driveRotation[1] = 0;
390
-    while(driveRotation[0] != 1 && driveRotation[1] != 1)
350
+    while(driveRotation[0] != 1 && driveRotation[1] != 1 && lineValue[0] < 300 && lineValue[2] < 300)
391 351
     {
392 352
       EncoderUpdate();
393 353
       motors.setSpeeds(maxSpeed/2, maxSpeed/2);
@@ -398,16 +358,17 @@ void Crossroad()
398 358
     while(rotationAngle != 90)
399 359
     {
400 360
       GyroUpdate();
401
-      if(lineValue[0] < 1000) motors.setSpeeds(maxSpeed/2, maxSpeed/2);
402
-      else if(lineValue[2] < 1000) motors.setSpeeds(0, maxSpeed/2);
403
-      else motors.setSpeeds(maxSpeed/4, maxSpeed/2);  
361
+      if(lineValue[0] > 300 && lineValue[0] < 500) motors.setSpeeds(maxSpeed/2, maxSpeed/2);
362
+      else if(lineValue[1] > 300 && lineValue[1] < 500) motors.setSpeeds(-maxSpeed/4, -maxSpeed/4);
363
+      else if(lineValue[2] > 300 && lineValue[2] < 500) motors.setSpeeds(0, maxSpeed/2);
364
+      else motors.setSpeeds(maxSpeed/4, maxSpeed/2);
404 365
     }
405 366
     //geradeaus fahren
406
-    motors.setSpeeds(maxSpeed/2, maxSpeed/2); 
367
+    motors.setSpeeds(maxSpeed/2, maxSpeed/2);
407 368
   }
408 369
 
409 370
   //rechts Abbiegen
410
-  else if(randy == 2 && rightCode == true) 
371
+  else if(randy == 2 && rightCode == true)
411 372
   {
412 373
     //rechts drehen
413 374
     rotationAngle = 0;
@@ -415,9 +376,10 @@ void Crossroad()
415 376
     while(rotationAngle != -90)
416 377
     {
417 378
       GyroUpdate();
418
-      if(lineValue[0] < 1000) motors.setSpeeds(maxSpeed/2, 0);
419
-      else if(lineValue[2] < 1000) motors.setSpeeds(maxSpeed/2, maxSpeed/2);
420
-      else motors.setSpeeds(maxSpeed/2, maxSpeed/4);  
379
+      if(lineValue[0] > 300 && lineValue[0] < 500) motors.setSpeeds(maxSpeed/2, 0);
380
+      else if(lineValue[1] > 300 && lineValue[1] < 500) motors.setSpeeds(-maxSpeed/4, -maxSpeed/4);
381
+      else if(lineValue[2] > 300 && lineValue[2] < 500) motors.setSpeeds(maxSpeed/2, maxSpeed/2);
382
+      else motors.setSpeeds(maxSpeed/2, maxSpeed/4);
421 383
     }
422 384
     //geradeaus fahren
423 385
     motors.setSpeeds(maxSpeed/2, maxSpeed/2); 
@@ -425,19 +387,67 @@ void Crossroad()
425 387
 
426 388
   //nicht Abbiegen, geradeaus fahren
427 389
   else motors.setSpeeds(maxSpeed/2, maxSpeed/2); 
390
+  delay(500);
428 391
 
429 392
   Serial1.println("Abbiegen beendet");  
430 393
 }
431 394
 
395
+//Funktion Spurhalten
396
+void Spurhalten()                                                   
397
+{
398
+  //linke Linie erreicht, nach rechts fahren
399
+  if(lineValue[0] > 300 && lineValue[0] < 500)                      
400
+  {
401
+    dir = 'R';
402
+    ledYellow(1); 
403
+    Serial1.println("Spur nach rechts korrigieren");  
404
+    motors.setSpeeds(maxSpeed, maxSpeed/2);
405
+    delay(100);    
406
+  }
407
+
408
+  //rechte Linie erreicht, nach links fahren
409
+  else if(lineValue[2] > 300 && lineValue[2] < 500)                 
410
+  {
411
+    dir = 'L'; 
412
+    ledYellow(1); 
413
+    Serial1.println("Spur nach links korrigieren");  
414
+    motors.setSpeeds(maxSpeed/2, maxSpeed);  
415
+    delay(100);  
416
+  }
417
+
418
+  //Linie überfahren, zurücksetzen
419
+  else if(lineValue[1] > 300 && lineValue[1] < 500)                 
420
+  { 
421
+    dir = 'B';  
422
+    ledRed(1); 
423
+    Serial1.println("Spur verlassen");  
424
+    Serial1.println("1"); 
425
+    while(lineValue[0] < 300 && lineValue[2] < 300)                 //Zumo fährt solange rückwärst bis er wieder auf der Spur steht
426
+    {
427
+      motors.setSpeeds(-maxSpeed/2, -maxSpeed/2);
428
+    }
429
+    delay(500);    
430
+  }  
431
+
432
+  //normale Fahrt
433
+  else                                                                
434
+  {
435
+    dir = 'F'; 
436
+    ledGreen(1); 
437
+    Serial1.println("Spur folgen");  
438
+    motors.setSpeeds(maxSpeed, maxSpeed);
439
+  }
440
+}
441
+
432 442
 //Funktion Serielle Ausgabe
433 443
 void SerialOutput()                                                     
434 444
 {
435 445
   snprintf_P(report, sizeof(report),
436
-    PSTR("Abstand: %3d %3d %3d %3d   Linie: %6d %6d %6d   Weg: %3d %3d   Winkel: %3d   Ereignis: %3c   Zeit: %3d"),
446
+    PSTR("Abstand: %d %d %d %d   Linie: %d %d %d   Weg: %d %d   Winkel: %d   Zeit: %d"),
437 447
     proxValue[0], proxValue[1], proxValue[2], proxValue[3], 
438 448
     lineValue[0], lineValue[1], lineValue[2],
439
-    driveRotation[0], driveRotation[1], rotationAngle, dir, LastUpdate);
440
-  Serial.println(report);
449
+    driveRotation[0], driveRotation[1], rotationAngle, CycleTime);
450
+  Serial1.println(report);
441 451
 }
442 452
 
443 453
 /*-----------------------------------------------------------------*/
@@ -457,21 +467,23 @@ void loop()
457 467
   EncoderUpdate();
458 468
 
459 469
   //Funktionsauswahl
460
-  warning = Serial1.read();
461
-  if(warning == 1) 
470
+  btData = Serial1.readString();
471
+  //verfügbare Funktionen bei laufenden Manövern
472
+  if(btData == "Abbiegen" || btData == "Hindernisumfahren" || btData == "Kollision")                                                  
462 473
   {
463 474
     maxSpeed = 100;
464
-    if(moveRate > 1000 || proxValue[0] > 4 || proxValue[1] > 4 || lineValue[0] > 500 && lineValue[0] < 1500 || 
465
-    lineValue[2] > 500 && lineValue[2] < 1500) motors.setSpeeds(0, 0);  
466
-    else TrackKeeper();
475
+    if(moveRate > 1000 || proxValue[1] > 4 || proxValue[2] > 4 || lineValue[0] > 1000 || 
476
+    lineValue[2] > 1000) motors.setSpeeds(0, 0);  
477
+    else Spurhalten();
467 478
   }
468
-  else
479
+  //verfügbare Funktionen im Normalfall
480
+  else                                                              
469 481
   {
470
-    if(moveRate > 1000) CollisionDetection();         
471
-    else if(proxValue[0] == 6 || proxValue[1] == 6) motors.setSpeeds(0, 0);  
472
-    else if(proxValue[0] > 4 || proxValue[1] > 4) ObstacleAvoidance();
473
-    else if((lineValue[0] > 500 && lineValue[0] < 1500) || (lineValue[2] > 500 && lineValue[2] < 1500)) Crossroad();
474
-    else TrackKeeper();
482
+    if(moveRate > 1000) Kollisionserkennung();         
483
+    else if(proxValue[1] == 6 || proxValue[2] == 6) motors.setSpeeds(0, 0);  
484
+    else if(proxValue[1] == 5 || proxValue[2] == 5) Hindernisumfahren();
485
+    else if(lineValue[0] > 1000 || lineValue[2] > 1000) Abbiegen();
486
+    else Spurhalten();
475 487
   }
476 488
 
477 489
   //Ausgabe über Bluetoothverbindung