仪器网(yiqi.com)欢迎您!

| 注册 登录
网站首页-资讯-专题- 微头条-话题-产品- 品牌库-搜索-供应商- 展会-招标-采购- 社区-知识-技术-资料库-方案-直播- 视频

问答社区

我要做一个煤气报警器 包括温度记录 显示

文欣我的月亮 2018-12-07 00:46:32 403  浏览
  • 零件有DS18B20AT89C514位7段数码管。P1.0接温度传感器P2.0和P3.0接数码管段选与位选。现在一仿真都是亮的。中间还有一个74LS245191都接地。//*******************************//包含文... 零件 有 DS18B20 AT89C51 4位7段数码管。 P1.0接温度传感器 P2.0和 P3.0接数码管 段选与位选。 现在一仿真 都是亮的。 中间 还有一个 74LS245 19 1都接地。 //******************************* //包含文件,程序开始 //******************************* #include #define uchar unsigned char #define uint unsigned int sbit DQ=P1^0;//18b20 数据线引脚 sbit LED=P1^3; sbit input=P1^1; unsigned char flag;//负数标志 //行扫描数组 uchar code scan[4]={0xef,0xf7,0xfb,0xfd}; //数码管显示的断码表 uchar code table[13]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x40,0x39,0x00};//,-,C,kong //小数部分显示查询表 uchar code ditab[16]={0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09}; uchar dispbuf[8];//显示缓冲区 uchar temper[2];//存放温度的数组 uchar TCNT; //********************************* //延时函数 //********************************* void delay (unsigned int us) { while(us--); } //********************************* //DS18B20复位函数 //********************************* void reset(void) { uchar x=0; DQ=1; delay(8); DQ=0; delay(80); DQ=1; delay(14); x=DQ; delay(20); } //******************************** //从DS18B20中读一个字节 //******************************** uchar readbyte(void) { uchar i=0; uchar dat=0; for (i=8;i>0;i--) { DQ=0; dat>>=1; DQ=1; if(DQ) dat|=0x80; delay(4); } return(dat); } //******************************** //向DS18B20中写一个字节 //******************************** void writebyte(unsigned char dat) { uchar i=0; for (i=8;i>0;i--) { DQ=0; DQ=dat&0x01; delay(5); DQ=1; dat>>=1; } delay(4); } //***************************** //从DS18B20中读取实时温度值 //***************************** void readtemp(void) { uchar a=0,b=0; reset(); writebyte(0xCC);//跳过序列号 writebyte(0x44);//启动温度转换 reset(); writebyte(0xCC); writebyte(0xBE);//读九个寄存器,前2个为温度 a=readbyte();//低位 b=readbyte();//高位 if(b>0x0f)//判断是否为负值 { a=~a+1; if(a==0) b=~b+1; else b=~b; flag=10; } else flag=12; temper[0]=a&0x0f; a=a>>4; temper[1]=b<<4; temper[1]=temper[1]|a; } //********************************** //动态扫描显示函数 //********************************** void scandisp() { unsigned char i,value; for(i=0;i<4;i++) { P3=0xff; value=table[dispbuf[i]]; if(i==2) value|=0x80; P2=value; P3=scan[i]; delay(90); } } //******************************** //定时中断函数 //******************************** void Timer0(void)interrupt 1 using 1 { TH0=(65536-50000)/256; TL0=(65536-50000)%256; TCNT++; if(TCNT==6) { TCNT=0; LED=~LED; } } //******************************* //主函数 //******************************* void main() { uchar temp,temp1; TCNT=0; TMOD=0x01; TH0=(65536-50000)/256; TL0=(65536-50000)%256; IE=0x82; while(1) { if(input==0) TR0=1; else{ TR0=0; LED=1; } readtemp(); temp1=temper[0]; temp=temper[1]; dispbuf[3]=ditab[temp1]; dispbuf[2]=temp%10; temp=temp/10; dispbuf[1]=temp%10; dispbuf[0]=flag; scandisp(); } } 展开

参与评论

全部评论(0条)

获取验证码
我已经阅读并接受《仪器网服务协议》

热门问答

我要做一个煤气报警器 包括温度记录 显示
零件有DS18B20AT89C514位7段数码管。P1.0接温度传感器P2.0和P3.0接数码管段选与位选。现在一仿真都是亮的。中间还有一个74LS245191都接地。//*******************************//包含文... 零件 有 DS18B20 AT89C51 4位7段数码管。 P1.0接温度传感器 P2.0和 P3.0接数码管 段选与位选。 现在一仿真 都是亮的。 中间 还有一个 74LS245 19 1都接地。 //******************************* //包含文件,程序开始 //******************************* #include #define uchar unsigned char #define uint unsigned int sbit DQ=P1^0;//18b20 数据线引脚 sbit LED=P1^3; sbit input=P1^1; unsigned char flag;//负数标志 //行扫描数组 uchar code scan[4]={0xef,0xf7,0xfb,0xfd}; //数码管显示的断码表 uchar code table[13]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x40,0x39,0x00};//,-,C,kong //小数部分显示查询表 uchar code ditab[16]={0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09}; uchar dispbuf[8];//显示缓冲区 uchar temper[2];//存放温度的数组 uchar TCNT; //********************************* //延时函数 //********************************* void delay (unsigned int us) { while(us--); } //********************************* //DS18B20复位函数 //********************************* void reset(void) { uchar x=0; DQ=1; delay(8); DQ=0; delay(80); DQ=1; delay(14); x=DQ; delay(20); } //******************************** //从DS18B20中读一个字节 //******************************** uchar readbyte(void) { uchar i=0; uchar dat=0; for (i=8;i>0;i--) { DQ=0; dat>>=1; DQ=1; if(DQ) dat|=0x80; delay(4); } return(dat); } //******************************** //向DS18B20中写一个字节 //******************************** void writebyte(unsigned char dat) { uchar i=0; for (i=8;i>0;i--) { DQ=0; DQ=dat&0x01; delay(5); DQ=1; dat>>=1; } delay(4); } //***************************** //从DS18B20中读取实时温度值 //***************************** void readtemp(void) { uchar a=0,b=0; reset(); writebyte(0xCC);//跳过序列号 writebyte(0x44);//启动温度转换 reset(); writebyte(0xCC); writebyte(0xBE);//读九个寄存器,前2个为温度 a=readbyte();//低位 b=readbyte();//高位 if(b>0x0f)//判断是否为负值 { a=~a+1; if(a==0) b=~b+1; else b=~b; flag=10; } else flag=12; temper[0]=a&0x0f; a=a>>4; temper[1]=b<<4; temper[1]=temper[1]|a; } //********************************** //动态扫描显示函数 //********************************** void scandisp() { unsigned char i,value; for(i=0;i<4;i++) { P3=0xff; value=table[dispbuf[i]]; if(i==2) value|=0x80; P2=value; P3=scan[i]; delay(90); } } //******************************** //定时中断函数 //******************************** void Timer0(void)interrupt 1 using 1 { TH0=(65536-50000)/256; TL0=(65536-50000)%256; TCNT++; if(TCNT==6) { TCNT=0; LED=~LED; } } //******************************* //主函数 //******************************* void main() { uchar temp,temp1; TCNT=0; TMOD=0x01; TH0=(65536-50000)/256; TL0=(65536-50000)%256; IE=0x82; while(1) { if(input==0) TR0=1; else{ TR0=0; LED=1; } readtemp(); temp1=temper[0]; temp=temper[1]; dispbuf[3]=ditab[temp1]; dispbuf[2]=temp%10; temp=temp/10; dispbuf[1]=temp%10; dispbuf[0]=flag; scandisp(); } } 展开
2018-12-07 00:46:32 403 0
接种台的冰箱是否要做温度记录
接种台的冰箱是否要做温度记录... 接种台的冰箱是否要做温度记录 展开
2018-11-20 12:39:58 399 0
我要做一个数字频率计 需要一个可行的整形电路 频率范围1Hz~50M
请教一下 我要做一个数字频率计 需要一个施密特整形电路把正弦波三角波这些整成方波 但是用555电路能达到的频率有限 有没有其他好一点的方法?
2012-03-11 08:45:18 463 3
求高手指点,我要做一个恒压供水需要用什么配件?
打算用380V2.2KW以下交流水泵和380V2.2KW三晶变频器,需要配什么的型号的压力传感器,和什么配件?或者有更好的有谁知道三晶变频器应配什么压力传器?... 打算用380V2.2KW以下交流水泵和380V2.2KW三晶变频器,需要配什么的型号的压力传感器,和什么配件?或者有更好的 有谁知道三晶变频器应配什么压力传器? 展开
2016-11-05 02:50:57 546 1
你好 我要求助 我要做一个低频信号发生器 用lm324这个元件
要求(1)输出频率调节范围:100Hz~100kHz;(2)输出电压调节范围:正弦波有效值Vo=(0~5)V,锯齿波、矩形波峰峰值Vopp=(0~10)V;(3)在负载电阻上的电压峰-峰值Vopp≥6V;(4)... 要求 (1)输出频率调节范围:100Hz~100kHz; (2)输出电压调节范围:正弦波有效值Vo=(0~5)V,锯齿波、矩形波峰峰值Vopp=(0~10)V; (3)在负载电阻上的电压峰-峰值Vopp≥6V; (4)矩形波占空比调节范围:10%~90%; (5)锯齿波上升和下降的时间比调节范围:10%~90%; (6)*供电电源电压:220V/50Hz。(可选) 展开
2010-11-11 23:37:38 467 2
温度记录仪和温度记录变送器的区别
 
