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

相关推荐
2601_949146536 小时前
C语言语音通知接口接入教程:如何使用C语言直接调用语音预警API
c语言·开发语言
知南x8 小时前
【Ascend C系列课程(高级)】(1) 算子调试+调优
c语言·开发语言
代码游侠9 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
2的n次方_10 小时前
Runtime 执行提交机制:NPU 硬件队列的管理与任务原子化下发
c语言·开发语言
凡人叶枫11 小时前
C++中智能指针详解(Linux实战版)| 彻底解决内存泄漏,新手也能吃透
java·linux·c语言·开发语言·c++·嵌入式开发
xuxg200511 小时前
4G 模组 AT 命令解析框架课程正式发布
stm32·嵌入式·at命令解析框架
凡人叶枫13 小时前
C++中输入、输出和文件操作详解(Linux实战版)| 从基础到项目落地,避坑指南
linux·服务器·c语言·开发语言·c++
CODECOLLECT13 小时前
京元 I62D Windows PDA 技术拆解:Windows 10 IoT 兼容 + 硬解码模块,如何降低工业软件迁移成本?
stm32·单片机·嵌入式硬件
BackCatK Chen13 小时前
STM32+FreeRTOS:嵌入式开发的黄金搭档,未来十年就靠它了!
stm32·单片机·嵌入式硬件·freertos·低功耗·rtdbs·工业控制
傻乐u兔13 小时前
C语言进阶————指针3
c语言·开发语言