|
void MultClock(void)
{
unsigned int i=0;
disable_interrupts();
sysreg_write(sysreg_IOPG, Clock_and_System_Control_Page);
io_space_write(PLLCTL, (MSEL2|MSEL3|BYPASS|CKOUTEN|IOSEL|PO)); // stop PLL
asm("nop;");
io_space_write(PLLCTL, (MSEL2|MSEL3|BYPASS|CKOUTEN|IOSEL|PO)); // set new mult value
asm("nop;");
io_space_write(PLLCTL, (MSEL2|MSEL3|BYPASS|CKOUTEN|IOSEL)); // start in bypass
asm("nop;");
io_space_write(PLLCTL, (MSEL2|MSEL3|CKOUTEN|IOSEL)); // out of bypass
for(i=0;i<1100;i++)
asm("nop;"); // wait
enable_interrupts();
}
E-mail: info@telesys.ru