Arduino Due có chức năng USB Host, máy quét mã vạch NTEUMM F6 có thể hoạt động như một USB HMI Keyboard. Chính vì vậy Arduino Due có thể lấy được mã vạch do máy quét trả về.
Kết nối đầu thu wireless của máy quét mã vạch với cổng usb native của Arduino Due thông qua cáp USB OTG.
Nạp code như sau cho Arduino Due
/*
Keyboard Controller Example
Shows the output of a USB Keyboard connected to
the Native USB port on an Arduino Due Board.
created 8 Oct 2012
by Cristian Maglie
http://www.arduino.cc/en/Tutorial/KeyboardController
This sample code is part of the public domain.
*/
// Require keyboard control library
#include <KeyboardController.h>
// Initialize USB Controller
USBHost usb;
// Attach keyboard controller to USB
KeyboardController keyboard(usb);
// This function intercepts key press
void keyPressed() {
Serial.print("Pressed: ");
printKey();
}
// This function intercepts key release
void keyReleased() {
Serial.print("Released: ");
printKey();
}
void printKey() {
// getOemKey() returns the OEM-code associated with the key
Serial.print(" key:");
Serial.print(keyboard.getOemKey());
// getModifiers() returns a bits field with the modifiers-keys
int mod = keyboard.getModifiers();
Serial.print(" mod:");
Serial.print(mod);
Serial.print(" => ");
if (mod & LeftCtrl) {
Serial.print("L-Ctrl ");
}
if (mod & LeftShift) {
Serial.print("L-Shift ");
}
if (mod & Alt) {
Serial.print("Alt ");
}
if (mod & LeftCmd) {
Serial.print("L-Cmd ");
}
if (mod & RightCtrl) {
Serial.print("R-Ctrl ");
}
if (mod & RightShift) {
Serial.print("R-Shift ");
}
if (mod & AltGr) {
Serial.print("AltGr ");
}
if (mod & RightCmd) {
Serial.print("R-Cmd ");
}
// getKey() returns the ASCII translation of OEM key
// combined with modifiers.
Serial.write(keyboard.getKey());
Serial.println();
}
void setup() {
Serial.begin(9600);
Serial.println("Program started");
delay(200);
}
void loop() {
// Process USB tasks
usb.Task();
}
Xem thêm video sau đây để biết thêm chi tiết
Comments
Post a Comment