#define MOTOR_COUNT 100 //PWM波输出周期计数
#define sol 0x6c //将"so"宏定义为低音"5"的频率 784Hz
#define Dol 0x44 //将"Do"宏定义为中音"1"的频率 523Hz
#define Rel 0xac //将"Re"宏定义为中音"2"的频率 587Hz
#define Mil 0x09 //将"Mi"宏定义为中音"3"的频率 659Hz
#define Fal 0x34 //将"Fa"宏定义为中音"4"的频率 698Hz
#define Sol 0x82 //将"So"宏定义为中音"5"的频率 784Hz
#define Lal 0xc8 //将"La"宏定义为中音"6"的频率 880Hz
#define Sil 0x05 //将"Si"宏定义为中音"7"的频率 523H
#define soh 0xfc //将"so"宏定义为低音"5"的频率 784Hz
#define Doh 0xfc //将"Do"宏定义为中音"1"的频率 523Hz
#define Reh 0xfc //将"Re"宏定义为中音"2"的频率 587Hz
#define Mih 0xfd //将"Mi"宏定义为中音"3"的频率 659Hz
#define Fah 0xfd //将"Fa"宏定义为中音"4"的频率 698Hz
#define Soh 0xfd //将"So"宏定义为中音"5"的频率 784Hz
#define Lah 0xfd //将"La"宏定义为中音"6"的频率 880Hz
#define Sih 0xfe //将"Si"宏定义为中音"7"的频率 523H
//定义宏变量
sbit speaker =P2^6; //蜂鸣器控制引脚
sbit RS=P1^5; //LCD RS引脚
sbit R_W=P1^6; //LCD 读写信号
sbit EN=P1^7; //LCD 使能引脚
sbit motor_high=P1^0; //PWM输出高电平引脚
sbit motor_low=P1^1; //PWM输出低电平引脚
sbit motor_1_en=P1^2; //进水阀门引脚
sbit motor_2_en=P1^3; //出水阀门引脚
sbit motor_3_en=P1^4; //洗衣机电动使能引脚
sbit EOC=P2^4; //AD EOC
sbit START=P2^5; //AD START
sbit con=P3^5; //AD CON
sbit add_A=P3^0; //位选信号A
sbit lock_OE=P3^1; //74ls373锁存控制引脚
//定义全局变量
uchar process; //当前洗衣机运行状态全局变量
uchar method; //当前洗衣机运行方式全局变量
uchar speed; //当前电动机速度全局变量
uchar flag; //标志位
uchar state; //洗衣机运行状态选择
uint ad_level; //水位采样全局变量
基于单片机C51全自动洗衣机仿真设计
最新推荐文章于 2024-09-05 08:14:45 发布
该博客内容涉及嵌入式系统中的音乐播放程序设计,通过定义不同的宏来表示不同音符的频率,利用PWM波输出周期进行音乐播放。程序中还包含对LCD显示器、蜂鸣器、电动机及阀门的控制引脚定义,以及洗衣机运行状态和水位采样的全局变量。
摘要由CSDN通过智能技术生成