/******************************************************************************* * -------------------------------------------------------------------------------- * 实 验 名 : DS18B20温度传感器实验 * 实验说明 : 通过LCD1602显示 * 连接方式 : * 注 意 : 所用函数在头文件.c文件内 *******************************************************************************/ #include "public.h" #include "Lcd1602.h" #include "ds18b20.h" #include "systick.h" /**************************************************************************** * Function Name : main * Description : Main program. * Input : None * Output : None * Return : None ****************************************************************************/ int main() { u16 wd; double temp; LCD1602_GPIO_Init(); LCD1602_Init(); //LCD1602初始化 ds18b20_init(); //DS18B20初始化 while(1) { temp=readtemp(); //读取温度 wd=temp*100; //显示二位小数 LCD1602_MoveToPosition(0,0); LCD1602_DisplayString("wendu"); LCD1602_MoveToPosition(1,0); LCD1602_DisplayOneCharOnAddr(0,9,wd/1000+0x30);//显示十位 LCD1602_DisplayOneCharOnAddr(0,10,wd%1000/100+0x30);//显示个位 LCD1602_DisplayOneCharOnAddr(0,11,'.');//显示. LCD1602_DisplayOneCharOnAddr(0,12,wd%1000%100/10+0x30);//显示小数1位 LCD1602_DisplayOneCharOnAddr(0,13,wd%1000%100%10+0x30);//显示小数2位 LCD1602_DisplayOneCharOnAddr(0,14,0xdf); //℃ LCD1602_DisplayOneCharOnAddr(0,15,'C');//显示C } }