| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- if(!digitalRead(CAN_INTpin)) // If pin 2 is low, read receive buffer
- {
- CAN0.readMsgBuf(&CANrxId, &CANlen, CANrxBuf); // Read data: len = data length, buf = data byte(s)
- Serial.print("ID: ");
- Serial.print(CANrxId, HEX);
- Serial.print(" Data: ");
- #if defined(HAS_LCD1602)
- lcd.setCursor(0,0);
- lcd.print("ID: ");
- lcd.print(CANrxId, HEX);
- lcd.setCursor(0,1);
- lcd.print(" Data: ");
- #endif
- #if defined(HAS_TFT_ILI9163C)
- display.setCursor(0,40);
- display.print("ID: ");
- display.print(CANrxId, HEX);
- display.setCursor(0,50);
- display.print(" Data: ");
- #endif
- for(int i = 0; i<CANlen; i++) // Print each byte of the data
- {
- if(CANrxBuf[i] < 0x10) // If data byte is less than 0x10, add a leading zero
- {
- Serial.print("0");
- #if defined(HAS_LCD1602)
- lcd.print("0");
- #endif
- #if defined(HAS_TFT_ILI9163C)
- display.print("0");
- #endif
- }
- Serial.print(CANrxBuf[i], HEX);
- Serial.print(" ");
- #if defined(HAS_LCD1602)
- lcd.print(CANrxBuf[i], HEX);
- lcd.print(" ");
- #endif
- #if defined(HAS_TFT_ILI9163C)
- display.print(CANrxBuf[i], HEX);
- display.print(" ");
- #endif
- }
- Serial.println();
- }
- //EOF CAN
- #if defined(HAS_LCD1602)
- delay(LCDtim);
- //lcd.setCursor(0,1);
- lcd.print(lcdPattern);
- //lcd.print(lcdPos % 10);
- if(lcdPos == 16) {
- //lcd.print("N");
- lcd.setCursor(0,1);
- lcdPos = 0;
- if(lcdPattern==".") lcdPattern = "-" ;
- else lcdPattern = "." ;
- }
- lcdPos ++;
- #endif
- #if defined(HAS_TFT_ILI9163C)
- delay(LCDtim);
- display.setCursor(0,60);
- display.print("loop....");
- #endif
-
|