S3C2410A PWM Timer使用一般步骤(SOP)

-1.配置rTCFG0,设定prescaler0或prescaler1; rTCFG0=(PCLK/1000000-1);//prescaler0=100
-2.配置rTCFG1,设定Timern的分频因子;rTCFG1=0x01;//1/4
-3.配置rTCNB0,设定将被加载的TCN值;Fout(s)=[(prescaler+1)*(TCNTB+1)*divisor]/PCLK divisor是整数形式,由公式可知此时

    的计时精度即为divisor us(微秒),那么TCNTBn中的数字就等于aimtime(us)/divisor,aimtime为目标定时
-4.配置TCON,使能manual位,将TCNTBn中的数据载入TCNTn中;rTCON=0x0a;//01010:无死区、自动重载、手动更新、关定时器
-5.禁止所有中断,禁止所有子中断;rINTMOD=0x0;//全为irq rINTMSK=0xffffffff;//屏蔽所有中断 rINTSUBMSK=0xffff;//屏蔽所有子中断;
-6.开时钟中断 rINTMSK=0xffffbfff;//INT_TIMER0开中断
-7.配置rTCON,自动重载,disable inverter,disable manual bit,开启timer;  rTCON=0x09;//启动定时器TIMER0
-8.在main函数中将中断向量指向ISR:pISR_TIMER0=(unsigned int)Timer0ISR; pISR_TIMER0=(unsigned)timer0Handler;
-9.编写定时器中断服务程序(如void __irq Timer0ISR)
-10.在中断服务程序中清除rSRCPND,rINTPND,向相应的位写1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值