This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi,
According to the 《TMS320F28004x Real-Time Microcontrollers Technical Reference Manual》, the SWR bit of CAN_CTL Register is EALLOW protected. Follow the picture:
My questions are:
1、According to the example "can_ex4_loopback_dma" in C2000Ware_4_01_00_00,in the "CAN_initModule(CANA_BASE)", the SWR bit is not protected by EALLOW."HWREGH(base + CAN_O_CTL) |= CAN_CTL_SWR", Why?
2、But in the F28379,such as "can_ex1_loopback",in the "CAN_initModule(CANA_BASE)", the SWR bit is protected by EALLOW.
" EALLOW;
HWREGH(base + CAN_O_CTL) |= CAN_CTL_SWR;
EDIS;" Why?
3、In F280049 and F28379, "This bit is write-protected by Init bit", is it really so?
Hello,
Kindly refer to the following e2e thread: https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1015895/tms320f28386d-can-module-reset
"There is no EALLOW protection for any DCAN register"
It has been identified as a discrepancy in the TRM, but the fix has been made in the driver and should not appear in the example.
But in the F28379,such as "can_ex1_loopback",in the "CAN_initModule(CANA_BASE)", the SWR bit is protected by EALLOW.
Which C2000ware version is this? Can you provide a snippet of the code, mentioning the exact file name?
In F280049 and F28379, "This bit is write-protected by Init bit", is it really so?
Yes, it is. That is why the driver sets the Init bit first.
Thanks.
Which C2000ware version is this? Can you provide a snippet of the code, mentioning the exact file name?
It is C2000Ware_3_03_00_00.
Thanks!