基于51单片机的直流电机设计

  • 格式:doc
  • 大小:6.50 MB
  • 文档页数:9

目录

一.设计目的···································3

二.设计要求···································3

三.仪器设备···································3

四.硬件线路图·································4

五.器件及芯片介绍·····························4

STC90C516RD+单片机···························4

8段共阳数码管·······························6

直流电动机···································6

ULN2003芯片·································7

电源与控制按键································7

六.程序框图 ··································8

七.源程序 ····································9

八.开发板实物图·······························10

九.参考文献···································10

《单片机原理》课程设计

- 2 - ——基于单片机的直流电机控制器设计

一、设计目的

通过具体小型测试系统设计,实践单片机系统设计、调试的全过程,以加深对单片机内部结构、指令系统的进一步理解,并进一步学习单片机开发系统的原理与应用以及一些外围芯片的接口和编程调试方法与技巧,初步掌握单片机系统的硬、软件设计技术及调试技巧。

二、设计要求

(1)电机转速可以平稳控制

(2)通过键盘和显示器可以设置电机的转速

(3)显示电机的速度趋势

三、仪器设备

四、硬件线路图 名称 型号 数量

单片机 STC90C516RD+ 1

八位共阳数码管 1

微型迷你直流电动机 1

八位排线 1

杜邦线 7

开发板/实验板 普中科技HC6800EM3 v20 1

- 3 -

五、器件及芯片介绍

(一)STC90C516RD+单片机

单片机是单片微型计算机的简称,它是在一块半导体芯片上,集成了CPU、ROM、RAM、I/O接口、定时器/计数器、中断系统等功能部件,构成了一台完整的数字电子计算机。由于集成电路技术的进步,片内甚至还可以包含HSO、HSI、A/D转换器、PWM等称为“片内外设”的特殊功能部件。

STC90C516RD+ 单片机是宏晶科技推出的新一代高速/低功耗/超强抗干扰的单 片机,指令代码完全兼容传统 51 单片机,12时钟/机器周期和6时钟/机器周期可以任意选择。

主要特性如下:

1. 增强型 8051 单片机,6 时钟/机器周期和 12 时钟/机器周期可以任 意选择,指令代码完全兼容传统 8051.

2. 工作电压:5.5V~3.3V(5V 单片机)/3.8V~2.0V(3V 单片机)

3. 工作频率范围:0~40MHz,相当于普通 8051 的 0~80MHz,实际工 作频率可达 48MHz

4. 用户应用程序空间为 64K 字节

5. 片上集成 512 字节 RAM

6. 通用 I/O 口 (32 个) 复位后为:00000H , P1/P2/P3/P4 是准双向口/弱上拉, P0 口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为 I/O

口用时,需加上拉电阻。

- 4 - 7. ISP(在系统可编程)/IAP(在应用可编程) ,无需专用编程器,无 需专用仿真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程 序,数秒即可完成一片

8. 具有 EEPROM 功能

9. 具有看门狗功能

10. 共 3 个 16 位定时器/计数器。即定时器 T0、T1、T2

11. 外部中断 4 路,下降沿中断或低电平触发电路,Power Down 模式可 由外部中断低电平触发中断方式唤醒

12. 通用异步串行口(UART) ,还可用定时器软件实现多个 UART

13. 工作温度范围:-40~+85℃(工业级)/0~75℃(商业级)

14.40针双列直插式封装

单片机的工作模式

1.掉电模式:典型功耗<0.1μA,可由外部中断唤醒,中断返回后,继续执行原 程序,掉电模式可由外部中断唤醒,适用于水表、气表等电池供电系统及便携设

2.空闲模式:典型功耗 2mA 典型功耗

3.正常工作模式:典型功耗 4Ma~7mA 典型功耗

引脚功能说明

(二)8段共阳数码管

- 5 - 共阴极则是把所有LED的阴极连接到共同接点VCC,而每个LED的阳极分别为a、b、c、d、e、f、g及dp(小数点),如下图所示。图中的8个LED分别与上面那个图中的A~DP各段相对应,通过控制各个LED的亮灭来显示数字。各个接口给低电平有效,时相应位的LED灯亮,来达到显示的目的。

共阳极数码管是一类数字形式的显示屏,通过对其不同的管脚输入相对的电压,会使其发亮,从而显示出数字能够显示 时间、日期、温度等所有可用数字表示的参数。由于它的价格便宜、使用简单、在电器,特别是家电领域应用极为广泛,空调、热水器、冰箱等等。绝大多数热水器用的都是数码管,其他家电也用液晶屏与荧光屏。

