freetech

ac16,通过timer的通道1产生可调的pwm发生器

0
阅读(1669)

unsigned int maikuai;
unsigned int maipinlv;

//方波设置 
void fangboshezhi (void)

{
TPM2C0V=maikuan; //设定脉宽
TPM2MOD=maipinlv; //设定脉冲周期。 

}

//////////////////////
//方波停止 
void fangbotingzhi (void)

{
TPM2SC=0X00; //内部总线,1分频 ,停止计数
TPM2CNT=0X0; //停止控制
TPM2C0SC=0X00; //停止输出启动
}
//////////////////////
//方波启动 
void fangboqidong (void)

{
TPM2C0SC=0X28; //脉冲输出
TPM2SC=0X12; //内部总线4分频,自动产生方波,ptf4管脚输出


////////////////////// 


ac16具有 3个 16位 的 时钟模块,当有pwm输出需要时 ,可以模拟自动的pwm发生器 。
过程如下:
方波停止;
方波设定;
方波启动;
然后在主程序中直接调用