电脑显示气温DIY
电脑显示气温DIY万里江山2010-04-02
用一个单总线集成温度传感器DS1820获取当前气温,通过串口打印出来,并附带时间,
呵呵,以后做一个温度采集器不错的啦。
原理图
电脑超级终端打印的效果,哈哈哈
附注:C脚本
#include <AT89X52.h>
#include<stdio.h>
#include"DS1820_tem_read.h"//DS1820驱动头文件
unsigned int hour=23 ,min=4,sec=0,clk=0;//时,分,秒,时基
main()
{
float temp; //存放温度
TMOD = 0x21; //T1工作方式1,用于设定波特率
TH1= 0xFd; //波特率4800Bps,12MHz晶振
TL1= 0xFd;
TL0= 0x4b;//定时初值
TL1=0xff;
PCON |= 0x00; //SMOD = 1,波特率加倍
SCON = 0x50; //允许发送接收
ES = 0; //禁止串口中断
ET0 =1;//允许T0中断
EA=1;
TI = 1;
TR0= 1 ;
TR1= 1;
while(1)
{
if((sec%2==0)&&(clk<20)&&(clk>18))
{
temp= tem_read ();
printf("\f\033[1;42;31m热爱电子,热爱机电\033[m\n"); // 清屏\附带彩色(高亮,背景绿,字体红),背景信息发送
printf("\033[1;40;37m当前的气温是:%.2f度\n" , temp );//附带彩色(高亮,黑底白字),背景信息发送
printf("\033[m时间是:%d:%d:%d \n", hour, min, sec) ;
}
}
}
void time_sever(void) interrupt 1 using 1
{ TL0= 0x4b;
TL1=0xff;
clk++;
if(clk==20)
{
clk=0;
sec++;
P1_0 =! P1_0;
if(sec==60)
{
sec=0;
min++;
if(min==60)
{
min=0;
hour++;
if(hour==24)
hour=0;
}
}
}
} 不错,呵呵. 我在想,这东西是不是不用单片机也可以做得出来呢? 不用单片机是可以的,模拟电表的那种 显示的时间能否带上年月日! 如果用上位机采集数据,直接用上位机的日期和时间就可以
楼主这个时钟做的比较简单,是个演示程序 显示的时间能否带上年月日!
华诚筑邦 发表于 2011-9-8 20:58 http://www.crystalradio.cn/bbs/images/common/back.gif
这个是可以的,增加读年日日(公历)的代码就可以了,DS1302里面有 如果用上位机采集数据,直接用上位机的日期和时间就可以
楼主这个时钟做的比较简单,是个演示程序
slsdz 发表于 2011-9-8 21:04 http://www.crystalradio.cn/bbs/images/common/back.gif
坛友所言其是,可以使用电脑本身的时间(但这个要写上位机软件),也可以用单片机发出的时间(串口发送) 这个有成品机或套件吗? 本帖最后由 yangcheng84 于 2011-9-8 22:55 编辑
这个有成品机或套件吗?
华诚筑邦 发表于 2011-9-8 22:37 http://www.crystalradio.cn/bbs/images/common/back.gif
这个是和坛友们分享学习用的,没有套件。其实它很简单,如果你手头有51/52单片机,能够加载程序的话,请再买或者找一个数字温度传感器DS1820(5--7块钱零售,进口),按上图接好,然后加载下面的目标代码就可以了
回复 10# yangcheng84
谢谢先! 找找可能有!! 学习:victory: 现在15元的数显闹钟都有温度显示功能了。 现在15元的数显闹钟都有温度显示功能了。
我很简单 发表于 2011-9-9 09:42 http://www.crystalradio.cn/bbs/images/common/back.gif
我不得不承认,假如单单搞温度计,大可使用指针表或者数码管,LCD之类的,何必大动干戈呢?这位朋友,您是否注意到这个实验有一个特点:利用计算机串口和单片机通信,直接把单片机计算结果显示出来,而显示用的软件正是WINDOWXP系统自带的串口通信软件,通过单片机设置参数,屏幕上是可以带着颜色打印信息的,字体大小也可改变,我个人认为学习交流的目的是为了进步,如果对于知识的求取过程被简单的用XX元就可以办到,那我看,我们的论坛几乎没有可以讨论的地方,因为“全都可以用钱去衡量,去折算,不值一提!” 回复 13# 我很简单
有些指针手表连日期都没有,更别说温度了,都卖5位数以上..:P
听说而已,不曾拥有
页:
[1]
2