nrf51822并没有PWM模块,但是如果巧妙的结合PPI模块,并加上一个定时器中断就可以轻松的实现了PWM,思路是这样的:定时器使用三个比较器cc0、cc1和cc2,当三个比较器任何一产生比较事件的时候都会通过PPI去翻转GPIO的引脚,在初始化的时候这样设置这三个比较器:NRF_TIMER2->CC[0]=MAX_SAMPLE_LEVELS+next_sample_get();NRF_TIMER2->CC[1]=MAX_SAMPLE_LEVELS;//CC2willbesetonthefirstCC1interrupt.NRF_TIMER2->CC[2]=0;