当前位置: 代码迷 >> WinCE >> M3352开发板的PWM模拟,该如何处理
  详细解决方案

M3352开发板的PWM模拟,该如何处理

热度:226   发布时间:2016-04-28 11:53:31.0
M3352开发板的PWM模拟
使用的是致远的M3352开发板,想使用GPIO做PWM的输出。
用WINCE的定时器定时10us,然后GPIO输出。
创建了一个单独的工作线程,优先级都已经是最高的了
如:
while (!g_ExitThreadFreq)
{
          epcIoSetAPin(1, 1);
         //delay();
                 epcIoSetAPin(1, 0);
         //delay();
}
epcIoSetAPin()是设置某个GPIO为高低电平。

结果悲剧啦,示波器显示每隔十几毫秒有几毫秒IO口就不会做任何动作= =

求问大神怎么解决这个问题
------解决思路----------------------
还是硬件中断里面全做吧
------解决思路----------------------
你在循环里面死命拉高拉低是要干什么?抢资源啊??
这版子不带PWM吗?为啥不直接用。
------解决思路----------------------
线程定时会不准确、会被其他中断源中断
一贯认为,有时间要求的控制或者功能不要使用多线程,除非功能的实现仅仅限于启动、关闭等简单的操作
  相关解决方案