基于51单片机的数字时钟与日历设计

本设计的显示模块采用8位一体共阳极数码管,显示分为时钟显示和日期星期两种模式,当为显示时钟模式时,从右到左依次显示秒个位,秒十位,横线,分个位,分十位,横线,时个位,时十位;当为显示日期和星期模式时,从右到左一次显示星期,不显示,横线,日个位,日十位,月个月,月十位。数码管显示的信息用8个内存单元存放,这8个内存单元为显示缓冲区,其中秒个位和秒十位,分个位和分十位,时个位和时十位分别由秒数据,分数据和小时数据分拆得到。在本系统种数码管显示采用软件译码动态显示。在存储器中首先建立一张显示信息字段码表,显示的时候,先从显示缓冲区中取出显示的信息,然后通过查表程序在字段码表中查出的所显示的字段码。从P0口输出,同时在P2口将对应的位选码输出,选中显示的数码管,就能在相应的数码管上显示显示缓冲区的内容。