如何用8051单片机做一个温度计?

温度传感器广泛用于电子设备中,用来显示实时温度,比如我们经常看到一些数字时钟便带有温度计,这是由于其中嵌入了温度传感器。在这个项目中,将展示如何设计数字温度传感器电路。在这个过程中,使用的是8051单片机。
温度值是模拟的,因此它需要使用模数转换器(adc)转换为数字值,然后显示出来。
一、数字温度传感器电路原理
该电路的主要原理是将模拟温度值转换为数字值,并在lcd显示屏上显示数字温度值。这里使用了8051单片机at89c51,它没有内置adc。因此,需要将外部adc芯片adc0804与8051单片机连接起来,以将模拟温度值转换为数字值。
二、使用8051的数字温度传感器电路
1.所需组件
at89c51(8051单片机);
11.0592mhz晶振;
2x33pf电容器;
10μf/16v电容;
3x10kω电阻器;
1kωx8电阻包;
10kω电位器;
16x2液晶显示器;
adc0804;
lm35;
150pf电容;
330ω电阻;
电源;
连接电线。
2.电路设计
adcic的数字输出引脚连接到8051的port3引脚。port0引脚使用1kω电阻包上拉,它们连接到16×2lcd的数据引脚。8051的p2.0和p2.1接lcd的rs和e。
lm35连接到adc0804的模拟输入引脚vin+(引脚6)。此处不解释振荡器、复位等基本组件。
完成所有连接并将代码烧录到8051单片机后,打开电源。lm35温度传感器向adc0804提供模拟温度数据,adc0804将其转换为数字值并发送到8051。
接收到数字值后,8051单片机执行一个小的计算,然后在lcd上显示温度。详细代码如下:
#include
#define lcd p0
#define dat p3
sbit rs=p2^0;
sbit e=p2^1;
void delay (int);
void display (unsigned char);
void cmd (unsigned char);
void init (void);
void string (char *);
void intro (void);
unsigned char degree[8]={0x0e,0x0a,0x0e,0x00,0x00,0x00,0x00,0x00};
char i=0;
void delay (int d)
{
unsigned char i=0;
for(;d>0;d--)
{
for(i=250;i>0;i--);
for(i=248;i>0;i--);
}
}
void cmd (unsigned char c)
{
lcd=c;
rs=0;
e=1;
delay(10);
e=0;
}
void display (unsigned char c)
{
lcd=c;
rs=1;
e=1;
delay(10);
e=0;
}
void string (char *c)
{
while(*c)
{
display(*c++);
}
}
void init (void)
{
cmd(0x38);
cmd(0x01);
cmd(0x0c);
cmd(0x80);
}
void intro (void)
{
string( electronics );
cmd(0xc0);
string( hub );
delay(1000);
cmd(0x01);
string( digital );
cmd(0xc0);
string( thermometer );
delay(1000);
cmd(0x01);
cmd(0x40);
for(i=0;i<8;i++)
display(degree[i]);
i=0;
cmd(0x80);
}
void main()
{
unsigned int val=0;
unsigned int temp=0;
init();
intro();
dat=0xff;
while(1)
{
if(i==0)
{
string(temp: );
i++;
}
val=dat*1.953;
cmd(0x86);
temp=(((val/10)%10)+48); display(temp); temp=((val%10)+48); display(temp);if(i==1) { display(0); string(c); i++; } delay(300);}while(1);}

特斯拉发邮件警告员工泄密严重惩罚,或将面临重罪指控、诉讼
基于多体动力学仿真的混动动力总成NVH性能开发
研究人员提出单一的双功能完全集成的可穿戴追踪器
苹果13最新官方消息 苹果13价格大概多少钱
移远通信定位定向GNSS模组LC02H正式发布,提供可靠的航向、姿态、位置等信息
如何用8051单片机做一个温度计?
传软银旗下愿景基金计划向商汤科技投资10亿美元
使用MAX15005用于LED应用系统的供电和驱动
一种可被植物“穿戴”的多功能传感器芯片
Linux系统常用的性能监控命令——vmstat命令
定位市场的新贵人“UWB定位”技术
5G新基建火热 石英晶振却拖后腿
中芯国际:市场已经触底! 大摩:半导体业将在Q4迎来上升循环
数字孪生可视化平台在智能工厂中的应用
2009巴黎汽车展/法国汽配展/09巴黎汽配展/09法国汽车
小米6什么时候上市?小米6将于本月发布,小米6的那些亮点你知道多少?
中国移动建成全球规模最大5G网络,做大共生共赢5G生态
关于5G上行速率增强技术创新方案的探索
爆料称华为nova 8系列将在12月份发布
智能手机的ESD测试