【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单片机热敏电阻数字温度计数码管仿真

相关推荐
Wave84538 分钟前
STM32_标准库转hal库
stm32·单片机·嵌入式硬件
智者知已应修善业2 小时前
【51单片机:两边向中间流水:即两边先点亮然后熄灭,次边的点亮再熄灭,直到最中间的两个点亮再熄灭,然后重复动作。】2023-3-4
c语言·c++·经验分享·笔记·嵌入式硬件·算法·51单片机
嵌入式软硬件攻城狮2 小时前
6.单片机回调函数
单片机·嵌入式硬件
就是蠢啊2 小时前
单片机入门实验——点灯
单片机·嵌入式硬件
@曾记否3 小时前
瑞控FPVF405飞控开发板硬件功能整理
stm32·嵌入式硬件
Vanranrr3 小时前
车机项目中的 Widget 设计反思:从“能用”到“好用”的改进方向
c语言·c++·架构
oshan20123 小时前
小华HC32L136K8TA 单片机LED(三)
单片机·嵌入式硬件
小齐勇闯天涯3 小时前
STM32--PWM原理机制
stm32·单片机·嵌入式硬件
TDengine (老段)3 小时前
TDengine 字符串函数 Replace 用户手册
java·大数据·数据库·物联网·时序数据库·tdengine·涛思数据
全球通史4 小时前
[特殊字符] RISC-V实战:从0到100+FPS!进迭时空(Spacemit)开发板YOLOv8部署终极指南
嵌入式硬件·yolo·risc-v