欢迎来到天天文库
浏览记录
ID:56825623
大小:19.00 KB
页数:4页
时间:2020-07-15
《DS18B20温度采集程序代码.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、/*********************************************************************文件名:温度采集DS18B20.c*描述:该文件实现了用温度传感器件DS18B20对温度的采集,并在数码管上显示出来。*创建人:东流,2012年2月10日*版本号:2.0***********************************************************************/#include#defineucharunsignedch
2、ar#defineuintunsignedint#definejump_ROM0xCC#definestart0x44#defineread_EEROM0xBEsbitDQ=P2^3;//DS18B20数据口unsignedcharTMPH,TMPL;ucharcodetable[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};/********************************************************************
3、*名称:delay()*功能:延时函数*输入:无*输出:无***********************************************************************/voiddelay(uintN){inti;for(i=0;i4、**********************************************************************/voidDelay_1ms(uinti)//1ms延时{ucharx,j;for(j=0;j5、*****************************************************/ucharReset(void){uchardeceive_ready;DQ=0;delay(29);DQ=1;delay(3);deceive_ready=DQ;delay(25);return(deceive_ready);}/*********************************************************************名称:read_bit()*功能:从DS18B20读一6、个位值*输入:无*输出:从DS18B20读出的一个位值***********************************************************************/ucharread_bit(void){uchari;DQ=0;DQ=1;for(i=0;i<3;i++);return(DQ);}/*********************************************************************名称:write_bit()*功能:向DS18B20写一位*输7、入:bitval(要对DS18B20写入的位值)*输出:无***********************************************************************/voidwrite_bit(ucharbitval){DQ=0;if(bitval==1)DQ=1;delay(5);DQ=1;}/*********************************************************************名称:read_byte()*功能:从DS18B20读一个字8、节*输入:无*输出:从DS18B20读到的值***********************************************************************/ucharread_byte(void){uchari,m,receive_data;m
4、**********************************************************************/voidDelay_1ms(uinti)//1ms延时{ucharx,j;for(j=0;j
5、*****************************************************/ucharReset(void){uchardeceive_ready;DQ=0;delay(29);DQ=1;delay(3);deceive_ready=DQ;delay(25);return(deceive_ready);}/*********************************************************************名称:read_bit()*功能:从DS18B20读一
6、个位值*输入:无*输出:从DS18B20读出的一个位值***********************************************************************/ucharread_bit(void){uchari;DQ=0;DQ=1;for(i=0;i<3;i++);return(DQ);}/*********************************************************************名称:write_bit()*功能:向DS18B20写一位*输
7、入:bitval(要对DS18B20写入的位值)*输出:无***********************************************************************/voidwrite_bit(ucharbitval){DQ=0;if(bitval==1)DQ=1;delay(5);DQ=1;}/*********************************************************************名称:read_byte()*功能:从DS18B20读一个字
8、节*输入:无*输出:从DS18B20读到的值***********************************************************************/ucharread_byte(void){uchari,m,receive_data;m
此文档下载收益归作者所有