程度目的:LCD液晶屏上显示年月日、时分秒、星期和实时温度
使用模块:LCD1602液晶,DS18B20温度传感器,DS1302实时时钟
实现如下结果:
各模块需要实现的功能及I/O口配置
函数配置:
部分代码如下:
void main()
{
DS1302Init(); //DS1302初始化配置
Write_order(0x38);//设置16*2显示
Write_order(0x0c);//开显示 显示光标 光标闪烁
Write_order(0x01);//清屏
Write_order(0x06);//地址指针移位命令
while(1)
{
DS18B20(); //测温
delay(1000);
Timer(); //时间读取
Write_Dat(0,0,time[0]);//年
Write_Str(2,0,'-');
Write_Dat(3,0,time[1]);//月
Write_Str(5,0,'-');
Write_Dat(6,0,time[2]);//日
//------------------------------------
Write_Dat(9,0,S/100);//温度
Write_Str(11,0,'.');//温度
Write_Dat(12,0,S%100);//温度
Write_Str(14,0,0xdf);//符号°
Write_Str(15,0,'C');//符号C
//------------------------------------
Write_Dat(0,1,time[3]);//时
Write_Str(2,1,':');
Write_Dat(3,1,time[4]);//分
Write_Str(5,1,':');
Write_Dat(6,1,time[5]);//秒
//------------------------------------
Write_String(10,1,days[time[6]-1]);//星期数
}
}
总结:明确需要实现的功能及使用的模块。各模块协调使用来达到理想的效果。