DS18B20和单片机测温,双位或四位LED显示,为什么最后一位特别亮,前面的好像电压不足似的?

如题所述

在每位数码管的延时后再送一次数据,这个数据主要为关闭显示(把所有位选置为无效)。

如果没有关闭,那么在显示最后一位数码管后会执行别的子程序,这些子程序对最后一位数码管来说相当于又延时了一下。这样看来最后一位数码管的延时时间比其它几位的要长,当然会亮很多了。

另外你可以参考一下我的博客,里面有程序。我里面程序的主要好处是不用等待DS18B20的转换。因为在等待转换结束时间是很长的(12位精度是750ms,快1秒了)。程序另外一个特点是在DS18B20有问题或接线断开后能够提示“NO-18B20”.
http://blog.sina.com.cn/u/2050455692
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-04-15
你检查下是不是程序里最后一位刷新频率高或输出延时比较长,有可能是中断引起的哟!

DS18B20和单片机测温,双位或四位LED显示,为什么最后一位特别亮,前面的...
另外你可以参考一下我的博客,里面有程序。我里面程序的主要好处是不用等待DS18B20的转换。因为在等待转换结束时间是很长的(12位精度是750ms,快1秒了)。程序另外一个特点是在DS18B20有问题或接线断开后能够提示“NO-18B20”.http:\/\/blog.sina.com.cn\/u\/2050455692 ...

DS18B20温度传感器如何与单片机相连接
三通道18B20温度测量数码管显示。-55-+125℃,用1位数码管显示当前通道号,4位数码管显示18B20当前通道温度值,负号位与正温度百位1用同一位数码管显示,该位为0不显示。

单片机DS18B20测温的问题,程序好像没问题,但是用protues仿真就是没...
对了,你怎么这样写程序啊,这样显示的时间会不均衡的,即每位数码管显示的时间不一样,会带来一个暗一个亮,特别是当你想加点其它功能,比如说按键,采AD等等时,你会发现显示的不正常

DS18B20温度传感器与单片机间的通信线(延长线)可以多长
50~100m可能有点长,我没有试过那么长,那么长的话信号可能不稳定~~~最好加些信号放大之类的吧,防止衰减·~

六位数码管时钟
1.基于labVIEW虚拟滤波器的设计与实现 2.双闭环直流调速系统设计 3.单片机脉搏测量仪 4.单片机控制的全自动洗衣机毕业设计论文 5.FPGA电梯控制的设计与实现 6.恒温箱单片机控制 7.基于单片机的数字电压表 8.单片机控制步进电机毕业设计论文 9.函数信号发生器设计论文 10.110KV变电所一次系统设计 11....

为什么单片机控制18B20测温初始总是显示85度然后显示测量值
*The power-on reset value of the temperature register is +85°C,这个是DS18B20数据手册里的表述,也就是说,DS18B20在上电复位时,其温度寄存器里的初始值是85°C。所以你的问题就出来了。如果你不想显示这个85°C,你可以延迟一段时间,比如0.5S后再提取这个DS18B20转换的温度显示即可。 本回答由网友推荐 举报...

谁能告诉我单片机从ds18b20中读取温度的原理,是怎样将ds18b20中输出的...
首先,DS18B20输出的一位(1 bit)信号是不能被单片机变为多位的,一位就是一位,单片机需要连续多次读取DS18B20输出的一位信号,来合成它需要的信息。比如DS18B20的温度输出是16位数据,那么单片机就要读16次1 bit数据。读取温度伪代码(temperature为保存温度数值的整型变量):for ( i=1; i<=16; i+...

单片机ds18b20测温程序,为啥数码管显示的温度是16进制,我照着别人的...
共阴极和共阳极的数码管字符编码不同的,好好检查检查你的段码数组。

单片机DS18B20测温的问题,程序好像没问题,但是用protues仿真就是没...
你这是动态显示,ds18b20转换时间很长,基本上数码管就没有闪烁的时间就过去了,人眼很难捕捉到,你用静态显示就看见了 如果想动态显示那么 display();改成for(i=1;i<100,i++){ display();} 可以调整i的上限观察吧

DS18B20测温C程序:数码管显示不随温度变化,且不正确,求高手解答,万分感 ...
在mian函数while(reset())的下一行加上DQ=1;(拉高电平)。

相似回答
大家正在搜