本文目录一览

1,一条总线最多能挂多少个DS18B20

单总线是8个,超过8个就要解决微处理器的总线驱动问题

一条总线最多能挂多少个DS18B20

2,ds18b20与atmega1360问答28连接要上拉电阻吗

你好:记得DS18B20360问答的数据端是需要接一个上拉电阻的。参考过许多开发板的原理图,大都将数据端上拉。因为DS18B20本身不具有输出高电平的能力,单片机读取的"1"信号必须通过初赶析掉原在台小某其他方式给出,典型的就是外答入万冲困质府接上拉电阻。有些单片行持数分防协短四司孙多机的端口具有准双向口模式,可以不用上拉电阻境干针处害洲场少百模。如P89LPC932A1有些单片机的端口具有内置上拉电阻,如ATMEL168,在开漏模式下打开内部上拉电阻也可以学斯谁发委氢款不用外接上拉电阻。但需要注意的是如果用51单片机准双向模式,划基盐端读取数据前最好先向端口写1,以保证上拉电路起作用。希望我的回答能帮助到你。

ds18b20与atmega1360问答28连接要上拉电阻吗

3,ds18b20外部供电方式下单总线上可以挂接多少个

理论上可以挂很多,但实际应用时挂多后很占系统资源,影响系统实时性.
虽然我很聪明,但这么说真的难到我了

ds18b20外部供电方式下单总线上可以挂接多少个

4,单片机AT89请交左声必雷回犯C51连接DS18B20然后将采集到的两个字节通过R

好编写啊,1.DS18B20采样 2.提取数据 3.UART传输。 给你点代码,自己参考下。 #include #define uint unsigned int #define uchar uns360问答igned char 却轴室运女sbit dq=P1^5; void sdelay(unsigned 提阻卫深西聚轮或外空磁int i) 0;i--) >=1; dq=1; if(dq) dat|=0值然x80; sdelay(4); } return(dat); } //写一个字节 writeds18b20(uchar dat) 0;i--) >=1; } } 银景早经盟收图轻义待//读取温度 readtemperature(void) #include #define uchar unsigned char #define uint unsigned int uchar receive[35]; //串口接收数据存放 uchar t=0; v减象议扬见弦做察面观oid delay(uint z)//延时子程序 0;x--) for(y=z;y>0;y--); //z*10 us } void in银转核先陆夫林并it()//串口初始化 >8; //取温度数据高字节 send_string(aa);//利用串口发送字符串 while(1);//这里只循环了一次,你可以做修改 } 基本思路就这样,程序要你自己修改一部分,有问题Hi我!

5,ds18b20电源要接多少超过5V行不行会不会烧坏

3.3...他手册上写的范围是3v到5.5v
1、拉高电阻太小导致电流太大引起器件本身发热;2、附近有其它发热器件3、通风不畅。18b20自身也要耗电,必然会产生一些热量

6,一个单片机IO口最多能驱动多少个DS18B20

与温度传感器的功耗有关,也与线路距离长短有关,一般情况下一两百个肯定没有问题。您也可参考申矽凌微电子的CT1820。其读取速度要快20多倍。
理论N个,所有的DS18B20就挂上,搜索ROM序列号

7,一个51单片机的IO口能同时挂多少个DS18B20

在DS18B20的有关资料中均未提及单总线上所挂DS18B20数量问题,容易使人误认为可以挂任意多个 DS18B20,在实际应用中并非如此。当单总线上所挂DS1820超过8个时,就需要解决微处理器的总线驱动问题,这一点在进行多点测温系统设计时 要加以注意。

8,一个51单片机的IO口能同时挂多少个DS18B20

外部IO具体能挂多少DS18B20(或外设)要看这个IO的拉电流与灌电流的承载大小,现在采用51为内核的芯片比较的多,各家的驱动能力也不相同,需要看你选芯片厂商的数据手册,就以AT的51来说,其有4个8位的io端口,每个端口驱动能力都不相同,你首先要确定是用个端口做IO。
呵呵再看看别人怎么说的。
由于现在51内核的单片机型号太多,每个系列的IO口驱动能力都不尽相同,因此这个问题实在无法给出确切的数字。但是,如果不考虑单片机的IO驱动能力,则只需要考虑DS18B20的驱动能力。这个只需要根据你的上拉就知道了。
在DS18B20的有关资料中均未提及单总线上所挂DS18B20数量问题,容易使人误认为可以挂任意多个 DS18B20,在实际应用中并非如此。当单总线上所挂DS1820超过8个时,就需要解决微处理器的总线驱动问题,这一点在进行多点测温系统设计时 要加以注意。

9,单片机的一个IO口连接多个DS18B20测温的c语言程序 最好带有

连接多个的我没有,好像也实现不了,除非你能实现片选。连接一个的我倒有的,带1602显示,而且有protues仿真图。 哦,没错。每个芯片都有出厂序列号,通过读这个序列号就可以辨识是哪个芯片了。
readtemperature(void) init_ds18b20(); //初始化 writeonechar(0xcc); //跳过读序列号的操作 writeonechar(0x44); //启动温度转换 delay(125); //转换需要一点时间,延时 init_ds18b20(); //初始化 writeonechar(0xcc); //跳过读序列号的操作 writeonechar(0xbe); //读温度寄存器(头两个值分别为温度的低位和高位) templ=readonechar(); //读出温度的低位lsb temph=readonechar(); //读出温度的高位msb //温度转换,把高低位做相应的运算转化为实际温度 temperature=((temph*256)+templ)*0.0625; delay(200); return(temperature);}这是一段可执行的代码,你的代码有些函数并没有在上面,所以很难解释你的那个问题,有什么问题可继续追问,也许是一个延时的问题,很难解释51的问题,就是不断地删减代码,增添代码
可以通过读取ID的方法来区分读取多个芯片的温度。

文章TAG:最多最多连接多少个ds18b20  一条总线最多能挂多少个DS18B20  
下一篇