while(1)
{
GPIOPinWrite(SOC_GPIO_0_REGS,65,1);
GPIOPinWrite(SOC_GPIO_0_REGS,65,0);
}
GPIOPinWrite是starterWare里面的函数,控制GPIO4[0]输出高低电平,这个输出频率大概只有三四百K赫兹;后来我将程序改成下面这样
while(1)
{
HWREG(0x01E2606C)=1;
HWREG(0x01E26068)=1;
}
这也是根据GPIOPinWrite函数优化过来的,直接针对该IO口赋值,减少中间的计算,这个输出频率大概为3MHz,整体来说速度是不是也太慢了。
上面是主频300MHz测试的,后来我将主频升为375MHz,速度提升了一点。
我还测试for语句,执行一次需要将近400ns。
请问,怎么才能提高执行速率?谢谢!