一个水箱有两个分区,装着两种不同的溶剂,它们连接着同一个水泵,我想用单片机控制水泵,控制想要喷出的溶剂,程序大概是这样,我是小白,可以帮我画画原理图吗

#include <reg52.h>
sbit Water_Valve = P1^0; // 软化水电磁阀
sbit Solvent_Valve = P1^1; // 溶剂电磁阀
sbit Pump = P1^2; // 水泵
sbit Button_Water = P3^0; // 软化水按钮
sbit Button_Solvent = P3^1; // 溶剂按钮
sbit Beep = P2^0; // 蜂鸣器
unsigned char mode = 0; // 工作模式,0: 等待,1: 软化水,2: 溶剂
// 延时函数
void delay_ms(unsigned int ms) {
unsigned int i, j;
for (i = ms; i > 0; i--)
for (j = 112; j > 0; j--);
}
// 初始化
void init() {
Water_Valve = 0; // 默认关闭
Solvent_Valve = 0; // 默认关闭
Pump = 0; // 默认关闭
Beep = 0; // 蜂鸣器关闭
}
// 主函数
void main() {
init(); // 初始化硬件
while (1) {
// 检测按键输入
if (Button_Water == 0) { // 按下软化水按钮
delay_ms(20); // 消抖
if (Button_Water == 0) {
mode = 1; // 切换到软化水模式
}
}
if (Button_Solvent == 0) { // 按下溶剂按钮
delay_ms(20); // 消抖
if (Button_Solvent == 0) {
mode = 2; // 切换到溶剂模式
}
}
// 根据模式执行
if (mode == 1) {
Solvent_Valve = 0; // 确保溶剂阀关闭
Water_Valve = 1; // 打开软化水阀
Pump = 1; // 启动水泵
delay_ms(5000); // 喷洒5秒
Pump = 0; // 停止水泵
Water_Valve = 0; // 关闭软化水阀
mode = 0; // 返回等待模式
} else if (mode == 2) {
Water_Valve = 0; // 确保软化水阀关闭
Solvent_Valve = 1; // 打开溶剂阀
Pump = 1; // 启动水泵
delay_ms(5000); // 喷洒5秒
Pump = 0; // 停止水泵
Solvent_Valve = 0; // 关闭溶剂阀
mode = 0; // 返回等待模式
}
}
}
#include <reg52.h>
sbit Water_Valve = P1^0; // 软化水电磁阀
sbit Solvent_Valve = P1^1; // 溶剂电磁阀
sbit Pump = P1^2; // 水泵
sbit Button_Water = P3^0; // 软化水按钮
sbit Button_Solvent = P3^1; // 溶剂按钮
sbit Beep = P2^0; // 蜂鸣器
unsigned char mode = 0; // 工作模式,0: 等待,1: 软化水,2: 溶剂
// 延时函数
void delay_ms(unsigned int ms) {
unsigned int i, j;
for (i = ms; i > 0; i--)
for (j = 112; j > 0; j--);
}
// 初始化
void init() {
Water_Valve = 0; // 默认关闭
Solvent_Valve = 0; // 默认关闭
Pump = 0; // 默认关闭
Beep = 0; // 蜂鸣器关闭
}
// 主函数
void main() {
init(); // 初始化硬件
while (1) {
// 检测按键输入
if (Button_Water == 0) { // 按下软化水按钮
delay_ms(20); // 消抖
if (Button_Water == 0) {
mode = 1; // 切换到软化水模式
}
}
if (Button_Solvent == 0) { // 按下溶剂按钮
delay_ms(20); // 消抖
if (Button_Solvent == 0) {
mode = 2; // 切换到溶剂模式
}
}
// 根据模式执行
if (mode == 1) {
Solvent_Valve = 0; // 确保溶剂阀关闭
Water_Valve = 1; // 打开软化水阀
Pump = 1; // 启动水泵
delay_ms(5000); // 喷洒5秒
Pump = 0; // 停止水泵
Water_Valve = 0; // 关闭软化水阀
mode = 0; // 返回等待模式
} else if (mode == 2) {
Water_Valve = 0; // 确保软化水阀关闭
Solvent_Valve = 1; // 打开溶剂阀
Pump = 1; // 启动水泵
delay_ms(5000); // 喷洒5秒
Pump = 0; // 停止水泵
Solvent_Valve = 0; // 关闭溶剂阀
mode = 0; // 返回等待模式
}
}
}


