单片机设计洗衣机控制器概要.doc

上海电力学院 16位单片机大作业 实验报告 实验名称: 洗衣机控制器 专 业: 通信工程 姓 名:  班 级: 学 号: 一、设计目的 运用C语言,深入了解MC9S12XS128单片机的知识,根据题目的要求进行软硬件的设计和调试,从而加深对于本课程知识点的理解,掌握了如何使用CodeWarrior来整合各种驱动模块,再通过算法实现硬件上的运行。 二、功能描述 最终运行程序实现的的功能为: 通过对于CodeWarrior 软件的操作,编写代码,最终实现freescale MC9S12XS128单片机简单控制洗衣机洗衣功能。 按自己的要求将实验箱连线,通电后,LCD显示屏上面上排显示可以设定的时间,下排显示倒计时的时间,通过键盘输入设定的时间,开始计时,LED显示灯(绿灯亮起)。设置好固定的洗衣时间后,开始执行“洗衣”,倒计时完成后,即“洗衣”完成,在LCD显示屏上面显示“洗衣”的时间到,即时间到00:00,LED所有灯亮。 三.实验设备 1.PC机 一台 2.S12嵌入式开发系统 一台 3.连接导线 若干 4.小键盘 一个 四.模块 (一)定时模块 定时器实现溢出中断接线图 (二)LED指示灯模块 0x55:绿灯亮 0xFF:全部灯亮 (三)LCD显示模块 表7-1 HD44780引脚信号 管脚号 符号 电平 方向 引脚含义说明 1 Vss 电源地 2 Vdd 电源(+5V) 3 V0 液晶驱动电源(0~5V) 4 RS H/L 输入 寄存器选择;1-数据寄存器 0-指令寄存器 5 R/ H/L 输入 读写操作选择:1-读操作 0-写操作 6 E H/L H→L 输入 使能信号:R/ =0,E下降沿有效 R/=1,E=1有效 7~10 DB0~DB3 三态 8位数据总线的低4位,若与MCU进行4位传送时,此4位不用 11~14 DB4~DB7 三态 8位数据总线的高4位,若与MCU进行4位传送时,只用此4位 15~16 E1~E2 输入 上下两行使能信号,只用于一些特殊型号 (四)键盘输入模块 键盘接线原理图: 实验箱提供一个16键键盘,用于键盘中断信号的输入。键盘插孔如下图所示。 本实验中: (1) 键盘采用手动接线,将键盘接入双排插孔下一排插孔。 (2) PTP0~3分别接键盘接线处的1~4; (3) PTA0~3分别接5-8; (4) PTB口接8个小灯。 2 五.设计方案 实验中需要添加模块都是平时上课的时候做过的实验模块,所以要实现预期的功能,只需要在以前的程序的基础上稍加修改,把各个模块在主程序中联系起来,加以调用,就可以实现所要求的功能。 主要驱动模块有: 计数定时模块:Timer.c LCD显示模块:LCD.c LED指示模块:Light.c 键盘输入模块:KBI_I.c 六.程序设计代码 [main.c] //包含头文件 #include Includes.h //包含总头文件 #include string.h //在此添加全局变量定义 uint8 receive_data[32]; uint8 valve,mark,i, period,duty; extern uint8 time[3],T[6]; //主函数 void main() { //0.1 主程序使用的变量定 uint32 mRuncount=0; //运行计数器 uint8 c; //0.2 关总中断 DisableInterrupt(); //0.3 芯片初始化 MCUInit(FBUS_32M); //0.4 模块初始化 Light_Init(Light_Run_PORT,Light_Run,Light_OFF); //RUN指示灯初始化为暗 //P

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档