Skip to content

Commit 22f14dc

Browse files
committed
CAN
Added MailboxIDMode()
1 parent 87e7680 commit 22f14dc

File tree

4 files changed

+21
-9
lines changed

4 files changed

+21
-9
lines changed

Diff for: libraries/Arduino_CAN/examples/CANReadFilter/CANReadFilter.ino

+8-6
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,15 @@
44
Receive and read CAN Bus messages
55
Read ID 0x100 EXTENDED and ID 0x10 STANDARD
66
7-
7+
Standard Configuration:
8+
9+
MODE:
810
Mailbox Groups 0-3 (Mailbox 0-15) -> TRANSMIT
911
Mailbox Groups 4-5 (Mailbox 16-23) -> RECEIVE EXTENDED
1012
Mailbox Groups 6-7 (Mailbox 24-31) -> RECEIVE STANDARD
11-
12-
Mailbox Mask 5,7 are preset with 0x1FFFFFFF
13-
Mailbox Mask 4,6 are preset with 0x00
13+
MASK:
14+
Mailbox Mask 5,7 -> 0x1FFFFFFF
15+
Mailbox Mask 4,6 -> 0x00
1416
1517
1618
See the full documentation here:
@@ -38,11 +40,11 @@ void setup()
3840
CAN.setMailboxMask(4, Mask29Bit);
3941
CAN.setMailboxMask(6, Mask11Bit);
4042

41-
for (int c=16; c <= 23; c++) {
43+
for (int c=16; c <= 23; c++) { // Set Mailbox(16-23) ID to 0x100
4244
CAN.setMailboxID(c, 0x0100);
4345
}
4446

45-
for (int c=24; c <= 31; c++) {
47+
for (int c=24; c <= 31; c++) { // Set Mailbox(24-31) ID to 0x100
4648
CAN.setMailboxID(c, 0x10);
4749
}
4850

Diff for: libraries/Arduino_CAN/keywords.txt

+7-3
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,16 @@ begin KEYWORD2
2121
end KEYWORD2
2222
enableInternalLoopback KEYWORD2
2323
disableInternalLoopback KEYWORD2
24-
write KEYWORD2
24+
write KEYWORD2
2525
available KEYWORD2
26-
read KEYWORD2
27-
isError KEYWORD2
26+
read KEYWORD2
27+
isError KEYWORD2
2828
clearError KEYWORD2
2929

30+
setFilterMask KEYWORD2
31+
setFilterID KEYWORD2
32+
setMailboxIDMode KEYWORD2
33+
3034
getStandardId KEYWORD2
3135
getExtendedId KEYWORD2
3236
isStandardId KEYWORD2

Diff for: libraries/Arduino_CAN/src/R7FA4M1_CAN.cpp

+5
Original file line numberDiff line numberDiff line change
@@ -198,6 +198,11 @@ void R7FA4M1_CAN::setMailboxID(size_t const mailbox, uint32_t const id)
198198
_can_mailbox[mailbox].mailbox_id = id;
199199
}
200200

201+
void R7FA4M1_CAN::setMailboxIDMode(size_t const mailbox, uint32_t const mode)
202+
{
203+
_can_mailbox[mailbox].id_mode = mode;
204+
}
205+
201206

202207
int R7FA4M1_CAN::enableInternalLoopback()
203208
{

Diff for: libraries/Arduino_CAN/src/R7FA4M1_CAN.h

+1
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ class R7FA4M1_CAN final : public HardwareCAN
5656

5757
void setMailboxMask(size_t const mailbox_group,uint32_t const mask);
5858
void setMailboxID(size_t const mailbox, uint32_t const id);
59+
void setMailboxIDMode(size_t const mailbox, uint32_t const mode);
5960

6061
int enableInternalLoopback();
6162
int disableInternalLoopback();

0 commit comments

Comments
 (0)