18b20温度传感器c语言编程实例

18b20温度传感器c语言编程实例

ID:5295436

大小:44.50 KB

页数:5页

时间:2017-12-07

18b20温度传感器c语言编程实例_第1页
18b20温度传感器c语言编程实例_第2页
18b20温度传感器c语言编程实例_第3页
18b20温度传感器c语言编程实例_第4页
18b20温度传感器c语言编程实例_第5页
资源描述:

《18b20温度传感器c语言编程实例》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、温度传感器C语言编程实例#include#include//含有——nop_();#include//含有运算#defineucharunsignedchar#defineuintunsignedintsbitDQ=P3^7;//数据、时钟线ucharduanma[]={0XFC,0X60,0XDA,0XF2,0X66,0XB6,0XBE,0XE0,0XFE,0XF6};uintwendu;//定义温度值存储位置//ucharbdatadate;原来是用来移动数据的floatf_num;//因为温度传

2、感器的精度为0.0625所以设一个float行的变量//sbitd=date^0;voiddelay_ms(uintms){uchari,j;for(i=ms;i>0;i--)for(j=110;j>0;j--);}voiddelay_us()//25us延时{_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_()

3、;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();}/******************************************************init()初始化复位程序变量i;还有—nop是用来延时的时序:1、2us、0、480us、等待确认;在延时20us、1******************************************************/voidinit(){uinti;DQ=1;_nop_();DQ=0;delay_us();//1delay_us();//

4、2delay_us();//3delay_us();//4delay_us();//5delay_us();//6delay_us();//7delay_us();//8delay_us();//9DQ=1;i=10;while((i--)&&(DQ==1));i=10;while(i--);DQ=1;}/******************************************************字节写:write_byte变量x用来产生for循环在写的过程中,0和一是分开写的时序:0、15us、把数据植入、45us、1、重复前面、1当进行写

5、数据时0和1是分开写的;但是时序也要分开写;******************************************************/voidwrite_byte(uchardate)//传递过来的参数是操作指令例如:0xcc,0x44;0xbe{ucharx;bittestb;for(x=0;x<8;x++){testb=date&0x01;//数据处理,它的作用是将数据的最低取出一直去完八位date>>=1;//没去一次向左移动一次if(testb){DQ=0;_nop_();_nop_();DQ=1;delay_us();_nop_

6、();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();DQ=1;delay_us();}else{DQ=0;_nop_();_nop_();DQ=0;delay_us();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();DQ=1;}}DQ=1;}/**********************

7、********************************位读程序:这样做的目的是为了把程序写的更有条理性而且程序的类型是bit型的,因此返回值为bit型的时序:0、15us、把数据置入、45us、1******************************************************/bitread_bit(){bitbt;DQ=1;_nop_();_nop_();DQ=0;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();DQ=1;_nop_();_nop_();_nop_();_

8、nop_();bt=DQ;returnbt;}/**

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。