基于STC89C52单片机为控制中心的高精度温度计显示系统设计

工作原理:温度以16bit带符号位扩展的二进制补码形式读出,下表给出了温度值和输出数据的关系。程序中需将16进制温度值转化为十进制,再转化为数码管显示需要的段码表数据格式。

基于STC89C52单片机为控制中心的高精度温度计显示系统设计

5.电子钟模块

采用时钟芯片DS1302,该芯片可以进行时、分、秒的计数,DS1302通过串行方式与单片机进行数据传送,向单片机提供包括秒、分、时、日、月、年等在内的实时时间信息。

DS1302是美国DALLAS公司推出的一种高性能、低功耗的实时时钟芯片,DS1302用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录,因此广泛应用于测量系统中。读写时序说明:

DS1302是SPI总线驱动方式。它不仅要向寄存器写入控制字,还需要读取相应寄存器的数据。要想与DS1302通信,首先要先了解DS1302的控制字。DS1302的控制字如图6.

基于STC89C52单片机为控制中心的高精度温度计显示系统设计

控制字的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入到DS1302中。

位6:如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1(A4~A0):指示操作单元的地址;位0(最低有效位):如为0,表示要进行写操作,为1表示进行读操作。

基于STC89C52单片机为控制中心的高精度温度计显示系统设计

重要位:

秒寄存器时钟停止位CH=0,振荡器工作允许;CH=1,振荡器停止。

控制寄存器写保护位WP=0,允许写入;WP=1,禁止写入外部引脚分配(如图7所示)。

基于STC89C52单片机为控制中心的高精度温度计显示系统设计

三、系统软件设计

软件设计总流程图(如图8所示)。

基于STC89C52单片机为控制中心的高精度温度计显示系统设计

四、结果显示

(1)时间显示如图9.

基于STC89C52单片机为控制中心的高精度温度计显示系统设计