基于AT89C52,ADC0809简易数字电压表数码管显示c程序(4位的共阳数码管),主要是最后89C52的四位控制

2023-02-03

本文主要是 基于AT89C52,ADC0809简易数字电压表数码管显示c程序(4位的共阳数码管),主要是最后89C52的四位控制 相关的知识问答,如果你也了解,请帮忙补充。

参考知识1

#include  <reg52.h>

unsigned char code dispbitcode[]=0xfe,0xfd,0xfb,0xf7,

         0xef,0xdf,0xbf,0x7f;

unsigned char code dispcode[]=0x3f,0x06,0x5b,0x4f,0x66,

        0x6d,0x7d,0x07,0x7f,0x6f,0x00;

unsigned char dispbuf[8]=10,10,10,10,0,0,0,0;

unsigned char dispcount;

unsigned char getdata;

unsigned int temp;

unsigned char i;

sbit ST=P3^0;

sbit OE=P3^1;

sbit EOC=P3^2;

sbit CLK=P3^3;

void main(void)

 ST=0;

 OE=0;

 ET0=1;

 ET1=1;

 EA=1;

 TMOD=0x12;

 TH0=216;

 TL0=216;

 TH1=(65536-4000)/256;

 TL1=(65536-4000)%256;

 TR1=1;

 TR0=1;

 ST=1;

 ST=0;

 while(1)

 

  if(EOC==1)

  

   OE=1;

   getdata=P0;

   OE=0;

   temp=getdata*235;

   temp=temp/128;

   i=5;

   dispbuf[0]=10;

   dispbuf[1]=10;

   dispbuf[2]=10;

   dispbuf[3]=10;

   dispbuf[4]=10;

   dispbuf[5]=0;

   dispbuf[6]=0;

   dispbuf[7]=0;

   while(temp/10)

   

    dispbuf[i]=temp%10;

    temp=temp/10;

    i++;

    

   dispbuf[i]=temp; 

   ST=1;

   ST=0;

  

 

void t0(void) interrupt 1 using 0

CLK=~CLK;

void t1(void) interrupt 3 using 0

 TH1=(65536-4000)/256;

 TL1=(65536-4000)%256;

 P1=dispcode[dispbuf[dispcount]];

 P2=dispbitcode[dispcount];

 if(dispcount==7)

 

  P1=P1 | 0x80;

 

  dispcount++;

 if(dispcount==8)

 

 dispcount=0;

  

本回答被提问者采纳
相似知识
温室里面如何控制温度和湿度? 由89C51单片机,A/D转换电路,温度检测电路,湿度检测电路、控制系统组成。温度检测电路将检测到的温度转换成电压,该模拟电压经ADC0809转换后,进入89C51单片机,单片机通过比较输入温度与设定
基于51单片机及RS485总线的温湿度变送模块设计 :基于AT89C51单片机,用DS18B20温度传感器和湿敏传感器设计大棚温建议使用JCJ100N数字式温湿度变送器,工业级产品,精度高,温度、湿度参考知识1问题补充:基于AT89C51单片机,用DS
at89c51单片机对应高低电平的电压值 高电平指的是和你电源电压相等的为逻辑1。0V表示逻辑0就是说你40脚和20脚之间的电压这个值就是IO输出高电平值,作为输入的时候,电压在2。8V以上都认为是高电平。可以兼容3。3V系统。底电平一般在0
单片机怎么与交换机连接 参考知识1单片机在程控交换机中的应用摘要:本文介绍单片机在程控交换机中的应用,使用五个ATMEL公司的AT89C52和AT89C51作为主控制器和从控制器,多机通讯,硬件结构清晰,模块化程序结构。0引
关于单片机控制温度,时钟的编程谁知道啊,AT89C51 #include<reg52.h>//包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义#include<intrins.h>sbitSCK=P3^6; //时钟
用ADC0809测量某环境的温度范围为30~50℃,线性温度变送器输出0~5V,试求精度 参考知识1这个精度应该由ADC0809模数转化器+温度变送器+一次仪表(传感器)本身的转换和测量精度决定。本回答被提问者和网友采纳 参考知识B5/20=0.25回收铂铑丝eja罗斯蒙特压力变送器
电子信息工程毕业论文 823.110kv变电站电气二次部分设计824.基于AT89C51的电话远程控制系统825.数字电子秤的设计826.基于单片机的数字电子钟设计827.湿度传感器在农作物生长环境参数监测仪中的应用828
现在我要用AT89C51、SHT11、DS18B20和COMPIM做一个温湿度数据采集,请问代码怎么怎么做? 写程序,要是不想自己写,可以出银子,我给你写。参考知识1用sht11就可以不用ds18b20了可以测量温湿度