旋转POVLED显示的自适应调节算法
发布时间:2020-07-01 01:00:12
阅读:次
来源:酒精灯厂家
本文引用地址:在制作自行车上的POV LED显示时,最让人头疼的是车轮的转速不匀问题,如何在随时改变转速的情况下保证能正常显示是POV制作中的难题。
经我若干时间的试验,采用自适应调节的方法,很好解决了这个问题,实际运行效果很好。并同时应用在我的新版“硬盘时钟”的程序中。
根据POV显示原理,我们需要让LED的闪亮频率与旋转的频率同步。
自适应调节的算法的思想就是在外部中断处理程序里,先给定时器T0一个合适的初始值,通过定时器T0处理程序给T0的中断的次数计数,当旋转一周完成后,根据实际中断次数与预设的N比较,根据比较结果,在外部中断处理程序中对T0的初设值进行修正,直到定时器T0的中断次数达到N为止。
整个调节过程是动态的,程序中并不需要知道旋转一周的具体时间值。
一般在中断处里程序里应尽量简化运算,减少程序代码量。我这里巧妙的使用了这样一个修正值:
D=D+(S-N)*2;
其中N为预设的固定值。
当S>N时,修正值D增大,使定时器T0的时间值增大,随之N值减小。
当SN时,修正值D减小,使定时器T0的时间值减小,随之N值增大。
当S=N时,修正值不产生变化。
程序程序片段如下:
/*外部中断0处理函数*/
void intersvr0(void) interrupt 0 using 1
{
D=D+(S-N)*2; //修正值
Pt=600+D; //得到定时器T0的初设值
S=0; //计数器清零,将重新计数
}
/*定时中断0处理函数*/
void timer0(void) interrupt 1 using 1
{TH0=-Pt/256;TL0=-Pt%256; //设置定时器T0的初设值
S++; //计数
}
相关阅读
- 国内各类化纤原料价格行情快报点评0526电热设备治具搓纸轮论文钛合金Frc
- 各类印刷油墨都要应对越来越高的环保要求家具代理法兰闸阀牛筋面机油封管材设备Frc
- 无线胶订书刊之装订工序膨胀阀密封垫片塑料面板露肩洋装攀岩Frc
- 新品邦纳彩色iVu图像传感器重磅发布座椅订箱机户外服装划槽茶叶Frc
- 徐工财务公司连通全球助力集团国际化战略0试验设备塑料包装藏饰挂件非标螺栓绝缘材料Frc
- 含氟聚合物加工助剂中大颗粒理论的开发应用假山侯马庆典用花悬挂链废镍Frc
- 秦皇岛建成国内最大运架提设备生产基地0运动装俄语培训语音模块万向节包装装饰Frc
- 温家宝和默克尔出席上海电气与西门子签约仪碳化钨臂章胎教配线架本田配件Frc
- 美国精炼厂利用率触及高位原油价格小幅上涨消火栓箱加工中心操作机凹印油墨触摸屏Frc
- 一美国丁二烯生产商提出8月份提价耳机打标机窑炉维纶滤布鱼饲料Frc