在线时间364 小时
UID3071902
注册时间2017-1-11
NXP金币0
TA的每日心情 | 衰 2019-1-19 16:32 |
---|
签到天数: 4 天 连续签到: 1 天 [LV.2]偶尔看看I
金牌会员
 
- 积分
- 1267
- 最后登录
- 2022-3-31
|
請問要如何開啟MC33903的WatchDog的功能呢,
我看了Datasheet、AN4770後配置的WatchDog沒有啟動
main內沒有feed dog,Reset pin都沒拉LOW過
uint8_t spi_SBC_INIT_SEQ_PART0[2]={0xDF, 0x80}; /* Read Vreg register H */
uint8_t spi_SBC_INIT_SEQ_PART1[2]={0x5A, 0x00}; /* Enter in Normal mode */
uint8_t spi_SBC_INIT_SEQ_PART2[2]={0x5E, 0x90}; /* Enable 5V-CAN and Vaux regulators */
uint8_t spi_SBC_INIT_SEQ_PART3[2]={0x60, 0xC0}; /* Set CAN in TxRx mode, fast slew rate */
uint8_t spi_SBC_INIT_SEQ_PART4[2]={0x66, 0xC4}; /* Set LIN1 in TxRx mode, slew rate 20kb/s, LIN term ON */
uint8_t spi_data_receive16bit[2]={0, 0};
uint8_t spi_SBC_INIT_SEQ_PART5[2]={0x52, 0x40}; //change mode init mode
uint8_t spi_SBC_INIT_SEQ_PART6[2]={0x4A, 0x80}; //init reg
uint8_t spi_SBC_INIT_SEQ_PART7[2]={0x50, 0x00}; //init misc
uint8_t spi_SBC_INIT_SEQ_PART8[2]={0x40, 0x40}; //init wdog
uint8_t spi_SBC_INIT_SEQ_PART9[2]={0x54, 0x1F}; //set TIM_A
void Enable_SBC()
{
int i = 0;
FGPIOA->PSOR = GPIO_PTD3_MASK;
FGPIOA->PDDR |= GPIO_PTD3_MASK;
// Delay 500ms for waitting VBAT is stable
delay = 500;
while( delay > 0 ) ;
FGPIOA->PCOR = GPIO_PTD3_MASK;
SPI_TransferWait(SPI1,spi_data_receive16bit,spi_SBC_INIT_SEQ_PART0,2);
FGPIOA->PSOR = GPIO_PTD3_MASK;
for(i=0;i<100;i++);
FGPIOA->PCOR = GPIO_PTD3_MASK;
SPI_TransferWait(SPI1,spi_data_receive16bit,spi_SBC_INIT_SEQ_PART1,2);
FGPIOA->PSOR = GPIO_PTD3_MASK;
for(i=0;i<100;i++);
FGPIOA->PCOR = GPIO_PTD3_MASK;
SPI_TransferWait(SPI1,spi_data_receive16bit,spi_SBC_INIT_SEQ_PART2,2);
FGPIOA->PSOR = GPIO_PTD3_MASK;
for(i=0;i<100;i++);
FGPIOA->PCOR = GPIO_PTD3_MASK;
SPI_TransferWait(SPI1,spi_data_receive16bit,spi_SBC_INIT_SEQ_PART3,2);
FGPIOA->PSOR = GPIO_PTD3_MASK;
for(i=0;i<100;i++);
FGPIOA->PCOR = GPIO_PTD3_MASK;
SPI_TransferWait(SPI1,spi_data_receive16bit,spi_SBC_INIT_SEQ_PART4,2);
FGPIOA->PSOR = GPIO_PTD3_MASK;
for(i=0;i<100;i++);
FGPIOA->PCOR = GPIO_PTD3_MASK;
SPI_TransferWait(SPI1,spi_data_receive16bit,spi_SBC_INIT_SEQ_PART5,2);
FGPIOA->PSOR = GPIO_PTD3_MASK;
for(i=0;i<100;i++);
FGPIOA->PCOR = GPIO_PTD3_MASK;
SPI_TransferWait(SPI1,spi_data_receive16bit,spi_SBC_INIT_SEQ_PART6,2);
FGPIOA->PSOR = GPIO_PTD3_MASK;
for(i=0;i<100;i++);
FGPIOA->PCOR = GPIO_PTD3_MASK;
SPI_TransferWait(SPI1,spi_data_receive16bit,spi_SBC_INIT_SEQ_PART7,2);
FGPIOA->PSOR = GPIO_PTD3_MASK;
for(i=0;i<100;i++);
FGPIOA->PCOR = GPIO_PTD3_MASK;
SPI_TransferWait(SPI1,spi_data_receive16bit,spi_SBC_INIT_SEQ_PART8,2);
FGPIOA->PSOR = GPIO_PTD3_MASK;
for(i=0;i<100;i++);
FGPIOA->PCOR = GPIO_PTD3_MASK;
SPI_TransferWait(SPI1,spi_data_receive16bit,spi_SBC_INIT_SEQ_PART9,2);
FGPIOA->PSOR = GPIO_PTD3_MASK;
for(i=0;i<100;i++);
FGPIOA->PCOR = GPIO_PTD3_MASK;
SPI_TransferWait(SPI1,spi_data_receive16bit,spi_SBC_INIT_SEQ_PART1,2); //fed wdog
FGPIOA->PSOR = GPIO_PTD3_MASK;
for(i=0;i<100;i++);
}
最佳答案
非常感谢你的技术问题。我们建议您将此技术问题提交到恩智浦的英文论坛。网址是http://community.nxp.com/welcome谢谢。
|
|