1、一、设计目的 通过具体小型测试系统设计, 实践单片机系统设计及调试的全过程, 以加深对单片机内 部结构、 功能和指令系统的理解, 并进一步学习单片机开发系统的应用及一些外围芯片的接 口和编程方法,初步掌握单片机系统的硬、软件设计技术及调试技巧。 二、设计要求 1)电机转速可以平稳控制 2)通过键盘和显示器可以设置电机的转速 3)显示电机的速度趋势 三、仪器设备 名称 型号 数量 单片机 STC89C52 1 步进电机 28BYJ48 1 液晶 LCD12864 1 步进电机驱动 ULN2003A 1 晶振 1 电容、电阻、微动开关 若干 四、硬件线路图 (1)单片机最小系统 上图所示为单片机最
2、小系统,该系统通过 5V 直流电源供电,可上电复位和手动复位。通过 串口将程序烧写到单片机。 (2)步进电机驱动电路 由于步进电机运转时所需电流较大, 而单片机引脚提供的电流较小, 所以单片机与步进电机 间需要加上驱动芯片 ULN2003A,如上图所示,通过单片机的 P1 口控制步进电机的运转。 (3)显示电路 该系统用 LCD12864 作为显示器,12864 内置字库,每屏可显示 32 个汉字,且编程容易,该 系统中可用于显示开机界面,电机转速,速度变化趋势等。其接口如图所示。 (4)按键电路 由于系统所用按键较少,所以键盘采用独立按键形式,每个按键都有上拉电阻,提高了按键 的稳定性。 五
3、、主要芯片说明 (1)STC89C52 STC89C52 是 STC 公司生产的一种低功耗、高性能 CMOS8 位微控制器,具有 8K 在系统 可编程 Flash 存储器。STC89C52 使用经典的 MCS-51 内核,但做了很多的改进使得芯片具有 传统 51 单片机不具备的功能。在单芯片上,拥有灵巧的 8 位 CPU 和在系统可编程 Flash, 使得 STC89C52 为众多嵌入式控制应用系统提供高灵活、 超有效的解决方案。 具有以下标准 功能: 8k 字节 Flash,512 字节 RAM, 32 位 I/O 口线,看门狗定时器,内置 4KB EEPROM, MAX810 复位电路,
4、3 个 16 位定时器/计数器, 4 个外部中断, 一个 7 向量 4 级中断结构 (兼 容传统 51 的 5 向量 2 级中断结构) ,全双工串行口。另外 STC89C52 可降至 0Hz 静态逻辑 操作,支持 2 种软件可选择节电模式。空闲模式下,CPU 停止工作,允许 RAM、定时器/ 计数器、串口、中断继续工作。掉电保护方式下,RAM 内容被保存,振荡器被冻结,单片 机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率 35MHz,6T/12T 可选。 (2)ULN2003 ULN2003 是高耐压、 大电流复合晶体管, 由七个硅 NPN 复合晶体管组成。 ULN2003 的 每
5、一对达林顿都串联一个 2.7K 的基极电阻,在 5V 的工作电压下它能与 TTL 和 CMOS 电 路直接相连, 可以直接处理原先需要标准逻辑缓冲器来处理的数据。 ULN2003 工作电压高, 工作电流大,灌电流可达 500mA,并且能够在关态时承受 50V 的电压,输出还可以在高负 载电流并行运行。 ULN2003 是一个非门电路,包含 7 个单元,单独每个单元驱动电流最大可达350mA, 多用于单片机、智能仪表、PLC、数字量输出卡等控制电路中。可直接驱动继电器等负载。 六、系统工作原理 (1)步进电机工作原理 步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。在非超载的情况下,
6、电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给 电机加一个脉冲信号,电机则转过一个步距角。这一线性关系的存在,加上步进电机只有周 期性的误差而无累积误差等特点。 使得在速度、 位置等控制领域用步进电机来控制变的非常 的简单。 虽然步进电机已被广泛地应用,但步进电机并不能象普通的直流电机,交流电机 在常规下使用。它必须由双环形脉冲信号、功率驱动电路等组成控制系统方可使用。 如图步进电机为一四相步进电机, 采用单极性直流电源供电。 只要对步进电机的各相绕 组按合适的时序通电,就能使步进电机步进转动。 开始时,开关 SB 接通电源,SA、SC、SD 断开,B 相磁极和转子 0、3 号齿对 齐, 同时,转子的 1、4 号齿就和 C、D 相绕组磁极产生错齿,2、5 号齿就和 D、A 相绕组磁极 产生错齿。当开关 SC 接通电源,SB、SA、SD 断开时,由于 C 相绕组的磁力线和 1、4 号齿之间磁力线的作用, 使转子转动, 1、 4 号齿和 C 相绕组的磁极对齐。 而 0、 3 号齿和 A、 B 相绕组产生错齿,2、5 号齿就和 A、D 相绕组磁极产生错齿。