毕业设计 - -基于单片机控制的智能洗衣机控制器(6)

2019-02-20 20:17

天津工程师范学院2009届本科生毕业设计

5.2 液晶显示子程序流程图

液晶显示模块HY-19264内有一个忙标志位ACC.7,它反映了控制器HD61202内部运行时序状态。当ACC.7=1时,表示内部操作正在运行,不能接受外部数据;当ACC.7=0时,表示已准备好接收,可以随时接收单片机发来的数据和命令,这是HY-19264向单片机发出的唯一联络信号。液晶显示子程序流程图见图5-2。

写入相应的数据 延时1ms ACC.7=0? 检测忙信号 延时1ms 对HY-19264初始化 写入显示设置命令 入口 N Y 获得显示RAM地址

图5-2 液晶显示子程序流程图

返回主程序 数据显示完毕 20

天津工程师范学院2009届本科生毕业设计

5.3 键盘驱动程序

键盘驱动程序包括四个子程序: 5.3.1 初始化子程序

void KeyBoardInit(void) {

PORT_Line &= 0xc3;//输出低电平 }

如上所示程序,键盘初始化子程序定义IO的输入输出属性及初始电平值。

DDR_Line |= 0x3c;//输出 PORT_Row = 0xff;//上拉 DDR_Row = 0x00;//输入

5.3.2 按下判断子程序

uint8 Key_Down(void) //判键盘是否活动函数 {

PORT_Line &= 0xc3;//输出低电平 }

该程序应该在主循环中循环调用,当有按键按下时,程序返回1,否则返回0。

if (PIN_Row!=0xff) //如果有键按下 {return 1;} else

{return 0;} //否则返回0

5.3.3 等待抬起子程序

uint8 WaitKeyUp(void) {

uint16 i,j;

i=0; {

21

while(Key_Down())

天津工程师范学院2009届本科生毕业设计

i++; }

当调用该程序时,过程会被阻塞,一直到按键抬起,程序才会返回1,过程恢复;如果等待超时,程序返回0,过程也会恢复。

}

if(i>65530){i=0;j++;if(j>10){return 0;}}

return 1;

5.3.4 键盘扫描子程序

void Key(void) {

if(key_1==0) {key1_flay=1;} if(key1_flay==1)

{ key1_flay=0; a++; a=a&0x0f; delay1(100);

switch(a) {

////////////////////////

//////////////////////////////////////////////

case 0x01: xygz(3,4,fenhao[1]); xygz(3,6,fenhao[1]); xygz(3,2,hz[12]);

a=1; break;

xygz(3,2,fenhao[1]);

//////////////////////////

/////////////////////////////////////////////////

case

0x02:

xygz(3,6,fenhao[1]);

xygz(3,4,hz[12]);

a=2; break; //

xygz(3,4,fenhao[1]);

/////////////////////////// case xygz(3,6,hz[12]);

a=0;break;

// default: break;

0x03:

////////////////////////////////////////////////

xygz(3,2,fenhao[1]);

}

22

天津工程师范学院2009届本科生毕业设计

}

if(key_2==0) {key2_flay=1;} if(key2_flay==1)

{ key2_flay=0; a=a&0x0f; delay1(100); switch(a)

} 调用该程序,程序会扫描当前按键并返回键值。 {

case 0x02: TR0=1;bai=0;miao=0;break; ///经济/// }

case 0x01: TR0=1;bai=0;miao=0;break; ////单独脱水// case 0x00: TR0=1;bai=0;miao=0;break; ////标准///// }

5.4 键盘子程序流程图

下图为键盘子程序流程图,此流程图的含义是:当有按键按下时,程序开始进行判断是哪个按键按下,判断完毕后则转向相应的键处理子程序,进行字符的输入或命令的处理,并通过按键4把要发送的数据进行CRC校验编码,再把编码后的数据发送出去。

有按键按判断是哪个按键按下 按 键 1 按 键 2 按 键 3 模式选择 确定键 图5-4 键盘子程序流程图

暂停键 23

天津工程师范学院2009届本科生毕业设计

6测试结果及分析

6.1 硬件电路测试

本设计中将控制模块和电机驱动模块分开设计,控制模块通过单片机和液晶来显示各种功能,测试的步骤如下:

(1) 将控制模块和电机驱动模块焊好,检查确认无虚焊、粘焊;

(2) 先对控制模块上电进行测试,主要是测试控制模块的定时器的使用,测试方法是将控制模块的定时器与秒表同时打开,并将程序写到AT89S52上,然后用秒表测试定时是否准确;

(3) 将显示模块与控制模块连接起来,上电进行测试,按照程序,上电时处于正常显示状态,看是否与程序吻合;

(4) 确认显示模块上电处于正常显示状态后,可测试驱动模块,如果按下模式选择按键,可以选择模式,则说明显示电路正常,此外,在没有接上驱动模块收时,仍会选择模式。

6.2 系统测试

6.2.1 测试方法

(1) 首先让电路正常工作,选择模式后,按开始键,开始工作。

(2) 在工作期间,可以随时按暂停键来暂停,洗衣机须停止工作,再按该键,洗衣机又能按原来所选择的工作方式继续工作

(3) 用秒表来测试洗衣机的进水时间、侵泡时间、洗衣时间等,以测试时间的准确性。

6.2.2 功能测试及分析

(1) 洗衣时正、反转驱动时间各为3秒,间歇时间为2秒。

(2) 标准程序、经济程序和单独程序。标准程序是进水→洗涤/ 漂洗→排水→脱水,经济程序是进水→洗涤 →结束(留水不排不脱) ,单独程序是排水→脱水→结束。

(3) 经测试定时器定时非常精确,如洗衣时间的定时,各个功能模块一一实现。

24


毕业设计 - -基于单片机控制的智能洗衣机控制器(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:湖北省双创双争活动通知

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: