【51单片机】【protues仿真】基于51单片机热敏电阻数字温度计数码管系统

目录

一、主要功能

二、使用步骤

三、硬件资源

四、软件设计

五、实验现象

一、主要功能

1、数码管液晶显示热敏电阻测量温度

2、温度测量范围-60-125摄氏度

二、使用步骤

基于51单片机的热敏电阻数字温度计数码管系统采用热敏电阻作为温度传感元件,通过ADC转换器将模拟信号转换为数字信号,最终在数码管上显示温度值。该系统结构简单、成本较低,具有良好的稳定性和可靠性。

三、硬件资源

1、51单片机核心模块

2、按键模块

3、热敏传感器模块

4、数模转换模块

5、数码管显示模块

四、软件设计

#include<reg51.h>

#include <intrins.h>

#define uchar unsigned char

#define uint unsigned int

#define ad0_7 P1 //AD数据口

sbit cs=P2^4; //片选信号,低电平有效,控制芯片的启动和结果读取

sbit rd=P2^7; //读数据控制,低电平有效

sbit wr=P2^6; //AD启动控制,上升沿有效

sbit intr=P2^5; //AD转换完成输出低电平

uchar i;

uchar led[11]={ 0x3F, //"0"

0x06, //"1"

0x5B, //"2"

0x4F, //"3"

0x66, //"4"

0x6D, //"5"

0x7D, //"6"

0x07, //"7"

0x7F, //"8"

0x6F, //"9"

0x40, //"-"

};

uchar dat_AD[4]={0};

void t0init(){

TMOD=0x01;

TH0=(65535-2000)/256;

TL0=(65535-2000)%256;

EA=1;

ET0=1;

TR0=1;

}

//定时器中断函数,在中断中刷新数码管显示

void Time0( ) interrupt 1{

TH0=(65535-2000)/256;

TL0=(65535-2000)%256;

disp();

}

//主函数

void main(void){

t0init();

while(1){

start_ad();

data_shout(read_ad());

}

}

五、实验现象

演示视频:

【51单片机-B070】【protues仿真】基于51单片机热敏电阻数字温度计数码管仿真

相关推荐
HABuo41 分钟前
【linux文件系统】磁盘结构&文件系统详谈
linux·运维·服务器·c语言·c++·ubuntu·centos
不能跑的代码不是好代码3 小时前
STM32窗口看门狗(WWDG)知识点及标准库使用指南
stm32·单片机·嵌入式硬件
bingquan33333 小时前
在 Ghidra 中分析STM32裸机固件
stm32·单片机·嵌入式硬件
羽获飞3 小时前
从零开始学嵌入式之STM32——11.STM32---USART串行通讯
stm32·单片机·嵌入式硬件
宵时待雨5 小时前
STM32笔记归纳9:定时器
笔记·stm32·单片机·嵌入式硬件
逐步前行5 小时前
STM32_新建工程(寄存器版)
stm32·单片机·嵌入式硬件
bai5459365 小时前
STM32 CubeIDE 通过PWM占空比控制舵机角度
stm32·单片机·嵌入式硬件
esmap5 小时前
ESMAP 智慧消防解决方案:以数字孪生技术构建全域感知消防体系,赋能消防安全管理智能化升级
人工智能·物联网·3d·编辑器·智慧城市
2401_858936886 小时前
【Linux C 编程】标准 IO 详解与实战:从基础接口到文件操作实战
linux·c语言
松涛和鸣7 小时前
72、IMX6ULL驱动实战:设备树(DTS/DTB)+ GPIO子系统+Platform总线
linux·服务器·arm开发·数据库·单片机