(三)直流电动机

定义输出或输入为直流电能的旋转电机,称为直流电机,它是能实现直流电能和机械能互相转换的电机。直流电机的结构应由定子和转子两大部分组成。直流电机运行时静止不动的部分称为定子,定子的主要作用是产生磁场,由机座、主磁极、换向极、端盖、轴承和电刷装置等组成。运行时转动的部分称为转子,其主要作用是产生电磁转矩和感应电动势,是直流电机进行能量转换的枢纽,所以通常又称为电枢,由转轴、电枢铁心、电枢绕组、换向器和风扇等组成。

直流电机里边固定有环状永磁体,电流通过转子上的线圈产生洛伦兹力,当转子上的线圈与磁场平行时,再继续转受到的磁场方向将改变,因此此时转子末端的电刷跟转换片交替接触,从而线圈上的电流方向也改变,产生的洛伦兹力方向不变,所以电机能保持一个方向转动。

(四)ULN2003芯片

- 6 - ULN2003 是高耐压、大电流复合晶体管阵列,由七个硅NPN 复合晶体管组成。ULN2003 的每一对达林顿都串联一个2.7K 的基极电阻,在5V 的工作电压下它能与TTL 和CMOS 电路 直接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据。

ULN2003 工作电压高,工作电流大,灌电流可达500mA,并且能够在关态时承受50V 的电压,输出还可以在高负载电流并行运行。

引脚功能说明

引脚1-7:CPU脉冲输入端,对应16-10脚信号输出端。

引脚8:接地。

引脚9:该脚是内部7个续流二极管负极的公共端,各二极管的正极分别接各达林顿管的集电极。用于感性负载时,该脚接负载电源正极,实现续流作用。如果该脚接地,实际上就是达林顿管的集电极对地接通。

引脚10-16:脉冲信号输出端,对应7-1脚信号输入端。

(五)电源与控制按键

电源

本课程设计中的电源部分采用与电脑相连的USB接口的供电,通过USB接口获得+5V的电压,来供各个芯片工作。

控制按键

本课程设计中的控制按键利用开发/实验板上集成的8位独立按键,用其中的4位分别和单片机上的P1.4、P1.5、P1.6、P1.7通过杜邦线连接,使其具有启动、停止、加速、减速等功能。

六、程序框图

开始

- 7 -

开发板上电,单片机初始化

程序启动

判断开始键是否按下

Y

电动机旋转

数码管显示相应转速档位

Y

判断加、减速键是否按下 N N

N

判断停止键是否按下

电动机停止转动

结束

七、源程序

ORG 0000H LJMP MAIN

- 8 - ORG 000BH

LJMP TIMER0

ORG 00F0H

MAIN: CALL INIT

LOOP: CALL KEYSCAN

CALL DISPLAY

SJMP LOOP

INIT: CLR P3.0

MOV R0,#1;

R0 INDICATE THE RATE OF THE SPEED

CLR 20H.0;

20H.0 INDICATE THE CURRENT STATE OF

THE MOTOR

MOV 21H,#10

MOV 22H,#01H

MOV 23H,#01H

MOV TMOD,#01H

MOV TH0,#0FCH

MOV TL0,#18H

SETB TR0

SETB ET0

SETB EA

MOV P1,#0F0H

RET

KEYSCAN:ANL P1,#0F0H

MOV A,P1

CJNE A,#0F0H,KEY1

RET

KEY1: CALL DELAY

ANL P1,#0F0H

MOV A,P1

CJNE A,#0F0H,KEY2

RET

KEY2: CJNE A,#0E0H,NOT5

SETB 20H.0

JMP RE NOT5: CJNE A,#0D0H,NOT6

CLR 20H.0

JMP RE

NOT6: CJNE A,#0B0H,NOT7

INC R0

CJNE R0,#08H,RE

MOV R0,#07H

JMP RE

NOT7: DEC R0

CJNE R0,#00H,RE

MOV R0,#01H

RE: ANL P1,#0F0H

MOV A,P1

CJNE A,#0F0H,RE

RET

DELAY: MOV R7,#00H

DJNZ R7,$

DJNZ R7,$

DJNZ R7,$

RET

DISPLAY:MOV DPTR,#TABLE

MOV A,R0

MOVC A,@A+DPTR

MOV P0,A