大于10v则过压,大于5A则过流,小于2V则欠压,包含电压采集通道和电流采集通道,同时配置有继电器保护,过流保护继电器和过压继电器保护。
包含的电路有显示电路、电流采集电路、电压采集电路、报警电路、电源电路、继电器电路、指示灯电路等。
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
/***************引脚声明*********************/
#define lcd P0
sbit rs=P2^7; //LCD液晶控制端
sbit en=P2^6;
sbit SPK=P1^7; //蜂鸣器引脚
sbit CS=P1^2; //将CS位定义为P1.2引脚
sbit CLK=P1^0; //将CLK位定义为P1.0引脚
sbit DIO=P1^1; //将DIO位定义为P1.1引脚
sbit key=P2^5; //定义按键引脚
sbit a=P2^0; //模拟量通道选择端
sbit b=P2^1; //模拟量通道选择端
sbit c=P2^2; //模拟量通道选择端
sbit LED = P3^7;
sbit LED1 = P3^6;
sbit T7 = P3^2;
sbit T8 = P3^3;
sbit MOTOR_A_1=P3^0;
sbit MOTOR_A_2=P3^1;
sbit k1=P1^3; //定义k1为p1.0口
sbit k2=P1^4; //定义k2为p1.1口
sbit k3=P1^5; //定义k3为p1.2口
sbit k4=P1^6; //定义k4为p1.3口
uchar T=0; //定时标记
uchar W=20; //脉宽值 0~100
uchar A=0; //方向标记 0,1
uchar k=0; //按键标记
/***********LCD显示数组**************************/
uchar table1[]="V=00.00V";
uchar table3[]="I=0.00A";
uchar table5[]="Vehicle Monitor";
/***************全局变量************************/
uchar flag=0; //换挡标志位