Các bước sau đây minh họa làm thế nào để cấu hình một đối tượng tin nhắn nhận .
1. Lập trình thanh ghi CAN IFn Command Mask (CANIFnCMASK) như được mô tả trong "Cấu hình đối tượng tin nhắn truyền", ngoại trừ bit WRNRD được thiết lập để chỉ định ghi vào bộ nhớ RAM tin.
2. Lập trình thanh ghi CANIFnMSK1and CANIFnMSK2 như mô tả trong "Cấu hình đối tượng tin nhắn truyền" để phần cấu hình các bit được sử dụng để lọc chấp nhận. Lưu ý rằng để cho các bit này được sử dụng cho lọc chấp nhận, chúng phải được cho phép bằng cách thiết lập bit umask trong thanh ghi CANIFnMCTL.
3. Trong thanh ghi CANIFnMSK2, sử dụng bit MSK [12:0] để xác định các bit ở định danh tin nhắn 29bit hoặc 11bit được sử dụng để lọc chấp nhận. Lưu ý rằng MSK [12:0] được sử dụng cho bit [28:16] của định danh tin nhắn 29-bit, trong khi MSK [12:2] được sử dụng cho bit [10:00] của định danh tin nhắn 11-bit. Sử dụng các bit MXTD và MDIR để xác định xem có sử dụng XTD và DIR chấp nhận lọc. Một giá trị 0x00 cho phép tất cả các tin nhắn để đi qua chấp nhận lọc. Cũng lưu ý rằng để cho các bit này được sử dụng để chấp nhận lọc, chúng phải được kích hoạt bằng cách thiết lập bit umask trong thanh ghi CANIFnMCTL.
4. Lập trình thanh ghi CANIFnARB1 và CANIFnARB2 như mô tả trong "Cấu hình đối tượng tin nhắn truyền" để lập trình bit XTD và ID cho định danh tin nhắn nhận được; thiết lập bit MSGVAL để chỉ một tin nhắn hợp lệ; và xóa bit DIR để xác nhận.
5. Trong thanh ghi CANIFnMCTL
■ Tùy chọn thiết lập bit umask để cho phép mặt nạ (MSK, MXTD, và MDIR quy định trong thanh ghi CANIFnMSK1và CANIFnMSK2) để chấp nhận lọc
■ Tùy chọn thiết lập bit RXIE để cho phép bit INTPND được thiết lập sau khi tiếp nhận thành công
■ Thiết lập bit EOB cho một đối tượng tin nhắn đơn
■ Thiết lập các DLC [3:00] để xác định kích thước của khung dữ liệu
Hãy cẩn thận trong cấu hình này, không đặt các bit NEWDAT, MSGLST, INTPND hoặc TXRQST.
6. Lập trình số đối tượng nhắn tin được nhận vào trường MNUM trong thanh ghi CAN IFn Command Request (CANIFnCRQ). Nhận đối tượng tin nhắn bắt đầu ngay khi một khung phù hợp có sẵn trên bus CAN.
Khi bộ xử lý tin nhắn lưu một khung dữ liệu trong đối tượng tin nhắn, nó lưu trữ chiều dài mã dữ liệu nhận được và tám byte dữ liệu trong thanh ghi CANIFnDA1, CANIFnDA2, CANIFnDB1, và CANIFnDB2. Byte 0 của khung dữ liệu CAN được lưu trữ trong DATA [7:0] trong thanh ghi CANIFnDA1. Nếu Chiều dài mã dữ liệu là ít hơn 8, các byte còn lại của các đối tượng tin nhắn được ghi đè bằng giá trị không xác định.
Thanh ghi mặt nạ CAN có thể được sử dụng để cho phép nhóm khung dữ liệu được nhận bằng một tin nhắn đối tượng. Thanh ghi mặt nạ CAN, CANIFnMSKn, cấu hình nhóm khung được nhận bằng một đối tượng nhắn tin. Bit UMASK trong thanh ghi CANIFnMCTL cho phép bit MSK trong thanh ghi đến bộ lọc mà khung được nhận. Bit MXTD trong thanh ghi CANIFnMSK2 nên được thiết lập nếu danh định mở rộng 29-bit được dự kiến do đối tượng tin nhắn này.