用PIC单片机C语言编制可预置起始时刻的时钟程序
扫描二维码
随时随地手机看文章
(1)硬件电路
利用4位LED数码管显示电路,可以制成24小时或12小时循环显示的时钟电路,且该时钟可以由人工预置起始时刻,即电路插上电源后,可根据当时的实时时刻,如手机或电视屏上显示的时刻,进行人工校时,之后即可作时钟用;若不进行人工预置(校时),该电路就自动从00、00开始,以分为单位起始计时,此时,该电路可作人工守侯定时器。该时钟电路不显示秒,而是以分钟开始的显示。
该电路仍采用PIC16F84A芯片,当写入下面给出的程序后,即可作24小时时钟用。其使用方法如下:
插上电源,LED数码管显示00.00,按下K1键,数码管全灭,松开K1键,再按下K1键,数码管从0(分位)开始计数,到达指定的分钟显示时,放开K1键,又按K1键,时位显示,到达指定的时显示时,放开K1,时钟即按人工预置起始时刻工作,操作十分简单。
注意:如果预置时间的时位是从00开始而仅有分钟的有效值时,当预置分钟指定值后,仍要再按下K1键,使时位从00递增又回到00,时钟即可工作,否则时钟电路不会工作。
(2)24小时的时钟C程序
根据24小时时钟电路的功能,可绘出相关流程图,再由流程图编写出24小时的时钟C程序。该程序命名为pic0.5.c,其清单如下:
说明:
1)上述C程序,经piCC编译器编译,生成目标码.hex,即可用编程器将.hex程序烧写到pic16F84A芯片中,再制成24小时的时钟。该时钟与标准时间相比,仅慢1秒/周。略增、减本程序中的d值,可再校时。
2)初学者仔细查看程序中的注释,即可理解本C程序的编写原理。