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

相关推荐
三品吉他手会点灯4 小时前
C语言学习笔记 - 20.C编程预备计算机专业知识 - 变量为什么必须的初始化【重点】
c语言·笔记·学习
智者知已应修善业5 小时前
【51单片机中的打飞机设计】2023-8-25
c++·经验分享·笔记·算法·51单片机
FreakStudio6 小时前
亲测可用!可本地部署的 MicroPython 开源仿真器
python·单片机·嵌入式·面向对象·并行计算·电子diy·电子计算机
智者知已应修善业7 小时前
【51单片机按键调节占空比3位数码管显示】2023-8-24
c++·经验分享·笔记·算法·51单片机
rit84324998 小时前
STM32 + DS3231 + TM1640 实时时钟数码管显示系统
stm32·单片机·嵌入式硬件
JasmineX-18 小时前
数据结构(笔记)——双向链表
c语言·数据结构·笔记·链表
小懒懒️8 小时前
嵌入式常见通信协议学习——UART
stm32·uart·通信协议
zjxtxdy9 小时前
STM32开发
stm32·单片机·fpga开发
BT-BOX9 小时前
STM32简易数字电流表仿真_LCD1602显示
stm32·电流测量·lcd1602显示·电流表
集和诚JHCTECH9 小时前
BRAV-7120加持,让有毒有害气体无处遁形
大数据·人工智能·嵌入式硬件