CC2540 PWM 使用问题
各位好!
最近在使用CC2540 BLE 控制 LED 照明,遇到如下问题,请各位帮忙解决一下。
使用 CC2540 Timer3 配置输出 1K Hz 的 PWM 信号,正占空比可在 0 - 100% 调整,代码完成后经测试 PWM 可以控制正常输出。
将上面的代码增加到 CC2540 SimpleBLEPeripheral 的工程代码中,在手机端使用 LightBlue 工具,将需要的 PWM 数值发送至 CC2540 的板子,经测试收到的数值正常。
将上面收到的数值转换为相应的 PWM 占空比,调整后的 PWM 可以输出信号,但从示波器上观察 PWM 信号的时候,发现 PWM 每隔 100 ms 左右就会出现一次异常的跳动而不连续,感觉 PWM 像被关闭又被开启的样子,后面 LED 照明的效果也不好。
屏蔽 BLE 部分的代码 PWM 是可以连续正常输出的,加入 BLE 部分的代码就会出现上面的问题。
故本人怀疑是否在 SimpleBLEPeripheral 工程代码中是否有什么地方影响了 PWM 的输出,但找了很久也没找到在哪里。
请各位帮忙分析一下原因,非常感谢!
试试把DEFAULT_DESIRED_MIN_CONN_INTERVAL默认100ms修改成和DEFAULT_DESIRED_MAX_CONN_INTERVAL默认1s 之后再看规律
排除是不是BLE连接导致的干扰
是不是跟这个原理有关系?有个参数是connection interval
看这个培训视频http://focus.ti.com/cn/general/docs/video/Portal.tsp?entryid=0_c3vlp868&lang=cn
我也碰见一样的问题,EFAULT_ADVERTISING_INTERVAL的时间会影响PWM的输出,连接之后好像BLE协议栈还是会影响PWM的输出,是不是哪里把TIME1的PWM暂时关闭后一段时间后,再重新开启PWM啊?
你好,请问你这个问题处理了吗,我正在做这样的项目