add comments
This commit is contained in:
parent
32bf5abf99
commit
b643a09188
2 changed files with 30 additions and 8 deletions
|
@ -1,3 +1,12 @@
|
|||
/* ESP32 Arduino CAN Receive Basic Demo
|
||||
* This example will receive messages on the CAN bus
|
||||
*
|
||||
* An external transceiver is required and should be connected
|
||||
* to the CAN_tx and CAN_rx gpio pins specified by CANInit. Be sure
|
||||
* to use a 3.3V compatable transceiver such as the SN65HVD23x
|
||||
*
|
||||
*/
|
||||
|
||||
#include <Arduino.h>
|
||||
#include <ESP32CAN.h>
|
||||
|
||||
|
@ -5,18 +14,19 @@ void setup() {
|
|||
Serial.begin(115200);
|
||||
Serial.println("ESP32-Arduino-CAN Receive Basic Demo");
|
||||
|
||||
/* initialize and start, use pin 5 as CAN_tx and pin 4 as CAN_rx, CAN bus is set to 500kbps */
|
||||
ESP32Can.CANInit(GPIO_NUM_5, GPIO_NUM_4, ESP32CAN_SPEED_500KBPS);
|
||||
}
|
||||
|
||||
void loop() {
|
||||
twai_message_t rx_frame;
|
||||
|
||||
if (ESP32CAN_OK == ESP32Can.CANReadFrame(&rx_frame)) { /* CAN message received*/
|
||||
Serial.print(rx_frame.identifier, HEX);
|
||||
if (ESP32CAN_OK == ESP32Can.CANReadFrame(&rx_frame)) { /* only print when CAN message is received*/
|
||||
Serial.print(rx_frame.identifier, HEX); /* print the CAN ID*/
|
||||
Serial.print(" ");
|
||||
Serial.print(rx_frame.data_length_code);
|
||||
Serial.print(rx_frame.data_length_code); /* print number of bytes in data frame*/
|
||||
|
||||
for (int i=0; i<rx_frame.data_length_code; i++) {
|
||||
for (int i=0; i<rx_frame.data_length_code; i++) { /* print the data frame*/
|
||||
Serial.print(rx_frame.data[i], HEX);
|
||||
}
|
||||
|
||||
|
|
|
@ -1,3 +1,12 @@
|
|||
/* ESP32 Arduino CAN Send Basic Demo
|
||||
* This example will send messages on the CAN bus
|
||||
*
|
||||
* An external transceiver is required and should be connected
|
||||
* to the CAN_tx and CAN_rx gpio pins specified by CANInit. Be sure
|
||||
* to use a 3.3V compatable transceiver such as the SN65HVD23x
|
||||
*
|
||||
*/
|
||||
|
||||
#include <Arduino.h>
|
||||
#include <ESP32CAN.h>
|
||||
|
||||
|
@ -5,16 +14,18 @@ void setup() {
|
|||
Serial.begin(115200);
|
||||
Serial.println("ESP32-Arduino-CAN Send Basic Demo");
|
||||
|
||||
/* initialize and start, use pin 5 as CAN_tx and pin 4 as CAN_rx, CAN bus is set to 500kbps */
|
||||
ESP32Can.CANInit(GPIO_NUM_5, GPIO_NUM_4, ESP32_SPEED_500KBPS);
|
||||
}
|
||||
|
||||
void loop() {
|
||||
twai_message_t tx_frame;
|
||||
|
||||
tx_frame.extd = 0;
|
||||
tx_frame.data_length_code = 8;
|
||||
tx_frame.identifier = 0x123;
|
||||
tx_frame.extd = 0; /* CAN ID is standard 11bit, for 29bit set to 1*/
|
||||
tx_frame.data_length_code = 8; /* send 8 bytes of data */
|
||||
tx_frame.identifier = 0x123; /* CAN id is 0x123 */
|
||||
|
||||
/* assemble the 8 bytes of data */
|
||||
tx_frame.data[0] = 0xDE;
|
||||
tx_frame.data[1] = 0xAD;
|
||||
tx_frame.data[2] = 0xBE;
|
||||
|
@ -24,9 +35,10 @@ void loop() {
|
|||
tx_frame.data[6] = 0xBA;
|
||||
tx_frame.data[7] = 0x11;
|
||||
|
||||
ESP32Can.CANWriteFrame(&tx_frame);
|
||||
ESP32Can.CANWriteFrame(&tx_frame); /* send the CAN message */
|
||||
|
||||
Serial.println("CAN Frame Sent");
|
||||
|
||||
/* delay before sending another CAN message*/
|
||||
delay(1000);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue