首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

[求助]关于DS18B20???急!!!

[求助]关于DS18B20???急!!!

小弟最近在用DS18B20,不知怎的,每次温度转换都不成功,网上好多资料都千篇一律,实在没法,希望哪位前辈指点一二,谢谢!下面是源程序: #include #include #include sbit DQ=P0^0; bit flag; unsigned char *a=0x81; unsigned char *b=0x82; //---------------------------------------------------------------// void delay(int cnt) // delay 16*cnt+24us { int i; for(i=0;i>i; temp=temp&0x01; write_bit(temp); } delay(5); } //---------------------------------------------------------------------------// void Init18b20 (void) { DQ=bus_reset(); if(DQ==0) flag = 1; //detect 1820 success! else flag = 0; //detect 1820 fail! delay(20); //20 _nop_(); _nop_(); DQ = 1; } //----------------------------------------------------------------------------// /*读取温度*/ void ReadTemperature(void) { Init18b20(); write_byte(0xCC); /* 跳过读序号列号的操作*/ write_byte(0x44); /* 启动温度转换*/ Init18b20(); write_byte(0xCC); /*跳过读序号列号的操作*/ write_byte(0xBE); /*读取温度寄存器等(共可读9个寄存器) 前两个就是温度*/ *a=read_byte(); *b=read_byte(); } main() { *a=0x00; *b=0x00; ReadTemperature(); while(1); }
var reload=1;

请在网上搜索“单片机应用及C51程序设计”的图书专栏,里边有C51源程序。

这是时序问题最重要了,很多公开的程序的单片机是可以用的!
飞思卡尔8/16/32位多功能开发板/下载器:
网站:http://www.lqist.cn,
淘宝店:http://shop36265907.taobao.com
想请教我个问题。     你发信息后下方那个:SIGNATURE  。。。。。。。。。。。如何设置。还是高级会员才有的。谢谢你请解一下
回复:QQ1093725698
你说的那个应该在个人资料的个人签名里设置
返回列表