//本程序是通过热敏电阻测温度(30c-50c

#include

#include

#include

#define uchar unsigned char

#define uint unsigned int

uchar smg[]={0x88,0xeb,0x4c,0x49,0x2b,0x19,0x18,0xcb,0x08,0x09};

uchar b,d;

uint shuju;

int a,temp;

sbit start=P2^7;

sbit ale=P2^7;

sbit addc=P2^6;

sbit addb=P2^5;

sbit adda=P2^4;

sbit eoc=P2^3;

sbit oe=P2^2;

sbit clk=P3^2;//0809时钟脚

sbit dat=P3^0; //串行数码管数据端

sbit clock=P3^1; //串行数码管时钟端

sbit DQ=P2^0;

/******************delay**************************/

void delay(uint x)

{

while(x--);

}

void delay1(uint x)

{

uint i,j;

for(i=0;i

for(j=0;j<110;j++);

}

/*******************ds18b20***********************/

void Init_DS18B20(void)

{

unsigned char x=0;

DQ = 1; //DQ复位

delay(8); //稍做延时

DQ = 0; //单片机将DQ拉低

delay(80); //精确延时 大于 480us

DQ = 1; //拉高总线

delay(14);

x=DQ; //稍做延时后 如果x=0则初始化成功 x=1则初始化失败

delay(20);

}

/******************************从18B20中读一个字节****************************/

uchar Read_OneChar(void)

{

uchar i = 0;

uchar dat = 0;

for (i=8;i>0;i--)

{

DQ = 0; // 给脉冲信号

dat >>= 1;

DQ = 1; // 给脉冲信号

if(DQ)

dat |= 0x80;

delay(8);

}

return(dat);

}

/******************************向18B20中写一个字节****************************/

void Write_OneChar(uchar dat)

{

uchar i=0;

for (i=8; i>0; i--)

{

DQ = 0;

DQ = dat&0x01;

delay(10);

DQ = 1;

dat >>= 1;

}

delay(8);

}

/***********************************读取温度**********************************/

uchar Read_Temperature(void)

{

uchar i = 0,t = 0;

Init_DS18B20();

Write_OneChar(0xcc); // 跳过读序号列号的操作

Write_OneChar(0x44); // 启动温度转换

Init_DS18B20();

Write_OneChar(0xcc); //跳过读序号列号的操作

Write_OneChar(0xbe); //读取温度寄存器等(共可读9个寄存器) 前两个就是温度

i = Read_OneChar(); //读取温度值低位

t = Read_OneChar(); //读取温度值高位

b = t;

d =0x88;

/*if(b&0x80==0x80) //显示负数

{

t = ~t;

//t += 1;

i = ~i;

i += 1;

d = 0xbf;

}*/

a = i & 0x0f;

i = i >> 4; //低位右移4位,舍弃小数部分

t = t << 4; //高位左移4位,

单片机热敏电阻测温度c语言,51单片机热敏电阻测温程序.doc相关推荐

  1. 单片机波特率不加倍c语言,51单片机硬件系统设计时,为什么用11.0592MHz的晶振而不用12MHz晶振的原因及串口波特率误...

    在设计51系列的单片机系统时,一般选用11.0592MHz的晶振而不选用12MHz的晶振,为什么?12M的晶振,振荡频率明显高于11.0592M的,按理说12MHz的晶振可以提高单片机的性能,那么我们 ...

  2. 51单片机4位数乘法C语言,51单片机实现4位数以内的加减法

    中南民族大学,电子信息工程学院,开设了一门课程,叫<嵌入式电路设计>,由舒老师带头,旨在引导低年级的学生入门嵌入式,其内容比较多,包括模电.数电.C语言.单片机.EDA技术等.最近有位师弟 ...

  3. 51单片机生日快乐歌c语言,51单片机实现生日快乐歌

    for(j=0;j<115;j++); } //生日快乐歌的音符频率表,不同频率由不同的延时来决定 u8 code SONG_TONE[]={212,212,190,212,159,169,21 ...

  4. 51单片机生日快乐歌c语言,51单片机演奏音乐“祝你生日快乐”

    原标题:51单片机演奏音乐"祝你生日快乐" ; ORG 0000H LJMP START ORG 000BH INC 20H ;中断服务,中断计数器加1 MOV TH0,#0bbH ...

  5. 单片机自动调光C语言,51单片机led灯渐变PWM调光(渐亮渐灭)C语言和汇编源程序

    PWM控制led灯渐亮渐灭程序 适用ME500开发系统 短接JP41-2选用8个LED灯 PWM-PulseWidthModulation(脉冲宽度调制) PWM足?种周期?走而高低电平的rV空比可以 ...

  6. 单片机自动调光C语言,51单片机触控调光程序C语言

    /********************************************************************************************* 程序名: ...

  7. 51单片机流水灯用c语言,51单片机之流水灯(C语言和汇编两个版本)

    c语言 #include typedef unsigned char uint8; sbit ADDR0=P1^0; sbit ADDR1=P1^1; sbit ADDR2=P1^2; sbit EN ...

  8. 单片机控制lcd序c语言,51单片机驱动1602液晶的C程序

    # include /***************************************** 电路连接 P1------DB0-DB7 P2.0------RS P2.1------RW ...

  9. 51单片机音乐播放器c语言,51单片机之简单的音乐播放器

    /************************************************************* 音乐播放器: 按键 0 - 9 对应最多10首乐曲,当一首乐曲播放完毕后, ...

最新文章

  1. 如何备考上海市高等学校计算机一级,计算机一级考试备考攻略
  2. 中国芯片将靠此超车!RISC-V架构神在哪全解构【附下载】
  3. linux内核配置失败,petalinux配置内核出现下面错误
  4. 一种提高单片机i/o口驱动能力的方法
  5. python while一定要提供循环次数吗_Python语法之选择和循环(if、while)
  6. 关于I2C和SPI总线协议
  7. 差值平方和匹配_机器学习实战 | 简单目标识别与意图分析之模板匹配
  8. 大型油烟机清洗机器人_大型油烟机清洗机
  9. pywin32、win32api、win32gui、win32com、win32con 都是啥?
  10. 宏基4752g linux驱动下载,宏碁笔记本及应用程序驱动下载_硬件驱动下载
  11. Fastjson源码阅读:缺陷静态检查(上)
  12. 谷歌高级搜索技巧之高级语法查询指令
  13. opencv (五十四)ORB特征点
  14. 华南理工大学计算机科学与工程学院篡改,疑篡改研究生复试成绩!华工四人被停职接受调查...
  15. [学习]BES蓝牙芯片开发
  16. 极光推送REST API与Java后台对接
  17. 冯唐:职场人35岁后的成事心法,就这10个字
  18. java arraylist 复制_如何克隆ArrayList和复制其内容?
  19. 前端学习 HTML5和CSS3新特性 高级技巧 JavaScript基础语法
  20. 在高德地图使用: AMap is not defined

热门文章

  1. 正则匹配ip地址并替换
  2. [附源码]JSP+ssm计算机毕业设计无糖主义甜点店进销存系统382ys【源码、数据库、LW、部署】
  3. 《 Android物联网开发从入门到实战》国内第一本开发书籍!
  4. 千寻放弃rtd亚米级定位服务
  5. python升级3.9的艰辛历程
  6. EXCEL VBA连接不同版本的solidworks
  7. r76800h和i712700h性能差多少 锐龙r7 6800h和酷睿i7 12700h哪个好
  8. 模仿人类自动上色!爱奇艺提出动画上色AI模型,每张只需0.7秒 | WACV 2021
  9. weblogic Unable to obtain lock on
  10. Android花样loading进度条(四)-渐变色环形进度条