通过上一篇文章,学习到了pwm的基本原理。
这里。将开始实战的学习。我们将学习pwm驱动开发板的蜂鸣器。
首先ok6410开发板原理图
可知,使用的是GPF15口,同样,在芯片手册上面可知。GPF15口是具有PWM功能。
首先,定义寄存器
/* PWM Timer */
#define rTCFG0 (*(volatile unsigned *)(0x7F006000))
#define rTCFG1 (*(volatile unsigned *)(0x7F006004))
#define rTCON (*(volatile unsigned *)(0x7F006008))
#define rTCNTB0 (*(volatile unsigned *)(0x7F00600C))
#define rTCMPB0 (*(volatile unsigned *)(0x7F006010))
#define rTCNTO0 (*(volatile unsigned *)(0x7F006014))
#define rTCNTB1 (*(volatile unsigned *)(0x7F006018))
#define rTCMPB1 (*(volatile unsigned *)(0x7F00601c))
#define rTCNTO1 (*(volatile unsigned *)(0x7F006020))
#define rTCNTB2 (*(volatile unsigned *)(0x7F006024))
#define rTCNTO2 (*(volatile unsigned *)(0x7F00602c))
#define rTCNTB3 (*(volatile unsigned *)(0x7F006030))
#define rTCNTO3 (*(volatile unsigned *)(0x7F006038))
#define rTCNTB4 (*(volatile unsigned *)(0x7F00603c))
#define rTCNTO4 (*(volatile unsigned *)(0x7F006040))
#define rTINT_CSTAT (*(volatile unsigned *)(0x7F006044))
然后是首先设置GPIO
等待更新。。。。。