用LCDAMPIRE12864液晶显示,其优点是能显示更多的字符,工作电流比LED小几个数量级,故其功耗低,且有着良好的人机界面,体积小,功耗极低。基于上述考虑,所以我们选择方案二第2节电路框图设计2.1总体框图设计根据设计要求,本系统可由图所示的几个部分组成:电源电路单片机LCD显示方向驱动电机按键输入根据设计要求,可得本系统的程序主流程图如图2-2-1所示:本系统的控制器采用ATMEL公司的AT89C52。2.2整体程序流程图第3节系统的具体设计3.1系统的硬件设计本系统由单片机AT89C52作为升降旗系统的控制核心,实现键盘控制、液晶显示以及无线遥控等几个部分,即该系统主要包括电机驱动模块、键盘与显示模块及晶振电路模块等几个部分。现分别对各模块进行分析。3.1.1、电机驱动模块在本设计中采用ULN2003A来驱动电机。其电路原理图如图所示。电机驱动电路其步进电机的控制原理为:为了准确实现可调节的时间和高度控制的匀速升降,需要精确计算在人眼不能识别的时间内的步进电机的脉冲数。在此我们选用步距角0.9度,则走一圈所需的步数为400步,因为用于固定绳子的轴的直径为2.5cm,则平均每步拉出的线长便可计算出来约为L=0.0234cm,在整个上升或下降过程中,high为总高度,可通过公式计算出在此段距离中步进电机需走的步数,即为,步进电机要转动的总步数:总步数=高度(high)/0.0234,在此,时间可调时间间隔为1s。3.1.2、键盘与显示模块在本设计中使用了四个按键,分别用来控制升降旗和随意停止及其复位,时间的调节,其键盘摸板如图,显示部分采用液晶LCDAMPIRE12864,因为在本设计中只要求显示时间与汉子字符,其键盘与显示模块的电路原理图如图所示。图3-1-2键盘摸板键盘与显示电路3.2系统的软件设计整个系统的主要任务是执行升降旗、时间调整两种运动。主体软件电路图: