基于DS18B20的AT89C51温度监控单片机程序

温度上限50,下限10,要键盘输入

在仿真的时候数码管驱动最好不要用三极管,本人用着是不好使,还有输入数据你用个矩阵键盘太浪费了,程序也麻烦,三个独立按键就搞定了。追问

就改成3个,程序用C语言,要求
在(时钟)及温度的基础上增加如下功能:
1.增加一个按键D接着外部中断0口,在平时显示器显示温度值,当有外部中断信号时显示时间,且3s后自动切换到温度显示状态;
2.增加一个十五分报时功能,每到00分、15分、30分、45分时自动切换到时间显示状态,并报警(用led灯亮表示),3s后自动切换到温度显示状态。

追答

还是有点复杂哦,Q我

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-01-04
留个邮箱有时间发给你

急需:AT89C51单片机的DS18B20温度检测电路及程序。
DISPLAY:MOV A,29H MOV B,#10 ;10进制\/10=10进制 DIV AB MOV B_BIT,A ;十位在A MOV A_BIT,B ;个位在B MOV R0,#4 CLR C;多加的 DPL1: MOV R1,#250 ;显示1000次 DPLOP:MOV DPTR,#NUMTAB MOV A,TD MOVC A,@A+DPTR ;查通道的7段代码 MOV P0,A ;送出十位的7段代码 CLR...

求C语言程序,AT89C51单片机为核心,DS18B20测温度,实时用4位LED显示...
\/\/温度正负标志 \/***ds1820程序***\/ void delay_18B20(unsigned int i) \/\/延时1微秒 { while(i--); }void ds1820rst() \/*ds1820复位*\/ { unsigned char x=0; DQ = 1; \/\/DQ复位 delay_18B20(4); \/\/延时 DQ = 0; \/\/DQ拉低 delay...

基于AT89C51单片机和DS18B20温度传感器、LCD1602液晶显示的高精度数字温...
Init_DS18B20();WriteOneChar(0xCC); \/\/ 跳过读序号列号的操作 WriteOneChar(0x44); \/\/ 启动温度转换 delay_18B20(100); \/\/ this message is wery important Init_DS18B20();WriteOneChar(0xCC); \/\/跳过读序号列号的操作 WriteOneChar(0xBE); \/\/读取温度寄存器等(共可读9个寄存器)...

求基于AT89C51单片机和DS18B20温度传感器、LCD1602液晶显示的数字温度...
uchar code table[]="Welcome To" ;\/\/初始化日期和星期 uchar code table1[]="Our System!";\/\/初始化时间 uchar code table2[]="Temperature is:";\/\/初始化时间 \/\/以下三个是定义LCD的引脚 sbit lcden=P2^2;sbit lcdwrite=P2^1;sbit lcdrs=P2^0;char wendu;\/\/延时程序 void delay(uin...

求基于AT89C51单片机的DS18B20温度检测程序(用C语言)
\/\/DS18B20的读写程序,数据脚P3.3 \/\/ \/\/温度传感器18B20汇编程序,采用器件默认的12位转化 \/\/ \/\/最大转化时间750微秒,显示温度-55到+125度,显示精度 \/\/ \/\/为0.1度,显示采用4位LED共阳显示测温值 \/\/ \/\/P0口为段码输入,P24~P27为位选 \/\/ \/***\/ include "reg51.h"include...

单片机AT89C51和DS18B20温度检测并在数码管上显示出来,程序和现象如 ...
1、针对你的程序,先屏蔽掉1820,直接给数据,显示正常,说明显示程序部分可用,如下:include<reg51.h> define uchar unsigned char define uint unsigned int sbit DQ= P1^0;sbit smg0=P3^0 ;sbit smg1=P3^1 ;sbit smg2=P3^2 ;sbit smg3=P3^3;int temp ;unsigned char code smg_du...

温度传感器DS18B20和单片机AT89C51,怎么焊接啊,电路图也看不太懂,求...
给你一个连接图,只要你焊接的时候,能够按图连上,就能工作,程序用中断 18B20的1脚接电源,2脚接51的第12脚(P3。2中断0),3脚接地

基于AT89C51单片机和DS18B20温度传感器、LCD1602液晶显示的数字温度计...
只是LCD1602的代码 ;多功能51单片机开发板 ;LCD1602测试程序 RS EQU P2.0 RW EQU P2.1 E EQU P2.2 LDATA EQU P1 ORG 0000H AJMP MAIN ORG 0030H MAIN: MOV R0,#00H ;R0:每行显示字符的个数 MOV R1,#80H ;寄存器地址 MOV A,#38H ;设置显示(16×2)ACALL WIR MOV A...

求:基于AT89C51单片机的多路DS18B20测温显示
bit DS18B20_FLG = 0; \/\/“1”:DS18B20存在 ;“0”:不存在 unsigned char LEDBuf[4];void delay(unsigned int i);\/\/延时 display();\/\/DS18B20温度采集子程序\/\/\/DS18B20温度采集子程序\/\/\/DS18B20温度采集子程序\/\/\/ unsigned char Init_DS18B20(void);unsigned char Read_DS18B20(void); ...

用AT89c51与DS18B20做数字温度计proteus怎么连接仿真图和C语言编程...
1、PROTEUS安装好后,默认不会在桌面上产生快捷方式。先打开开始菜单,依次点击“程序、Proteus7Professional、ISIS7Professional”打开PROTEUS。2、单击图中的P,添加单片机等元件。3、用关键字搜索,89C51,再加几个LED,因为是仿真就不用加限流电阻和晶振复位的元件了。4、把元件排列放好,再放一个电源...

相似回答