Phil COVAL
/
rzr-example-mbed
Demo example on FRDM-64F https://ide.mbed.com/compiler/#nav:/rzr-example-mbed;
Embed:
(wiki syntax)
Show/hide line numbers
Utils.cpp
00001 /// SPDX-License-Indentifier: Apache-2.0 00002 /// Copyright: 2020+ Philippe Coval <https://purl.org/rzr/> 00003 /// URL: https://os.mbed.com/users/rzrfreefr/code/rzr-example-mbed/ 00004 00005 #include "Utils.h" 00006 00007 //https://github.com/ARMmbed/mbed-os/blob/c6094f7b36dc0e90a6a7271870333fbba475286c/drivers/usb/source/USBKeyboard.cpp 00008 #define REPORT_ID_KEYBOARD 1 00009 00010 bool Utils::keyboard_key_code(USBKeyboard& usb, 00011 unsigned char const key, 00012 unsigned char const modifier, 00013 unsigned int delay) 00014 { 00015 HID_REPORT report; 00016 00017 report.data[0] = REPORT_ID_KEYBOARD; 00018 report.data[1] = modifier; 00019 report.data[2] = 0; 00020 //report.data[3] = usb.keymap[key].usage; 00021 report.data[3] = key; 00022 00023 report.data[4] = 0; 00024 report.data[5] = 0; 00025 report.data[6] = 0; 00026 report.data[7] = 0; 00027 report.data[8] = 0; 00028 00029 report.length = 9; 00030 00031 if (!usb.send(&report)) { 00032 return false; 00033 } 00034 if (delay) { 00035 ThisThread::sleep_for(delay); 00036 } 00037 report.data[1] = 0; 00038 report.data[3] = 0; 00039 00040 if (!usb.send(&report)) { 00041 return false; 00042 } 00043 return true; 00044 }
Generated on Tue Aug 2 2022 06:03:56 by 1.7.2