timer1_pwm01_output例程¶
1 功能概述¶
本代码示例主要演示timer1(P1.0、P1.1)的pwm01直接输出功能。
2 环境要求¶
Board: PAN221x_EVB
逻辑分析仪
PANCHIP RISC IDE
3 编译和烧录¶
例程位置:PAN221x_DK_Public\01_SDK\basic_demo\timer\timer1_pwm01_output
打开timer目录下timer1_pwm01_output.sproj工程,编译整个代码工程。
4 测试方法¶
1、设置系统时钟源为dpll,并配置系统时钟为8Mhz;
2、设置P1.2、P1.3为输出模式,用于调试;
3、pwm0为P1.0,pwm1位P1.1,设置pwm周期,占空比,输出有效电平;
4、使能pwm0占空比中断,待中断发生后,在中断中,翻转P1.2;
5、使能pwm1占空比中断,待中断发生后,在中断中,翻转P1.3;
6、通过杜邦线连接pwm0(P1.0)、pwm1(P1.1)、P1.2、P1.3到逻辑分析仪;
备注:pwm01周期和占空比计算方法:
pwm01周期 =(T1OVR[15:0] + 1)/ T1CLK;
pwm01占空比 = T1Dx[15:0] /(T1OVR[15:0] + 1);
5 测试现象¶
1、测试条件:设置系统时钟为8Mhz,T1CLK为1分频,T1OVR = 0xffff,T1D0 = 0x4CCC,T1D1 = 0x7fff; 2、pwm0频率理论上为122.0703Hz,实际测试结果如下:
2、pwm0占空比理论上为29.99%,实际测试结果如下:
3、pwm0占空比中断,测试结果如下:
4、pwm1频率理论上为122.0703Hz,实际测试结果如下:
5、pwm1占空比理论上为49.99%,实际测试结果如下:
6、pwm1占空比中断,测试结果如下:
7、PWM0S = 0和PWM1S = 0 (表示pwm初始电平为低电平,占空比期间为高电平),测试结果如下:
8、PWM0S = 1和PWM1S = 1 (表示pwm初始电平为高电平,占空比期间为低电平),测试结果如下:
6 Rom/Ram资源使用情况¶
rom 138 bytes, ram 0 bytes