新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 用PIC单片机制作的电源定时插座

用PIC单片机制作的电源定时插座

作者:时间:2012-08-21来源:网络收藏

数码管显示子程序流程图如4 所示。

图4 数码管显示子程序流程
图4 数码管显示子程序流程

按键提示音子程序段如下,供参考。

;------ 按键提示音子程序开始-----;

FMQ

; 蜂鸣器提示音子程序

BSF PORTB,7

;RB7> 端口输出高电平,使Q4 导通,蜂鸣器LS1 鸣响。

CALL DELAY_0.2S

; 调用0.2S 延时子程序,让蜂鸣器响0.2S.

BCF PORTB,7

;RB7> 输出低电平,让Q4 截止,蜂鸣器关闭

RETURN

; 蜂鸣器子程序返回。

;----- 按键提示音子程序结束------;

程序设计要点:1) 本器使用了16F627 的一个器模块TMI0,并用TMI0 做了50mS 中断,再用寄存器递减、判零语句:

DECFSZ F判断20×60 次中断到了与否来确定显示1 分钟时间的界限,1 分钟未到,继续显示当前的数码值,1 分钟到了,从当前显示的数码值减1后在显示1 分钟……,这样:每过1 分钟数码管个位显示值就减1,每过10 分钟,十位数码管显示值就减1,直到两位数码管的显示值减到00为止。2)定时器如何区分:预置显示程序和定时工作显示程序。在此程序设计中是用了一个寄存器的标志位加以区分的,标志位为0,执行预置显示程序;标志位为1,执行定时器工做程序。

3)按键的防抖动问题,机械按键在按下和抬起的瞬间均存在着多次接通与断开的情况,加之执行程序的速度非常之快,即在瞬间(1μS 时间内)即可检测到开关的闭合与断开的状态,故而,必须要做好S1-S3 按键开关的防抖问题,防抖使用软件来解决,具体方法是在按键按下和抬起的过程中均加有延时程序,一般延时时间取10mS 左右为宜,这样即解决了按键的防抖问题,又不至于让人感觉按键反映的速度太慢。4)调用显示查表程序,用查表法作数码管的数码值显示是程序设计中惯用的手段之一,它可使软、硬件设计变得更加的简洁、易懂。但本定时器设计中把数码管的小数点位用作了工作指示灯,又由于数码管采用的是动态扫描的方法点亮工作的,查表码会发生了变化。以下列出了本项目此共阳极数码所用的查表程序的码表见表1.

表1

如将码表的值颠倒书写:RETLW 0X40 写在最前面;RETLW 0X10 写在最后面,则本定时就变成了正定时了。

程序在总体设计上是以模块化为主,这样读起来思路较易清晰,流程更加明确。

元器件选择:电路中变压器T1 要选用功率大于3W、次级输出电压为AC12V ~ AC15V 的变压器,这样才能保证在继电器工作时不至于使T1次级输出的DC 电压降的太低而影响的正常工作。LS1 选择5V 有源蜂鸣器。J1 也可以选择其它型号的产品,J1 线圈工作电压高,其工作电流就小,对电路电压降低值影响就小,J1 触点电流应选择大于10A 为宜,避免该定时在带动大的交流负载时触点被烧蚀的可能性。数码管选用2 位一体近日笔者发现,一些人在农村的街头巷尾、集贸市场高声叫卖高效电子节能器.据商贩宣称:这种高科技产品获得国家专利,每只可带负载1500~3000W.价格便宜,一个只有十块钱,一般的家庭用1 个就行了,如果家里的电器多的可多买。好用且使用方便,买回家后,只需将电子节能器的两脚插头插在家中任意两眼插座上,即可节电30~50%,甚至更多。

为了让围观者相信该电子节能器的节电效果,商贩还在现场做演示。演示的方法是:把100W 的灯泡接在一个电表上,接通后,电表飞快地转动。

然后商贩又把电子节能器插在事先准备好的插座上,电表铝盘转速立即慢了一半还多。一些村民亲眼看了后,对电子节能器能节电的效果深信不疑。

纷纷索要产品介绍,使用说明书,询问使用方法,许多人解囊掏钱购买。这种电子节能器真的能节电吗?

为弄个究竟,笔者买回一只电子节能器进行了作 者街头叫卖的电子节能器能节电吗?

马祥琴化的共阳极数码管。晶振选用4MHz 的。

安装、、调试时要注意:由于电路中有AC220V 电压接入,建议定时插座在调试阶段暂时不接插座JP1 的AC220V 电压,以策人身安全。待程序调试通过后在将AC220V 电压接通,保证整机的调试阶段是在安全电压下进行的。电路中元件没有特殊要求,保证安装、焊接的正确性就可以了,16F627 芯片要装在IC 插座中,以便于随时取下重新烧写程序。

程序烧写:文章附带的(。hex)文件读者可直接用来将其烧录到16F627 芯片中。烧写程序中一定要注意编程器的配置位设置,它在PIC 中起到举足轻重的作用,万万不可忽视。

性能分析:

本定时插座1 小时产生的时间误差约8S,这个定时插座定时精准度不高是数码管动态显示和 TMI0 中断相互影响,TMI0 溢出时要等程序做完才发生中断,就会有延迟误差,对于我们日常生活中一般使用,其定时的精度也算是足够高的了。

编者后记:作者提出了PIC 定时器如何减小误差的问题,希望爱好者给出出主意。如果把扫描定时和计时定时结合起来,每5ms 中断一次,中断200 次计一分钟,是否能改善?

蜂鸣器相关文章:蜂鸣器原理

上一页 1 2 3 4 下一页

评论


相关推荐

技术专区

关闭