关于STC12C5A60S2单片机的PCA/PWM应用
看STC12C5A60S2系列单片机的datasheet中关于PCA/PWM模块还是有些不明白。请高人指点:1、规格书中写PCA的16位计数器——CL/CH用于保存PCA...
看STC12C5A60S2系列单片机的datasheet中关于PCA/PWM模块还是有些不明白。请高人指点:
1、规格书中写PCA的16位计数器——CL/CH用于保存PCA的装载值,是什么意思,有什么作用?是否类似于T0/T1的TL/TH??
2、规格书中写PCA捕获/比较寄存器——CCAPnL/CCAPnH:当PCA模块用于捕获或比较时,它们用于保存各个模块的16位捕捉计数值;当PCA模块用于PWM模式时,它们用来控制输出的占空比。是什么意思?
3、对CL/CH、CCAPnL/CCAPnH的用途、两者的关系不明白。
4、PCA的硬件结构中,PCA是一个16位定时器,有2个16位捕获/比较模块。如果要实现16位定时器,是用PCA实现,还是用2个捕获/比较模块实现?
5、关于PWM怎么控制占空比,没有看明白。
请解释的越详细越通俗越好,不要复制标准答案。 展开
1、规格书中写PCA的16位计数器——CL/CH用于保存PCA的装载值,是什么意思,有什么作用?是否类似于T0/T1的TL/TH??
2、规格书中写PCA捕获/比较寄存器——CCAPnL/CCAPnH:当PCA模块用于捕获或比较时,它们用于保存各个模块的16位捕捉计数值;当PCA模块用于PWM模式时,它们用来控制输出的占空比。是什么意思?
3、对CL/CH、CCAPnL/CCAPnH的用途、两者的关系不明白。
4、PCA的硬件结构中,PCA是一个16位定时器,有2个16位捕获/比较模块。如果要实现16位定时器,是用PCA实现,还是用2个捕获/比较模块实现?
5、关于PWM怎么控制占空比,没有看明白。
请解释的越详细越通俗越好,不要复制标准答案。 展开
1个回答
展开全部
1、CL/CH就是个一直在累加的计数器,功能同TL/TH;2、CCAPnL/CCAPnH里面放所谓的捕获值,也就是说:CL/CH中计数的值等于CCAPnL/CCAPnH时发生捕获事件,将申请中断;PWM时计数达到CCAPnL时输出电平翻转,达到CCAPnH时翻转回去,重新计数;3、CL/CH是计数器;CCAPnL/CCAPnH是寄存器,单片机实时对比其与CL/CH的值是否相等;4、实现16位软件定时可以用CL/CH的溢出中断(同T0、T1。。),也可以使用捕获模式,CCAPnL/CCAPnH中存放定时所要计数的值,CL/CH初值赋0,在捕获中断中清零CL/CH的值;5、在2中已说明。
追问
十分感谢,还想补充请教一下关于规格书中的内容:
1、捕获模式:当采样到有效跳变时,PCA硬件就将PCA计数器阵列寄存器(CH和CL)的值装载到模块的捕获寄存器中(CCAPnL和CCAPnH)。——这个装载动作是干什么用?
2、还想问一下定时器/计数器的溢出率是个什么意思?
追答
1、这个是边沿捕捉模式,比如你要捕捉一个下降沿,当下降沿到来的时候,CCAPnL和CCAPnH就记录CH和CL的值,就可以知道下降沿到来的时间;(前面回答16位定时那个好像不是捕获模式,记得是还有个比较模式吧,以前上学用过,记得不太清楚了);2、溢出率就是1S内定时器计数计满(8位256,16位就是65536)溢出中断的次数,也就是溢出中断的频率。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询