2016-08-14 03:27:38 458 2
我要做一个变频器,水泵,电机220KW,我想知道塑壳断路器,交流接触器,
我要做一个变频器,水泵,电机220KW,我想知道塑壳断路器,交流接触器,热继电器要多大的,要正泰品牌的,能给我型号Z好... 我要做一个变频器,水泵,电机220KW,我想知道塑壳断路器,交流接触器,热继电器要多大的,要正泰品牌的,能给我型号Z好 展开
2015-02-27 09:05:35 419 1
煤气报警器安装规范或验收规范
主要关心问题,煤气报警器能否墙面安装,对安装高度有没有特殊要求,能否不吸顶安装。 层高3米的厨房(未2次装修吊顶),墙面安装煤气报警装置于墙面2.5米高是否合理
2008-10-30 15:25:43 568 3
我公司租用了一个液氮储罐我们要做特种设备注册吗?
 
2012-03-31 04:10:05 924 2
我要做X光机
郁闷```我知道我现在 问的问题很愚笨``可无奈啊` 请 高手 指教一下` 我想亲手做一个非常简单`的X光机```实验一下 因为我休学``没朋友家人都在国外``很郁闷`` 在家想做``` 可能需要很多材料 或`书等等` 反正可以做就是了``就算 不能做```也要努力努... 郁闷```我知道我现在 问的问题很愚笨``可无奈啊` 请 高手 指教一下` 我想亲手做一个非常简单`的X光机```实验一下 因为我休学``没朋友家人都在国外``很郁闷`` 在家想做``` 可能需要很多材料 或`书等等` 反正可以做就是了``就算 不能做```也要努力努力看` 只要把 基本原理讲的清楚``周到``然后是 材料``和资料 讲```就ok 我觉得 一个人 努力 应该 可以做的到` 所以 那位帮帮看`` 我的确在理论上讲 一个学生做 这样东西 很荒唐` 可是真的 我想 亲自感觉一下``` 请你们 解决一下 ```非常 感谢 展开
2008-02-07 14:39:25 414 3
我需要做荧光定量PCR
设计引物后发现有多种纯化方式可以选择,比如DSL、PAGE、HPLC等等,效果上有什么区别吗?我应该怎么选择?
2017-08-08 14:02:27 457 1
各种煤气报警器的缺点(答后有分送)
要求详细的~
2018-11-12 19:21:58 319 0
怎么做低通滤波器 我要做直流电源滤波
 
2012-08-27 03:05:30 266 2
大家好:我要做一个夹具没有65Mn的材料,请问可以用什么材料代替?
 
2010-09-20 14:04:03 643 3
江江西抚州温度记录
我是刚到江西抚州的,想了解一下当地天气,Z好能有热心朋友给与指点。08年温度记录,在百度里没收到,如果有细心朋友记录了,能给看一下就Z好了。... 我是刚到江西抚州的,想了解一下当地天气,Z好能有热心朋友给与指点。08年温度记录,在百度里没收到,如果有细心朋友记录了,能给看一下就Z好了。 展开
2013-12-13 00:52:41 304 5
摄氏温度记录与读法?
 
2016-02-20 20:21:09 535 2
我要做一个切片机,用什么方法可以将橡胶切成0.05mm+-0.005mm厚的薄片。
橡胶的刚度类似于那种白色的2B橡皮。直接将刀片固定在机器上可以实现么,如果可以的话需要用什么刀片呢。
2018-11-26 02:43:57 363 0
你好,我要做PPT,需要插入一个30秒的计时器,请问你知道怎么办吗?
 
2011-12-07 00:23:31 296 4
混凝土同条件养护温度记录包括做模那天吗?养护龄期算不算做模当天?
 
2011-11-02 05:22:01 456 4

10月突出贡献榜

推荐主页

最新话题