工作原理:温度以16bit带符号位扩展的二进制补码形式读出,下表给出了温度值和输出数据的关系。程序中需将16进制温度值转化为十进制,再转化为数码管显示需要的段码表数据格式。
5.电子钟模块
采用时钟芯片DS1302,该芯片可以进行时、分、秒的计数,DS1302通过串行方式与单片机进行数据传送,向单片机提供包括秒、分、时、日、月、年等在内的实时时间信息。
DS1302是美国DALLAS公司推出的一种高性能、低功耗的实时时钟芯片,DS1302用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录,因此广泛应用于测量系统中。读写时序说明:
DS1302是SPI总线驱动方式。它不仅要向寄存器写入控制字,还需要读取相应寄存器的数据。要想与DS1302通信,首先要先了解DS1302的控制字。DS1302的控制字如图6.
控制字的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入到DS1302中。
位6:如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1(A4~A0):指示操作单元的地址;位0(最低有效位):如为0,表示要进行写操作,为1表示进行读操作。
重要位:
秒寄存器时钟停止位CH=0,振荡器工作允许;CH=1,振荡器停止。
控制寄存器写保护位WP=0,允许写入;WP=1,禁止写入外部引脚分配(如图7所示)。
三、系统软件设计
软件设计总流程图(如图8所示)。
四、结果显示
(1)时间显示如图9.