|
本帖最后由 weshare 于 2016-9-7 09:58 编辑
我已经找到原因了,让大家一起来猜一猜?需要有点发散性思维。
在FreeRTOS中,周期性中断接收到后用信号量跟任务中进行同步,于是我在任务中写了以下的代码,就是等待信号量过来翻转两下电平。
- for( ;; )
- {
- //获取信号量
- xSemaphoreTake(hSemaphoreAFE44xx,portMAX_DELAY);
- nrf_gpio_pin_set(18);
- nrf_gpio_pin_clear(18);
复制代码
用逻辑分析仪发现这样子的不正常的波形,管脚翻转的电平应该跟外部中断地频率一致的。
接着我改代码改为如下,却发现了正常的波形,如下所示。
for( ;; )
{
//获取信号量
xSemaphoreTake(hSemaphoreAFE44xx,portMAX_DELAY);
nrf_gpio_pin_toggle(18);
}
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
阿莫论坛20周年了!感谢大家的支持与爱护!!
月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!
|