ti工程师,您好:
我最近在做关于C6748 的相关开发,现在遇到一个问题,希望能得到您的帮助,谢谢:
我在SYSBIOS中需要实现DSP的重启,请问有什么办法可以实现吗?
我查看C6748的技术参考手册,看到PLL0中有RSCTRL寄存器,其中低16位要求写入KEY方可解锁,实现对`SWRST的配置。其中RSCTRL的初始值是0X00010003,那么是不是只要SWRST位置为0,就可以实现重启呢?
我在尝试操作RSCTRL时,采用HWREG(PLLC0+RSCTRL)=0x00015A69的方式来解锁,但是一直看不到RSCTRL的第16位显示为0x0C,地址内的数据一直是0x00010003。请问这样操作有问题吗?或者应该怎么正确操作呢?请问有相关的例程吗?或者可供参考的资料呢?
Tony Tang:
控制片上看门狗,可以实现重启.
Shine:
请试试下面e2e上的例程。
e2e.ti.com/…/416254
user4838224:
回复 Shine:
Hi,
I've modified the LED code to do this reset demonstration, it worked well.The following LED blink code would reset after 20th time of LED blink.
#define RSCTRL 0x01C110E8 // RSCTRL register (reset)
unsigned int* rsctrl = ( unsigned int* )RSCTRL;while(1)
{count++;
GPIOPinWrite(SOC_GPIO_0_REGS, 109, GPIO_PIN_LOW);
Delay(1000000);
GPIOPinWrite(SOC_GPIO_0_REGS, 109, GPIO_PIN_HIGH);
Delay(1000000);
if (count == 20)
{
*rsctrl = 0x5A69; //key unlock*rsctrl &= ~(1 << 16); //Assert reset bit
*rsctrl = 0; //key lock
printf("RESET done.\n"); // this line won't hit due to reset
}
}Regards,
Titus S.
Please use the latest processor SDK package for your platform (K2H,K2E,C665x,C667x etc.,)
www.ti.com/…/processor_sw.page