📄 adc0808 diy.c
字号:
#include<reg51.h>
#include<stdio.h>
#define uchar unsigned char
#define uint unsigned int
#define N 5
//uchar code dispbitcode[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
uchar code dispbitcode[10]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};
uint temp;
uchar getdata;
uchar temp_H;
uchar temp_M;
uchar temp_L;
sbit P17=P1^7;
sbit ST=P3^0;
sbit CLK=P3^1;
sbit EOC=P3^2;
sbit OE=P3^3;
sbit P34=P3^4;
sbit P35=P3^5;
sbit P36=P3^6;
sbit P20=P2^0;
sbit P21=P2^1;
sbit P22=P2^2;
sbit P23=P2^3;
void inital()
{
TMOD=0x01;
TH0=(65536-200)/256;
TL0=(65536-200)%256;
ET0=1;
EA=1;
TR0=1;
}
void intr()interrupt 1
{
TH0=(65536-200)/256;
TL0=(65536-200)%256;
CLK=~CLK;
}
void Delay(unsigned int i)
{
unsigned int j;
for(;i>1;i--)
{
for(j=0;j<125;j++);
{;}
}
}
void display()
{
P34=1;
P35=0;
P36=0;
P1=dispbitcode[temp_H];
P17=0;
P34=1;
P35=0;
P36=0;
Delay(N);
P1=0xff;
P1=dispbitcode[temp_M];
P34=0;
P35=1;
P36=0;
Delay(N);
P1=0xff;
P1=dispbitcode[temp_L];
P34=0;
P35=0;
P36=1;
Delay(N);
P1=0xff;
}
void main()
{
inital();
P2=0xff;
while(1)
{
ST=0;
OE=0;
ST=1;
ST=0;
while(EOC==0);
OE=1;
getdata=P2;
OE=0;
temp=getdata*1.0/255*500;
temp_H=temp/100;
temp_M=temp/10%10;
temp_L=temp%10;
display();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -