先楫半导体HPMicro
直播中

笑过就走

9年用户 908经验值
擅长:可编程逻辑 电源/新能源 MEMS/传感技术
私信 关注
[问答]

HPM6750双核运行时会因为不明原因造成程序定时运行不准如何解决?

我现在使用HPM6750双核同时运行,仅间隔固定时间翻转一下IO口,具体操作如下:

在双核程序中,配置IO口A为核0的GPIO输出,配置IO口B为核1的GPIO输出,使用自编写delay_us函数,在核0和核1的主程序while循环中,每间隔500us翻转一次各自IO口输出电平。程序中除了必须的board_init函数外,其余没有配置任何外设。程序运行发现问题如下:

1、仅核0运行时,用示波器查看IO口A电平,发现翻转间隔时间很准;
2、双核同时运行时,用示波器查看IO口A电平和IO口B电平,发现A和B的电平翻转时间间隔大部分时间是准的,不定时会出现翻转不准现象。

请教一下这是什么原因造成的?是由于双核运行时,还有其他潜藏的程序运行吗?

delay_us函数如下:
void delay_us(unsigned int us)
{
while(us--)
{
  for(int i=0;i<161;i++);
}
}






更多回帖

发帖
×
20
完善资料,
赚取积分