/******************** (C) COPYRIGHT 2015 Silicone shell electronic studio **************************
* 文件名 :main.c
* 描述 :
* 硬件连接:
*
* 实验平台:STC12C5A60S2开发板
*https://www.bilibili.com/video/BV1rK411V7xa/
**********************************************************************************/
#include
#include
#include
#include
#define uchar unsigned char
#define uint unsigned int
#define MAIN_Fosc 11059200L //定义主时钟, 模拟串口和和延时会自动适应。5~35MHZ 22118400L
#define ADC_OFF() ADC_CONTR = 0
#define ADC_ON (1 << 7)
#define ADC_90T (3 << 5)
#define ADC_180T (2 << 5)
#define ADC_360T (1 << 5)
#define ADC_540T 0
#define ADC_FLAG (1 << 4) //软件清0
#define ADC_START (1 << 3) //自动清0
#define ADC_CH0 0
#define ADC_CH1 1
#define ADC_CH2 2
#define ADC_CH3 3
#define ADC_CH4 4
#define ADC_CH5 5
#define ADC_CH6 6
#define ADC_CH7 7
sbit k1 = P2^0;
sbit k2 = P2^1;
sbit k3 = P2^2;
sbit fs_led = P3^3;
sbit ss_led = P3^4;
sbit yw_up = P3^6;
sbit yw_down = P3^7;
/**************变量定义***************************/
float PH=0.0;
float PH_value=0.0;
float ph1=0.0,ph2=0.0;
float ph_h=0.0, ph_h_2=0.0;
unsigned int temp_data=0;
unsigned char disbuff[14]={0};
void DelayUs(unsigned int time); //延时子函数
void Delay1(unsigned int time); //延时主程序
void delay_ms_AD(unsigned char ms);
void press_k1();
void press_k2();
void press_k3();
void Display_PH1();
void Display_PH2();
void Display_time_set();
uint adc10_start(uchar channel); //channel = 0~7
uint key_flag = 0,turnwater=0,flag1=0;
uint count1 = 0;
uint i;
void PH_Value_Conversion()
{
PH=(PH*5)/1024;</