单片机如何计时?

来源:百度知道 编辑:UC知道 时间:2024/05/14 15:21:07
我想用AT89C51作一个计时器,但是必须输入一个开始信号它就开始,输入一个停止信号它就停止,电路和程序该怎么弄????

2个按钮分别接在2个中断口上,为单片机扩展一个数码管,2位还是4位看你需要显示多少了,或者使用6位,分别显示时,分,秒
程序是:单片机启动,初始化,循环等待
中断0中断,开始启动定时器,定时50毫秒,计数20次,计数的值为秒;
秒>60,则分+1,分>60,则时+1.
分别把时分秒数据送到数码管,数码管刷新
中断1中断,中断1服务子程序取消定时器中断,计时停止。

电路硬件:
1、at89c51
2、常开按钮(轻触开关)2只
3、共阴数码管,6只。
4、单片机最小系统必须的晶振1块,电容30pF,2只,复位电路需要的10u电解电容1只,电阻10K一只,开关1只,供电另计
因为外部器件不多,就直接用P2送数码管位码,没有扩展显示芯片。