Программа Код (Text): #include <PS2Keyboard.h> #define DATA_PIN 4 PS2Keyboard keyboard; void setup() { keyboard.begin(DATA_PIN); Serial.begin(9600); Serial.println("hi"); delay(1000); } void loop() { if(keyboard.available()) { byte dat = keyboard.read(); byte val = dat - '0'; if(val >= 0 && val <= 9) { Serial.print(val, DEC); } else if(dat == PS2_KC_ENTER) { Serial.println(); } else if(dat == PS2_KC_ESC) { Serial.println("[ESC]"); } } } Выдает ошибку Arduino: 1.6.5 (Windows 7), Плата"Arduino Uno" Используем библиотеку PS2Keyboard в папке: C:\Program Files\arduino-1.6.5-r2\libraries\PS2Keyboard (legacy) C:\Program Files\arduino-1.6.5-r2\hardware\tools\avr/bin/avr-g++ -c -g -Os -w -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10605 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR -IC:\Program Files\arduino-1.6.5-r2\hardware\arduino\avr\cores\arduino -IC:\Program Files\arduino-1.6.5-r2\hardware\arduino\avr\variants\standard -IC:\Program Files\arduino-1.6.5-r2\libraries\PS2Keyboard C:\Users\Admin\AppData\Local\Temp\build170170107984701884.tmp\PS2.cpp -o C:\Users\Admin\AppData\Local\Temp\build170170107984701884.tmp\PS2.cpp.o In file included from PS2.ino:4:0: C:\Program Files\arduino-1.6.5-r2\hardware\arduino\avr\cores\arduino/Arduino.h:117:14: error: conflicting declaration 'typedef bool boolean' typedef bool boolean; ^ In file included from PS2.ino:1:0: C:\Program Files\arduino-1.6.5-r2\libraries\PS2Keyboard/PS2Keyboard.h:46:17: error: 'boolean' has a previous declaration as 'typedef uint8_t boolean' typedef uint8_t boolean; ^ Ошибка компиляции.
Попробуйте скомпилировать на Arduino IDE 1.0.x. Эту версию можно скачать на сайте, тут - https://www.arduino.cc/en/Main/OldSoftwareReleases#1.0.x. Или посмотрите в сети, другие библиотеки для PS2Keyboard. К примеру эта - https://github.com/yosemitebandit/PS2Keyboard.
Согласно выдаче на чистом англицком конфликт объявления типов в разных включаемых файлах. По всей видимости проблемы обратной совместимости разных версий Arduino IDE. Можно попробовать для начала закомментировать строчку: Код (Text): typedef uint8_t boolean; в C:\Program Files\arduino-1.6.5-r2\libraries\PS2Keyboard/PS2Keyboard.h Или откатить IDE до какой-нибудь 1.0.x.