Корзина
пусто

PS/2 адаптер

PS/2 адаптер

Нажмите, чтобы увеличить
Цена: 125 pуб.
Наличие: В наличии 
Модель: port
Количество: Добавить в корзину
Базовая плата Кабель для модулей Набор креплений Базовая плата Мега

Данный модуль добавляет PS/2 порт к Ардуино для подключения клавиатуры или мышки, а готовая PS/2 библиотека делает программирование порта простым.

  • 20 * 24 мм.

Модуль расширения PS/2 для Ардуино

 

Демо код для Ардуино:

PS/2 мышка

#include <ps2.h>
 
/*
 * an arduino sketch to interface with a ps/2 mouse.
 * Also uses serial protocol to talk back to the host
 * and report what it finds.
 */
 
/*
 * Pin 5 is the mouse data pin, pin 6 is the clock pin
 * Feel free to use whatever pins are convenient.
 */
PS2 mouse(6, 5);
 
/*
 * initialize the mouse. Reset it, and place it into remote
 * mode, so we can get the encoder data on demand.
 */
void mouse_init()
{
  mouse.write(0xff);  // reset
  mouse.read();  // ack byte
  mouse.read();  // blank */
  mouse.read();  // blank */
  mouse.write(0xf0);  // remote mode
  mouse.read();  // ack
  delayMicroseconds(100);
}
 
void setup()
{
  Serial.begin(9600);
  mouse_init();
}
 
/*
 * get a reading from the mouse and report it back to the
 * host via the serial line.
 */
void loop()
{
  char mstat;
  char mx;
  char my;
 
  /* get a reading from the mouse */
  mouse.write(0xeb);  // give me data!
  mouse.read();      // ignore ack
  mstat = mouse.read();
  mx = mouse.read();
  my = mouse.read();
 
  /* send the data back up */
  Serial.print(mstat, BIN);
  Serial.print("\tX=");
  Serial.print(mx, DEC);
  Serial.print("\tY=");
  Serial.print(my, DEC);
  Serial.println();
//  delay(20);  /* twiddle */
}

 

PS/2 клавиатура

#include <ps2.h>
 
/*
 * Pin 5 is the ps2 data pin, pin 6 is the clock pin
 * Feel free to use whatever pins are convenient.
 */
 
PS2 kbd(6, 5);
 
void kbd_init()
{
  char ack;
 
  kbd.write(0xff);  // send reset code
  ack = kbd.read();  // byte, kbd does self test
  ack = kbd.read();  // another ack when self test is done
}
 
void setup()
{
  Serial.begin(9600);
  kbd_init();
}
 
/*
 * get a keycode from the kbd and report it back to the
 * host via the serial line.
 */
void loop()
{
  unsigned char code;
 
  for (;;) { /* ever */  
    /* read a keycode */
    code = kbd.read();
    /* send the data back up */
    Serial.println(code, HEX);
   // delay(20);  /* twiddle */
  }
}

 

PS/2 порт Ардуино