单片机温度传感器c语言编码,基于单片机的温度传感器18b20的C语言程序
代码是在12M的晶振的晶振下调试出来的,希望可以给大家带来参考价值
#include //51芯片管脚定义头文件
#include //内部包含延时函数 _nop_();
#include
#define uchar unsigned char
#define uint unsigned int
uchar Flag=0; //定义一个全局的标志位
uchar Feng=0;
sbit ds= P3^1; //接18B20
void delay(uint t)
{
uint k;
while(t--)
{
for(k=0; k<12; k++)
{ }
}
}
void dsreset(void)//初始化函数
{
uint i;
ds=0;
i=97;
while(i>0)
i--;
ds=1;
i=4;
while(i>0)
i--;
}
bit tempreadbit(void) //读一个字节
{
uint i;
bit dat;
ds=0;
i++;
ds=1;
i++; //i++起延时作用
i++;
dat=ds;
i=8;
while(i>0)
i--;
return(dat);
}
uchar tempread(void)//读一个数据
{
uchar i=8,dat=0;
bit j;
for(i=1;i<=8;i++)
{
dat=dat>>1;
j=tempreadbit();
if(j==1)
dat=dat|(0x80);
}
return(dat);
}
void tempwritebyte(uchar dat)//写一个字节
{
uint i;
uchar j;
bit testb;
for(j=1;j<=8;j++)
{
testb=dat&(0x01);
dat=dat>>1;
if(testb)
{
ds=0;
i++;
i++;
ds=1;
i=8;
while(i>0)
i--;
}
else
{
ds=0;
i=8;
while(i>0)
i--;
ds=1;
i++;
i++;
}
}
}
void tempchange(void)
{
dsreset();
delay(1);
tempwritebyte(0xcc); //写跳过读rom
tempwritebyte(0x44); //写温度转换
}
float get_temp()
{
uchar a;
uint b;
float Read_Value;
dsreset();
//tempwritebyte(0xcc); //写跳过读rom
//tempwritebyte(0x44); //写温度转换
delay(10);
//dsreset();
tempwritebyte(0xcc);//写跳过读ROM
tempwritebyte(0xbe);//读暂存器
a = tempread();
b = tempread();
b = (b << 8) + a;
Read_Value = b *0.0625;
// delay(1000);
return(Read_Value);
}
void Display1() //显示温度
{
int temp,temp1;
temp=get_temp();
temp1 = temp*100;
P1 = 0x80|(temp1/1000);
delay(10);
P1 = 0x40|(temp1%1000/100);
delay(10);
P1 = 0x20|(temp1%1000%100/10);
delay(10);
P1 = 0x10|(temp1%1000%100%10);
}
main()
{while(1)
{
tempchange();
Display1(); //显示温度
}
}
单片机温度传感器c语言编码,基于单片机的温度传感器18b20的C语言程序相关推荐
- 【分享】基于单片机嵌入式的家用智能节水淋浴控制器的设计-基于单片机的电子贺卡控制系统设计-基于单片机的倒计时牌控制系统设计-基于单片机的彩灯控制器系统设计-多模式彩灯-单片机的八路路数字电压表控制设计
1334基于单片机嵌入式的家用智能节水淋浴控制器的设计-全套毕设课设设计资料 三个ds18b20分别采集进水口热水 冷水 和温水的水温,然后分别显示出来,按下开始按键,系统初始化,自动设置出水温度为 ...
- 视频教程-实战Go语言:基于开源数据的成语应用-Go语言
实战Go语言:基于开源数据的成语应用 多年互联网从业经验: 有丰富的的企业网站.手游.APP开发经验: 曾担任上海益盟软件技术股份有限公司项目经理及产品经理: 参与项目有益盟私募工厂.睿妙影音家庭物联 ...
- 有温度传感器的风机控制系统C语言,毕业论文--基于单片机的工业风机控制器设计与实现.doc...
大连东软信息学院 本科毕业设计(论文) 论文题目 论文题目:基于单片机的工业风机控制器设计与实现 系 所: 电子工程系 专 业: 电子信息工程(嵌入式系统工程方向) 学生姓名: 学生学号: 指导教师: ...
- 四路抢答器c语言编程,基于单片机的四路抢答器设计
基于单片机的四路抢答器设计 课程设计(论文) 题 目 名 称 多路数字抢答器设计 课 程 名 称 单片机原理及其应用 学 生 姓 名 学 号 系 .专 业 指 导 教 师 2013年 6月 24日 摘 ...
- 基于单片机的密码锁c语言设计程序,基于单片机的电子密码锁及程序
<基于单片机的电子密码锁及程序>由会员分享,可在线阅读,更多相关<基于单片机的电子密码锁及程序(17页珍藏版)>请在人人文库网上搜索. 1.基于单片机的电子密码锁设计摘要随着科 ...
- 汽车距离报警系统c语言编程,基于单片机的超声波汽车报警系统的设计
目前汽车报警装置已被广泛应用,并种类繁多,但大多报警装置均有其局限性.如早期出现的红外报警系统,最大的缺点是红外线波易受干扰,整个系统的警示音常呈现不稳定的乱鸣状态,另外对深黑色粗糙表面物体的反应也较 ...
- 出租车收费题目及答案c语言,《基于单片机的出租车计费(c语言)》.doc
基于单片机的出租车计费(c语言)基于proteus仿真 一.设计要求: 1.用实现出租车计费器的设计. 出租车起步开始计程和计费,计程系统按实际公里数计程,计费系统首先显示起步价(如.0),车行驶2k ...
- lcd显示屏c语言程序设计,基于单片机的LCD显示器控制的设计.doc
基于单片机的LCD显示器控制的设计 PAGE 17基于单片机的LCD显示器控制设计摘要:LCD液晶显示已经是人机界面的关键技术.本文对基于单片机的LCM液晶显示模块控制系统进行了研究.首先在绪论中介绍 ...
- 交通灯控制系统c语言编程,基于单片机的交通灯控制系统设计(本科)毕业论文设计.doc...
基于单片机的交通灯控制系统设计 摘 要 当你路过一个十字路口时,你是否注意到各个方向车辆和行人有有条不紊的通过十字路口.这样井然有序的情境靠什么来实现的呢?靠的是交通灯控制系统.在论文中我使用单片机S ...
- 基于单片机交通灯控制的c语言程序设计,基于单片机控制的交通灯毕业设计
摘 要 随着现代社会对交通运输的日趋依赖,交通灯成为了人们生活中不可或缺的一部分.传统的交通灯虽然在一定程度上可以满足指挥路口交通的需要,但随着城市规模的不断扩大,原有的交通灯已经表现出明显的缺点: ...
最新文章
- 网络工程师_想要记录下来的一些题_2
- php7.0源码包下载,PHPDisk 7.0 V-Core系列发布,源码下载[更新20140821]
- Multiple markers at this line
- php完全手册下载_PHP: 序言 - Manual
- C++这三点对你很重要
- weblogic ejb_使用Oracle WebLogic对应用程序外部的EJB的引用
- dataTransfer对象
- 安卓python安装库_如何快速在安卓上搭建python3环境
- VB打开文本文件各种方法
- 程序员思维看爱情是什么?
- 请说明指令周期、机器周期、时钟周期之间的关系。
- shell中的特殊符号
- 《梦幻西游手游》分析报告
- 100---Python绘制圆锥体
- 单位载质量能量消耗量_Ekg指标计算案例之电动物流车
- CodeForces - 1526C2
- Hadoop实例学习(八)全排序和区排序
- 6-9 字符串匹配 - C/C++ 数组及字符串c语言c++
- 南京大学声学基础(第三版)杜功焕第一章
- [逆向工具] 详解pbtk解析steam中的protobuf协议