|
#include "reg52.h" //定义51单片机特殊功能寄存器
#include "intrins.h"
#include "IIC.h"
#include "ds18b20.h"
#define u8 unsigned char
#define u16 unsigned int
sbit KEY1=P3^0;//s7按键
sbit KEY2=P3^1;//s6按键
sbit KEY3=P3^2;
sbit KEY4=P3^3;
u8 LED[8]={0XFE,0XFD,0XFB,0XF7,0XEF,0XDF,0XBF,0X7F}; //1100 0110 //1000 1100
char code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xBF,0xff,0x7f,0xc6,0x8C};
u16 counts;
u8 Temp_H=30; //温度的上限
u8 Temp_L=20; //温度的下限
u8 Temp_Hx=30; //温度的上限
u8 Temp_Lx=20; //温度的下限
u8 temp_flag; //温度上下限的标志位
u8 view_chag; //S4按键显示与设置切换按键标志位
u8 times;
#define MAIN_Fosc 12000000L
void delay_ms(unsigned int ms)
{
unsigned int i;
do{
i = MAIN_Fosc / 14000;
while(--i) ;
}while(--ms);
}
void Smg_display1(u8 yi,u8 er,u8 san,u8 si)
{
P2=(P2&0X1F)|0xc0;
P0=0X01;
P2=(P2&0X1F)|0xf0;
P0=table[yi];
delay_ms(1);
P2=(P2&0X1F)|0xc0;
P0=0X02;
P2=(P2&0X1F)|0xf0;
P0=table[er];
delay_ms(1);
P2=(P2&0X1F)|0xc0;
P0=0X04;
P2=(P2&0X1F)|0xf0;
P0=table[san];
delay_ms(1);
P2=(P2&0X1F)|0xc0;
P0=0X08;
P2=(P2&0X1F)|0xf0;
P0=table[si];
delay_ms(1);
}
void Smg_display2(u8 wu,u8 liu,u8 qi,u8 ba)
{
P2=(P2&0X1F)|0xc0;
P0=0X10;
P2=(P2&0X1F)|0xf0;
P0=table[wu];
delay_ms(1);
P2=(P2&0X1F)|0xc0;
P0=0X20;
P2=(P2&0X1F)|0xf0;
P0=table[liu];
delay_ms(1);
P2=(P2&0X1F)|0xc0;
P0=0X40;
P2=(P2&0X1F)|0xf0;
P0=table[qi];
delay_ms(1);
P2=(P2&0X1F)|0xc0;
P0=0X80;
P2=(P2&0X1F)|0xf0;
P0=table[ba];
delay_ms(1);
}
void TIME_Init()
{
TMOD=0X01;
TH0=(65535-50000)/256;
TL0=(65535-50000)%256;
ET0=1;
EA=1;
TR0=1;
}
|
-
-
12.rar
135.61 KB, 下载次数: 2, 下载积分: 黑币 -5
|