#include <absacc.h>
#include <reg51.h>
#define uchar unsigned char
#define uint unsigned int
#define COM8255 XBYTE[0X060FF] /*命令字地址*/
#define PA8255 XBYTE[0X000FF] /*A口地址*/
#define PB8255 XBYTE[0X020FF] /*B口地址*/
#define PC8255 XBYTE[0X040FF] /*C口地址*/
sbit SPK=P1^0; //定义蜂鸣器端口
sbit DQ=P1^2; //ds18b20 端口
sbit gao=P1^4;
sbit jinbao1=P1^6;
sbit di=P1^5;
sbit jinbao2=P1^7;
unsigned char code table[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,
0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E,0xFF};
uchar code poly[]={0xf7,0xfb,0xfd,0Xbf,0x7f};
uchar temp;
unsigned char Shiwei; //定义十位
unsigned char Gewei; //定义个位
uchar flag_get,count,num,minute,second;
uchar i,key,S,j;
uchar keyscan(void);
void delay1(uint i);
unsigned char ReadTemperature(void);
void Init_DS18B20(void);
unsigned char ReadOneChar(void);
void WriteOneChar(unsigned char dat);
void delay(unsigned int i);
/* 初始化1 */
void init(void)
{
TMOD|=0x01;//定时器设置
TH0=0xef;
TL0=0xf0;
IE=0x82;
TR0=0;
SPK=1;
gao=0;
di=0;
jinbao1=0;
jinbao2=0;
key=0;
Shiwei=0;
Gewei=0;
COM8255=0X88; //定义C口高四位输入、低八位为输出
}
希望有每句的解析,能详细就更好(此问题分成三部分)