关于AM335X,问下各位如果CAN的引脚改为J18及K15,DCANPinMuxSetUp()改为如下代码,请问大家有什么问题?为啥一直调试不通啊?
unsignedintDCANPinMuxSetUp(unsigned intinstanceNum)
{
unsignedint profile = 1;
unsignedint status = FALSE;
//// /* Pin Mux for DCAN0 Tx Pin */
//// HWREG(SOC_CONTROL_REGS + CONTROL_CONF_UART_CTSN(instanceNum)) =
//// DCAN_SLEWFAST_RXDISABLED_PULLDWN_PUPDENABLED_MODE2;
////
//// /* Pin Mux for DCAN0 Rx Pin */
//// HWREG(SOC_CONTROL_REGS + CONTROL_CONF_UART_RTSN(instanceNum)) =
//// DCAN_SLEWFAST_RXENABLED_PULLUP_PUPDENABLED_MODE2;
/* Pin Mux for DCAN0 Tx Pin */
HWREG(SOC_CONTROL_REGS + CONTROL_CONF_MII1_TXD3) =
DCAN_SLEWFAST_RXDISABLED_PULLDWN_PUPDENABLED_MODE2;
/* Pin Mux for DCAN0 Rx Pin */
HWREG(SOC_CONTROL_REGS + CONTROL_CONF_MII1_TXD2) =
DCAN_SLEWFAST_RXENABLED_PULLUP_PUPDENABLED_MODE2;
status = TRUE;
return status;
}
lei li9:
其中:
#define DCAN_SLEWFAST_RXDISABLED_PULLDWN_PUPDENABLED_MODE2 (0x00000001u)#define DCAN_SLEWFAST_RXENABLED_PULLUP_PUPDENABLED_MODE2 (0x00000031u)
多谢!
Jian Zhou:
回复 lei li9:
感觉模式设错了,改成MODE1试试
lei li9:
回复 Jian Zhou:
周工,我写的就是模式1((0x00000001u和0x00000031u),只不过名字写成MODE2了,
#define DCAN_SLEWFAST_RXDISABLED_PULLDWN_PUPDENABLED_MODE2 (0x00000001u)#define DCAN_SLEWFAST_RXENABLED_PULLUP_PUPDENABLED_MODE2 (0x00000031u)
我不知道还有没有其他地方要设置的?我确实想不出来了,公司项目赶进度,希望大神能回答下,多谢!!!多谢!!!
(CAN0控制器测试过了是好的,就是引脚配置问题,真不知道还需要配置哪里了)
Jian Zhou:
回复 lei li9:
你是在TI的demo板上测的还是自己的板子?CAN的引脚连接到转接芯片了么?
lei li9:
回复 Jian Zhou:
第一:我在周立功的开发板上测试的,没接到转接芯片(隔离收发器),但是引脚上是不是应该有信号的啊?我用示波器没看到有任何信号;
第二:我同时也在自己板子上测试了,带转接芯片(隔离收发器),引脚上也没看到信号。
盼回复!谢谢啊!
lei li9:
回复 Jian Zhou:
还有这两个宏定义是我自己配置的,我没看到官方的
#define DCAN_SLEWFAST_RXDISABLED_PULLDWN_PUPDENABLED_MODE2 (0x00000001u)#define DCAN_SLEWFAST_RXENABLED_PULLUP_PUPDENABLED_MODE2 (0x00000031u)
(实际名字应该是MODE1)
我感觉这两个没有问题啊!要不请核实下
谢谢啊!
Jian Zhou:
回复 lei li9:
你之前用你代码屏蔽的那组pin调试是没问题的么?