TI中文支持网
TI专业的中文技术问题搜集分享网站

C6748 请问有SYS/BIOS下如何实现软件控制的重启呢?

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

赞(0)
未经允许不得转载:TI中文支持网 » C6748 请问有SYS/BIOS下如何实现软件控制的重启呢?
分享到: 更多 (0)