_SlaveID_loop1.h 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. if(!digitalRead(CAN_INTpin)) // If pin 2 is low, read receive buffer
  2. {
  3. CAN0.readMsgBuf(&CANrxId, &CANlen, CANrxBuf); // Read data: len = data length, buf = data byte(s)
  4. Serial.print("ID: ");
  5. Serial.print(CANrxId, HEX);
  6. Serial.print(" Data: ");
  7. #if defined(HAS_LCD1602)
  8. lcd.setCursor(0,0);
  9. lcd.print("ID: ");
  10. lcd.print(CANrxId, HEX);
  11. lcd.setCursor(0,1);
  12. lcd.print(" Data: ");
  13. #endif
  14. /* #if defined(HAS_TFT_ILI9163C)
  15. DISPLAY_DEV.setCursor(0,40);
  16. DISPLAY_DEV.print("ID: ");
  17. DISPLAY_DEV.print(CANrxId, HEX);
  18. DISPLAY_DEV.setCursor(0,50);
  19. DISPLAY_DEV.print(" Data: ");
  20. #endif
  21. */
  22. for(int i = 0; i<CANlen; i++) // Print each byte of the data
  23. {
  24. if(CANrxBuf[i] < 0x10) // If data byte is less than 0x10, add a leading zero
  25. {
  26. Serial.print("0");
  27. #if defined(HAS_LCD1602)
  28. lcd.print("0");
  29. #endif
  30. // #if defined(HAS_TFT_ILI9163C)
  31. // DISPLAY_DEV.print("0");
  32. // #endif
  33. }
  34. Serial.print(CANrxBuf[i], HEX);
  35. Serial.print(" ");
  36. #if defined(HAS_LCD1602)
  37. lcd.print(CANrxBuf[i], HEX);
  38. lcd.print(" ");
  39. #endif
  40. // #if defined(HAS_TFT_ILI9163C)
  41. // DISPLAY_DEV.print(CANrxBuf[i], HEX);
  42. // DISPLAY_DEV.print(" ");
  43. // #endif
  44. // if(_Slave_Ports_queue_task_type_LIST[i]) {
  45. // Serial.print(" ["); Serial.print(_Slave_Ports_queue_task_type_LIST[i]); Serial.print("] ");
  46. // }
  47. }
  48. Serial.println();
  49. }
  50. //EOF CAN
  51. #if defined(HAS_LCD1602)
  52. delay(LCDtim);
  53. //lcd.setCursor(0,1);
  54. lcd.print(lcdPattern);
  55. //lcd.print(lcdPos % 10);
  56. if(lcdPos == 16) {
  57. //lcd.print("N");
  58. lcd.setCursor(0,1);
  59. lcdPos = 0;
  60. if(lcdPattern==".") lcdPattern = "-" ;
  61. else lcdPattern = "." ;
  62. }
  63. lcdPos ++;
  64. #endif
  65. // #if defined(HAS_TFT_ILI9163C)
  66. // delay(LCDtim);
  67. // display.setCursor(0,60);
  68. // display.print("loop....");
  69. // #endif