AT89S52与DS18B20进行温度测量控制

来源:百度知道 编辑:UC知道 时间:2024/06/17 03:34:36
两个共阳极数码管分别接P0、P2口,DS18B20的DS端接P3.0,测量后显示范围为00至99度;烦请提供程序代码,如果测试成功再追加50分。我QQ739074633

我加你吧
164465659
我有 但是分得是我的下面参考 具体可以找我
#include <reg51.h>
#include <Intrins.h>
#include <absacc.h>
#include <my.h>
#define uchar unsigned char
#define uint unsigned int
#define WriteDeviceAddress 0xa0
#define ReadDviceAddress 0xa1
uint ff;

uchar shuj;
uchar csh_flag;
uchar data_flag;
uchar sec_1;
uchar sec;
uchar time;
uchar shuju;
sbit sstb=P3^2;
sbit csh=P3^4;
sbit run=P3^5;
uchar tm[3];
uchar data prn_buf[8];
sbit DQ =P1^0;//根据实际情况定义端口
sbit dog=P1^2;

typedef unsigned char byte;
typedef unsigned int word;

void htobcd(uchar dd)
{
uint div;
uchar i;
div=100;
for (i=0;i<3;i++)
{
tm[i]=dd/div;
dd%=div;
div/=10;
}

}

void m_send(uchar f)
{ ES=0;