钜大LARGE | 点击量:983次 | 2020年06月18日
用PIC单片机制作的电源按时插座
本电源按时插座有三个操作按键S1、S2、S3,并用两位LED数码管显示按时时间。其中S2、S3两个按键分别预置、设定个位和十位数的按时时间值,设定的按时时间调整范围是0~99分钟,用一个S1按键做按时插座的启动/停止操作按键。
并且程序中添加了蜂鸣器提示音部分,该部分程序功能是:每按下一次S1、S2或者S3按键,蜂鸣器就会发出嘀的一声响,以确定按键按下的有效性。
计时程序采用倒计时递减计数的工作方式工作,程序在运行时,时间每过一分钟数码管的个位显示值减1,每过十分钟数码管十位显示值减1.
预设按时时间一到,插座自动切断AC220V电源输出,同时蜂鸣器报警。直至再次按下启动/停止按键S1才能解除蜂鸣器的报警声,同时二位数码管再次显示上一次预置的按时时间。程序也再次回复到初始状态并可随时预置下一次按时插座输出AC220V电压供给的按时时间。
电路硬件部分如图1所示。
图1电路硬件部分
电源部分电路:AC220V交流市电从电路图1中左下端的三孔插头输入到本按时插座中,其中火线L分为两路分别加在控制电压输出继电器J1的定触点④端和电源变压器T1的初级绕组的保险丝管上,零线N端加在输出插座Jp1的N端和电源变压器T1的另一端,接地线E端则与输出插座的接地端E相连,输出插座Jp1的火线端L则受控于继电器J1的动触点①端。由T1电源变压器将AC220V交流市电变换为AC12V电压后加在由D2~D5组成的桥式整流电路的两个桥臂端,再经C1滤波、MC7805稳压、C3、C2高、低频滤波后得到稳定的DC5V直流电压作为整机的工作电源。
本电源按时插座的主控MCU芯片为pIC16F627单片机。pIC16F系列单片机优点之一是:
端口驱动电流大,每个端口的拉电流或者灌电流均大于20mA,这样用它的端口驱动能力就可以直接驱动LED数码管了,无需在加驱动三极管,使得该插座的硬件电路设计变得十分简洁。
pIC16F627单片机端口的设置:
单片机的RA有6个I/O端口,用RA5:0>表示。本应用中RA0-RA2设置为输出端口;其中RA0、RA1端口分别用于两个数码管的个位和十位的位码驱动,RA2用于控制三极管Q3的b极工作,连带控制继电器J1触点的闭合与否,进而,控制了按时插座Jp1的AC220V输出电压的有无。RA3端口设置为输入/输出分时二重复用工作状态:①作输入端口时:用作按时插座的个位按时时间预置调整键;②作输出端口时:用于驱动LED1发光二极管做为本按时插座的工作指示灯。在按时插座没有进入按时输出供电的情况下,RA3作为输入端口,保持了用于设置按时器的个位数码预置数的设置功能;在插座工作输出电压的情况下,RA3转换为输出端口,用于驱动LED1作为插座的工作指示灯。
RA4端口设置为输入端口,用于按时时间的十位数值预置调整键。RA5端口为输入端口,与之相接的按钮开关S1为启动/报警解除按键.
RB端口的设置:电路中pIC16F627的RB端口设置为输出端口。其中RB0-RB6端口分别用于LED数码管的a-g7个段码的驱动,因这里选用的是LG5621BH(红色)共阳极LED数码管,故而,只有当RB0-RB6端口输出低电平时,LED数码管所对应的a-g码段才能被点亮。RB7端口用于驱动有源蜂鸣器,在RB7端口输出高电平时,该高电平电压通过1k电阻R9加至三极管Q4的b极上,Q4导通,蜂鸣器鸣响报警。
电源按时插座功能:按时插座初始上电时,两位数码管显示值为:99,并处于停止走时的待机状态,其输出插孔Jp1没有电压输出。要是此时按下个位按时时间数值预置调整键S3,则个位数码管从当前的显示值减小1个数,如,第一次按下S3并且释放按键后,个位数码管显示值由9变为8,再按一次S3,显示值变为7,直至显示值变为0,再从0回到9往复循环显示。
上一篇:电源滤波技术