You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

main.ino 1.3KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. #define ARD_UTILS_DELAYMS
  2. #include "ArdUtils/ArdUtils.h"
  3. #include "UsbRaw.h"
  4. #define ledPin 13
  5. uchar buffer[50];
  6. void callback(CALLBACK_ARGS)
  7. {
  8. /*digitalWrite(ledPin, !digitalRead(ledPin));
  9. delay(100);*/
  10. /*if (data)
  11. {
  12. strcpy((char *) buffer, (const char *) data);
  13. digitalWrite(ledPin, !digitalRead(ledPin));
  14. delay(200);
  15. digitalWrite(ledPin, !digitalRead(ledPin));
  16. }*/
  17. if (rq->bRequest == 0)
  18. {
  19. digitalWrite(ledPin, 0);
  20. }
  21. else if (rq->bRequest == 1)
  22. {
  23. digitalWrite(ledPin, 1);
  24. }
  25. else if (rq->bRequest == 4)
  26. {
  27. if (data)
  28. {
  29. digitalWrite(ledPin, !digitalRead(ledPin));
  30. delay(200);
  31. digitalWrite(ledPin, !digitalRead(ledPin));
  32. strcpy((char *) buffer, (const char *) data);
  33. }
  34. else
  35. {
  36. dev->setDataUsbNoMsg();
  37. }
  38. }
  39. else
  40. {
  41. dev->setData(buffer, strlen((const char*)buffer) + 1);
  42. }
  43. }
  44. void setup()
  45. {
  46. strcpy((char*)buffer, "test");
  47. UsbRaw.init();
  48. UsbRaw.setCallback(callback);
  49. pinMode(ledPin, OUTPUT);
  50. digitalWrite(ledPin, HIGH);
  51. }
  52. void loop()
  53. {
  54. UsbRaw.poll();
  55. //WAIT_USB;
  56. //UsbRawHid.sendData("test", 4);
  57. //ArdUtils::delayMs(1000);
  58. //digitalWrite(ledPin, !digitalRead(ledPin));
  59. }