基于STC89C52单片机红外遥控步进电机
基于STC89C52的步进电机调速系统
目录摘要 (3)一课程设计目的 (4)二系统简介 (5)2.1 步进电机工作原理简介 (5)2.2 步进电动机的励磁方式 (5)2.2.1 二相励磁 (6)2.2.2 一-二相励磁 (6)2.3 步进电机基本参数 (7)2.4 闭环PID控制原理 (8)三方案选择 (8)3.1 控制器的选择 (8)3.2 显示器的选择方案 (8)3.3 转速信号采集方案 (8)3.4 电机驱动芯片的选择 (9)四硬件总体设计 (9)4.1 系统原理框图 (9)4.2 系统电路原理图 (9)五软件总体设计 (10)六功能模块介绍 (11)6.1硬件模块 (11)6.1.1 STC89C52RC型单片机最小系统 (11)6.1.2 ULN2003APG驱动电路 (11)6.1.3 74HC14E (12)6.1.4 测速模块 (12)6.1.5 显示电路 (13)6.2软件模块 (14)6.2.1 LCD显示模块 (14)6.2.2 键盘电机模块 (16)6.2.3 PWM模块 (17)6.2.4 测速模块 (18)七验证与测试 (19)7.1验证 (19)7.2测试 (19)7.3 运行结果 (20)八小组分工...................................................................................错误!未定义书签。
九设计中的问题...........................................................................错误!未定义书签。
十参考文献. (22)附录 (23)1. 完整程序 (23)2.原理图、仿真图、PCB图 (32)摘要步进电机是一种将电脉冲信号转换成相应的角位移或线位移的电磁机械装置,属于输出与输入脉冲对应的增量驱动元件。
它具有步进数可控,运行平稳,价格便宜等优点,广泛应用于数控机床、机器人控制、绘图仪、石英钟表等数字控制和自动控制系统中。
魏璐 基于89C52单片机的步进电机控制器设计
摘要步进电机是将脉冲信号转换为角位移的元件,其调速方式相对于直流电机和三相异步电机来说还比较单一,但相对来说比较容易实现,在不发生丢步严重影响步进电机的因素外,步进电机的转速只取决于脉冲频率、转子齿数和拍数,且不受负载的影响,其角速度与脉冲频率成正比,而且在时间上与脉冲同步,因而在转子齿数和运行拍数一定的情况下,只要控制脉冲频率即可获得所需速度。
本设计基于89C52单片机对步进电机的启动、停止、正转、反转、速度、圈数,六种正常工作方式进行控制,在此基础上添加了温度检测模块,同时本设计还加入了液晶显示电路,用于显示步进电机转动圈数和步进电机所处的工作状态。
关键词:STC89C52单片机脉冲控制步进电机DS18B20AbstractSteper motor which transform pulse current into angular displacement is a original pulse current , its mode of speed control is single but it is easy according to direct current machine and three step guide motor. In condition that it doesn’t happened that lost step and overshoot have serious influence on steper motor ,the pulse rate of step motor is only on basis of pulse frequency, rotor tooth number and number of beats ,it isn’t affe cted by load . its palstance is in proportion to pulse frequency and has the same step with pulse at the time. So on the condition that rotor tooth number run the beat achieve to some numbers, if pulse frequency is controlled, the speed needed would be getted. This design is on account of corotation, start,stop,inversion, accelerate and moderate of steper motor being controlled by 89C52 single chip microcomputer, Add a temperature detection module on the basis of the designing, At the same time, this design also is added to digital display circuit. It can be used to show rotation number of steper motor and operating state of steper motor.Key words: STC89C52 single chip microcomputer chopper control Stepper motor DS18B20目录第1章步进电机的概述 (1)1.1 步进电机原理 (1)1.1.1 反应式步进电机 (1)1.1.2 感应式步进电机 (2)1.1.3 混合式步进电机 (2)1.1.4 步进电机工作方式 (3)1.2 步进电机的工作特点 (4)1.4 步进电机常见的控制方案与驱动技术简介 (4)第2章系统的总体设计方案 (7)第3章步进电机控制器硬件电路设计 (9)3.1 主控电路设计 (9)3.2 按键模块(矩阵键盘) (9)3.3 温度模块 (10)3.3 液晶显示模块 (11)3.4声光报警模块 (12)3.5电机驱动模块 (13)3.6 测速模块 (14)第4章系统软件设计 (15)4.1系统软件设计的总体结构 (15)4.2 主程序流程的设计 (16)4.3 温度监测技术 (16)4.4 按键流程的设计 (16)4.5 光电传感测速 (17)4.6 报警流程的设计 (18)4.7 液晶显示流程设计 (19)第5章总结 (20)5.1 全文总结和心得体会 (20)5.2 系统存在的问题和改进方案 (20)5.3 展望 (21)参考文献 (21)致谢 (22)附录 (23)附录一系统设计电路总图 (23)附录二PCB图 (24)附录二软件程序 (25)第1章步进电机的概述1.1 步进电机原理步进电机是将电脉冲信号转变为角位移或线位移的控制元件。
基于STC89C52单片机的家用红外遥控系统
摘要随着科技的发展,特别是微电子技术的发展,单片机的应用已经深入到生活的各个领域。
本文以STCC89C52为控制芯片,DS1302为时钟芯片,DS18B20为温度传感器,HS0038红外一体接收头作为红外接收器,以此接收并处理遥控器按键信号并用来矫正时钟时间。
同时,本设计还加入了定时和设定温度上下限的功能,当达到预设时间时执行开关灯命令,当温度低于温度下限或高于温度上限时执行开空调命令,开关器件为两个大功率电磁继电器。
本设计中所有外设数据显示于LCD12864液晶,形成一个良好的用户界面。
硬件电路图和PCB用Protel99SE 绘制,软件开发环境为KeilV3,设计实物为万用板焊接电路,经调试各项功能均已正常实现。
关键词:红外遥控,单片机,DS1302,DS18B20,LCD12864IABSTRACTWith the development of science and technology, especially the development of microelectronics technology, SCM applications have been deeply into all areas of life. Taking STCC89C52 as control chip, for DS1302 clock chip, DS18B20 as temperature collector, HS0038 infrared receiving head as integrated infrared receiver, signal receiving and processing the remote control buttons, in order to correct the clock time. At the same time, the project also joined the function of timing, and setting temperature of upper and lower, executive orders open to turn off the lights when preset time is reached, when the temperature lower than the temperature is lower or higher than the temperature limit command execution open air conditioning, for electromagnetic relay switch device. The whole project all the data shown in LCD12864 LCD, forming a good user interface. Made in Protel99SE, the hardware circuit diagram and PCB software development environment for KeilV3, project physical for universal plate welding circuit, through debugging functions are normal.Key words:infrared remote control, microcontroller, DS1302, DS18B20, LCD12864II目录1 绪论 (1)1.1家用电器的发展及智能家电的前景 (1)1.2电子技术的发展对智能家电的推动 (1)1.3家用红外遥控系统设计思路 (2)2 硬件设计 (2)2.1STC89C52单片机介绍 (2)2.2DS18B20温度传感器介绍 (5)2.3DS1302时钟芯片介绍 (8)2.4HS0038红外一体接收器介绍 (10)2.5LCD12864液晶介绍 (11)2.6其他硬件电路 (13)3 软件开发平台及软件 (15)3.1开发环境介绍及程序总体结构 (15)3.2DS18B20温度程序模块 (15)3.3DS1302时间程序模块 (17)3.4LCD12864液晶驱动程序 (20)3.5HS0038红外解码程序模块 (21)3.6定时定温功能的程序实现 (23)4 系统调试及设计总结 (24)4.1系统调试 (24)4.2总结 (25)参考文献 (27)致谢 (28)附录 (29)III1绪论1.1 家用电器的发展及智能家电的前景电器在国民日常生活和国防领域中占有举足轻重的位置,有着不可或缺的作用,其中,家用电器与人们的生活的关系最为密切。
基于stc89c52单片机的红外计数器设计及实现
基于stc89c52单片机的红外计数器设计及实现在近些年来,随着单片机技术的飞速发展,红外计数器的应用越来越广泛。
红外计数器可以用于计算小物体的移动速度,以及检测和控制机器的操作状态等方面,可以大大提高工厂生产效率。
本文主要讲述如何基于STC89C52单片机设计并实现一个红外计数器,以达到实时统计红外信号源(如红外线)的发射次数。
1、硬件结构本文采用的是基于STC89C52单片机的红外计数器硬件结构,主要包括红外接收模块、STC89C52单片机、数据的输出模块和LCD显示模块。
红外接收模块主要功能是接收红外信号,将接收到的红外信号转换成电信号,然后输出电信号;STC89C52单片机的主要功能是接收红外信号,根据信号具体内容,操控数据的输出模块,实现红外信号源发射次数的统计及实时更新;数据输出模块在STC89C52单片机控制下,将电子计数器的内部数据输出;LCD显示模块的主要功能是将STC89C52单片机里的统计数值显示出来。
2、软件设计本设计程序由两个部分组成:主程序及计数程序。
(1)主程序:主程序中定义了系统总体框架,系统初始化,红外信号检测,数据输出及LCD显示等等功能,控制了系统的整体运行。
(2)计数程序:计数程序控制电子计数器的计数及清零,以及计数器的值输出等功能。
3、实验结果本文采用STC89C52单片机、红外接收模块、数据输出模块和LCD 显示模块的组合实现了一个简单的红外计数器,在实验中可以检测到红外信号,并精确计数出接收到的次数,从而实现了对红外信号源的统计及实时更新。
4、总结本文基于STC89C52单片机实现了一个简单的红外计数器,它可以实时统计红外信号源(如红外线)的发射次数,从而提升工厂生产效率。
本文采用的芯片型号和计数器结构稳定可靠,也可以根据具体实际情况进行改进和优化。
此外,也可以采用更复杂的结构进行改进,从而使系统计数更加精准,效率更高。
基于STC89C52单片机的步进电机控制技术研究与实现.doc
基于STC89C52单片机的步进电机控制技术研究与实现-【摘要】本文采用以STC89C52单片机为核心,进行了步进电机控制系统的软硬设计,实现了步进电机的起停、正反转、调速等控制,并实现了电机转速的实时显示。
经实验验证,该系统具有软硬件设计合理、运行稳定可靠、抗干扰能力强及实时显示性好等特点。
【关键词】步进电机;STC89C52;调速1.引言随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都具有广泛的应用。
步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。
应用单片机实现步进电机控制系统的设计,具有成本低、使用灵活的特点,广泛应用于数控机床、机器人、工业自动控制以及各种可控有定位要求的机械工具等应用领域。
本文介绍的步进电机控制系统,采用以STC89C52单片机为核心的低成本、高精度、微型化的硬件电路和软件设计方法。
该步进电机硬件控制电路分为电源模块、按键控制模块、步进电机及驱动模块、测速模块及显示模块等部分组成。
整个系统软件设计采用模块化设计方法,由主程序、预置子程序、正转子程序、反转子程序、加减速和显示子程序等模块组成。
通过向步进电机驱动电路发送控制信号,实现对步进电机的起停、正反转、调速等控制,并实时显示电机转速。
经反复实验证明,本套系统软硬件设计合理、抗干扰能力强、实时显示性能良好。
2.系统总体设计方案根据步进电机控制系统设计要求,整个控制系统电路可以分为电源模块、按键控制模块、步进电机驱动模块、步进电机模块、测速模块、显示模块等部分。
步进电机控制系统方框图如图1所示。
3.系统硬件电路设计根据系统功能需求分析,绘制出系统原理图如图2所示。
3.1 单片机外围控制电路单片机工作的外围控制电路主要包括晶振电路和STC单片机下载电路等,其对应电路如图2中所示。
3.2 按钮控制电路本步进电机控制系统中控制按钮包括启停按钮,正转按钮,反转按钮,加速按钮及减速按钮等。
3.3 驱动电路因为步进电机工作时的驱动电流比单片机端口所能提供的要大得多,单片机要控制电机的运动就不能直接将端口与电机各相相连,必须使用一定的接口电路和驱动电路。
基于STC89C52单片机的步进电机控制系统设计与实现毕业设计
毕业设计设计题目:基于STC89C52单片机的步进电机控制系统设计与实现毕业论文(设计)原创性声明本人所呈交的毕业论文(设计)是我在导师的指导下进行的研究工作及取得的研究成果。
据我所知,除文中已经注明引用的内容外,本论文(设计)不包含其他个人已经发表或撰写过的研究成果。
对本论文(设计)的研究做出重要贡献的个人和集体,均已在文中作了明确说明并表示谢意。
作者签名:日期:毕业论文(设计)授权使用说明本论文(设计)作者完全了解**学院有关保留、使用毕业论文(设计)的规定,学校有权保留论文(设计)并向相关部门送交论文(设计)的电子版和纸质版。
有权将论文(设计)用于非赢利目的的少量复制并允许论文(设计)进入学校图书馆被查阅。
学校可以公布论文(设计)的全部或部分内容。
保密的论文(设计)在解密后适用本规定。
作者签名:指导教师签名:日期:日期:注意事项1.设计(论文)的内容包括:1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词5)目次页(附件不统一编入)6)论文主体部分:引言(或绪论)、正文、结论7)参考文献8)致谢9)附录(对论文支持必要时)2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。
3.附件包括:任务书、开题报告、外文译文、译文原文(复印件)。
4.文字、图表要求:1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。
图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画3)毕业论文须用A4单面打印,论文50页以上的双面打印4)图表应绘制于无格子的页面上5)软件工程类课题应有程序清单,并提供电子文档5.装订顺序1)设计(论文)2)附件:按照任务书、开题报告、外文译文、译文原文(复印件)次序装订3)其它基于单片机的步进电机控制系统设计与实现摘要步进电机是一种纯粹的数字控制电动机,是一种受电脉冲信号控制的无刷式直流电动机,是现代定位驱动装置的核心,广泛应用在机械、电力、纺织、电子、仪表、印刷以及航空航天、船舶、兵器等国防工业等领域。
基于STC89c52单片机的步进电机控制系统设计
显示 、 人机互动等 四个 模块 组成 ; 实现 的功能 有 ( 1 ) 键盘 上相应 的 按键可 以控 制步进 电机停 止 、 转动 、 转 速的快 慢 、 正反转 等 ; ( 2 ) 通 过L E D 可 以 显 示 电机 的 工 作 状 态 , 如 转 速 的大小 , 转 动方 向 等 ; ( 3 ) 通 过 人 机 互 动 可 以灵 活 的对 电机 进 行 控 制 , 随 时 可 以 改 变 对 步 进 电机 的操作 ; 3系 统 硬 件 设 计 3 . 1 单 片机 模 块 该设计用 S T C8 9 c 5 2 单 片机 , 单片机 的 P 1 . 0 一P 1 . 3 接 步进 电机 驱 动器 。脉 冲信号 由延 时函数 产生 , 通 过单 片 机 的 P 1 . 0口输 出, 可 以通过 改变延 时 函数 的延时 时间来调 整电机 的转速 , 通过键 盘 的按钮 , 就可 以改变延时 函数 的延时 时间从 而改变 电机 的转 速 , P 0 口接 L E D数码管 , 可 以显示 当前 的电机转速 状态 。单 片机 的 P 3 . 0 P 3 . 4 接按 键电路 。振荡 电路 的晶振频 率为 : 1 1 . 0 5 9 2 MH z 。
基于 S T C 8 9 c 5 2 单 片机 的 步进 电 机 控 制 系统 设 计
邢聪聪 杨 成 邵 帅
( 西北 民族 大学电气工程 学院
【 摘 妻】 本设 计是 基 于 S T C 8 9 c 5 2 单 片机 的 步进 电机控 制 系统 , 步进 电 机 转动是 通 过将 单 片机 产 生 的信 号 脉 冲 转换 成 步进 电机 相 应 的 角位 移, 从 而 实现 工作 的驱 动 ; 该设 计 结构 简单 , 易于操 作 , 精度较高, 成本 较低 , 使 用 灵活等 特 点。 【 关键 词】 s T c 8 9 c 5 2 ; 步进 电机 ; 信 号脉 冲
基于stc89c52单片机的红外计数器设计及实现
基于stc89c52单片机的红外计数器设计及实现摘要:本文介绍了基于STC89C52单片机的红外计数器的设计和实现。
该计数器采用红外传感器作为输入信号,使用单片机作为处理器,能够实现自动计数,可以应用于各种场合的计数任务。
本文从硬件设计、软件设计两个方面进行了详细介绍,并给出了实际测试结果。
关键词:STC89C52单片机;红外计数器;硬件设计;软件设计一、绪论二、硬件设计2.1 红外传感器红外传感器是红外计数器的输入信号源,采用两个红外传感器进行输入信号的采集。
一般来说,红外传感器具有发射管和接收管两部分组成,发射管会发射一个特定频率的红外光,接收管则可以接收这个频率的红外光。
通过发射管和接收管之间的反射和折射效应,可以实现对物体进行探测。
2.2 显示器为了方便实时显示计数结果,该计数器装配了数码管显示器。
数码管显示器可以显示0~9的数字,通过不同的控制信号可以实现不同数字的显示。
2.3 单片机选型由于计数器需要进行计算和显示计数结果,因此需要一款性能优良的单片机来实现这些功能。
本设计采用了STC89C52单片机作为处理器。
STC89C52单片机是一款高性能、低功耗的8位单片机,具有多种外设和扩展接口,适合于各种应用场合。
2.4 电源模块为了保证计数器的正常工作,需要提供稳定可靠的电源。
本设计采用了交流电转直流电的方式,通过稳压芯片将电源输出电压稳定在5V左右,以满足单片机和显示器的工作电压要求。
3.1 程序设计流程该计数器的程序设计采用C语言编写,主要实现了两个功能:读取红外传感器输入的信号,进行计数并更新计数结果。
具体程序设计流程如下:1)初始化端口:设置单片机输入输出管脚的模式和初值。
2)初始化定时器:设置定时器的时钟源、计数模式和计数初值。
3)循环读取输入信号:连续检测两个红外传感器的输入信号,当检测到信号变化时,进行计数并更新计数结果。
4)显示计数结果:将计数结果存储到单片机中的寄存器中,通过数码管实现实时显示。
基于STC89C52的红外遥控器编程
unsigned char key = 100;
unsigned char keybuf [2]={ 1,1};
static unsigned char backup[2]= { 1,1};
keybuf [0]= key1;
if(keybuf[0] != backup[0])
{
delay(100);
TR0 = 1;
IR = 0;
while(!(TF0 == 1));
IR = 1;
TF0 = 0;
TR0 = 0;
TH0 = 0xF9;//1680us
TL0 = 0x70;
TR0 = 1;
while(!(TF0 == 1));
IR = 0;
TF0 = 0;
TR0 = 0;
}
完成了上面的三个基本函数,那我们就可以遵循NEC协议将每个8位一组的用户码,或者键值码进行封装了。话不多少,看代码。
void Key1() //0x3d 0011 1101 ~0x3d 1100 0010
{
SendCodeZero();
SendCodeZero();
SendCodeOne();
SendCodeOne();
SendCodeOne();
SendCodeOne();
SendCodeZero();
SendCodeOne();
IR = 0;
TF0 = 0;
TR0 = 0;
}
/*********发送0函数*********/
void SendCodeZero()/
{
TH0 = 0xFD; //560us
TL0 = 0xD0;
TR0 = 1;
基于单片机AT89C52的步进电机的控制器设计
基于单片机AT89C52的步进电机的控制器设计步进电机是一种非常常见的电机类型,由于其具有精准定位、适应高速运动以及控制简单等特点,被广泛应用于各种自动化设备中。
本文将从步进电机的工作原理、控制方式以及基于单片机AT89C52的步进电机控制器设计等方面展开阐述。
首先,我们来了解步进电机的工作原理。
步进电机是一种特殊的同步电动机,它具有内置的磁化轭,在没有外部励磁的情况下也能自动旋转。
步进电机的旋转是由控制电流方向和大小来实现的。
通常情况下,步进电机每转动一定角度,称为“步距角”,它可以是1.8度、0.9度、0.45度等,不同的步距角决定了电机的分辨率。
步进电机的控制方式主要有全步进和半步进两种。
全步进是指每次控制信号脉冲后,电机转动一个步距角。
而半步进则是在全步进基础上,在脉冲信号中引入一半步距角的微调。
控制信号脉冲可以是脉冲序列或者方波信号。
基于单片机AT89C52的步进电机控制器设计主要包括控制信号发生器的设计和步进电机驱动电路的设计。
控制信号发生器负责产生相应的控制信号脉冲,而步进电机驱动电路将这些脉冲信号转化为电流信号驱动步进电机。
控制信号发生器的设计可以采用定时器/计数器模块来实现。
AT89C52芯片具有可编程的定时器/计数器,可以用来产生控制信号的脉冲。
通过设置定时器的工作方式和计数值,可以实现不同频率、占空比的控制脉冲。
步进电机驱动电路的设计主要包括功率级驱动电路和电流控制电路。
功率级驱动电路负责将控制信号转化为足够大的电流驱动步进电机,通常采用功率放大器来实现。
电流控制电路则用来控制驱动电流的大小,使步进电机能够顺畅工作。
电流控制电路通常采用可调电阻、电流检测电阻和比较器等元件组成。
在步进电机控制器设计中,还需要考虑到步进电机的特性和应用需求。
例如,步进电机的电源电压、额定电流、阻抗、扭矩等参数需要与驱动电路匹配。
此外,还需要考虑到步进电机的机械结构、位置传感器、防重叠措施等因素。
基于STC89C52的红外遥控系统设计(LCD显示)
福建电力职业技术学院课程设计课程名称:《智能仪器》题目:基于STC89C52的红外遥控系统设计(LCD显示)专业班次:******姓名:***学号:指导教师:学期:2011-2012学年第2学期日期:2012.2目录目录1. 引言.............................................................................................................................. 错误!未定义书签。
1.1 本设计意义........................................................................................................ 错误!未定义书签。
1.2 本设计任务和主要内容.................................................................................... 错误!未定义书签。
2. 硬件设计...................................................................................................................... 错误!未定义书签。
2.1 系统框图的组成................................................................................................ 错误!未定义书签。
2.2 最小系统............................................................................................................ 错误!未定义书签。
基于STC89C52单片机红外遥控步进电机
项目名称:基于STC89C52单片机红外遥控步进电机一、摘要>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>二、关键词>>>>>>>>>>>>>>>>>>>>>>>>>>>>>三、STC89S52概述>>>>>>>>>>>>>>>>>>>>>>1.概述>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>2.主要性能>>>>>>>>>>>>>>>>>>>>>>>>>>3.单片机引脚分布图>>>>>>>>>>>>>>>>>>>四、功能描述及分析>>>>>>>>>>>>>>>>>>>>>>五、软件描述>>>>>>>>>>>>>>>>>>>>>>>>>>>1.程序流程图>>>>>>>>>>>>>>>>>>>>>>>>2.判断编码电平流程图>>>>>>>>>>>>>>>>>六、操作说明>>>>>>>>>>>>>>>>>>>>>>>>>>>七、实施步骤>>>>>>>>>>>>>>>>>>>>>>>>>>>1.步骤>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>2.PCB制作流程>>>>>>>>>>>>>>>>>>>>>>>3.原理图及电路分析>>>>>>>>>>>>>>>>>>>>八、项目制作原件清单>>>>>>>>>>>>>>>>>>>>九、项目程序>>>>>>>>>>>>>>>>>>>>>>>>>>>>十、毕业作品实物照>>>>>>>>>>>>>>>>>>>>>>> 十一、毕业设计总结>>>>>>>>>>>>>>>>>>>>>>>一、摘要随着我国工业化、信息化进程的高速发展,电子信息产业蓬勃发展,国内对单片机及其外围设备研究越来越深入,实用也越来越广泛。
基于STC89C52RC单片机的红外发射系统设计方案
P1 { .
P1 5 .
Pt 6 . P1 7 . R7 ¥
, / 红外 发 射 引 脚 / / 四个 独 立 按 键 定 义
s i S 2 P 5 bt W = : s iS 3 P ^ : b t W = 0 6
s i S 4 P0 7 bt W = ^: u sg e h r tp ]{ I, 2 3 . 4 } n in d c a m [ = x 0 2 x 3 x4; l 4 0 1x 0 0
{
u sg e h ri at ; n in dc a i, , mp
, 数 为 1 延 时 10 s / 参 时 0u
, / 参数为 l 时延时 l u Os / 8 发射函数 / k 3
vi dly0 u (ni e h rie) od ea10 su s n dca m r g t vi ea lu(ni e h ri r odd l O s s n dca me) y u g t ; vi w 6 s nindca me) udh 2 u( s e hri r u g t ; vi i( o man) d
科 技 信息
基于S C 9 5 R T 8 C 2 C单片栅昀 红1 发射系统设计方案 7 『
中国人 民解放 军 9 1 5 队 25 部 韩 红涛 三 亚学 院 张 瑾
[ 要] 摘 红外线遥控是利 用红外线传递控制信 号, 实现对控制对 象的远 距 离控制。红 外线遥控在 家用 电器、 安全保 卫、 工业控制 以 及人们 的 日常 生活等许 多领 域中 已获得 广泛应用 。本文 阐述一种基 于S 8 C5RC单 片机的红 外发射 系统的设 计方案, TC 9 2 并详 细介 绍 系统 的 硬 件 构 成 、 电路 设 计 及 程 序设 计 。 [ 关键词] 单片机 红外发射 程序设计 n一 髓 昧一
基于STC89C52单片机的步进电机控制系统设计说明
电气与电子信息工程学院《单片机》课程设计报告题目:基于STC89C52单片机的步进电机控制系统设计专业班级:电气工程及其自动化学号:姓名:指导教师:设计时间:设计地点:单片机课程设计成绩评定表指导教师签字:2013 年 12 月日课程设计任务书2013~2014 学年第 1 学期专业班级:指导教师:工作部门:一、课程设计题目单片机课程设计二、课程设计内容(含技术指标)1.设计目的及要求(1)根据具体设计课题的技术指标和给定条件,以单片机为核心器件,能独立而正确地进行方案论证和电路设计,完成仿真操作。
要求概念清楚、方案合理、方法正确、步骤完整;(2)熟悉、掌握各种外围接口电路芯片的工作原理和控制方法;(3)熟练使用单片机汇编语言或C51进行软件设计;(4)熟练使用Proteus、Keil软件进行仿真电路测试;(5)熟练使用Protel软件设计印刷电路板;(6)学会查阅有关参考资料和手册,并能正确选择有关元器件和参数;(7)编写设计说明书,参考毕业设计论文格式撰写设计报告。
2.设计内容(题目名称:基于STC89C52单片机的步进电机控制系统设计)步进电机是一种进行精确步进运动的机电执行元件,它广泛应用于工业机械的数字控制,为使系统的可靠性、通用性、可维护性以及性价比最优,根据控制系统功能要求及步进电机应用环境,确定了设计系统硬件和软件的功能划分,从而实现了基于8051单片机的四相步进电机的开环控制系统。
控制系统通过单片机存储器、I/O接口、中断、键盘、LED显示器的扩展、步进电机的环形分频器、驱动及保护电路、人机接口电路、中断系统及复位电路、单电压驱动电路等的设计,实现了四相步进电机的正反转,加速及减速等功能。
三、课程设计考核办法与成绩评定根据过程、报告、答辩等确定设计成绩,成绩分优、良、中、及格、不及格五等。
2013年11月一、方案论证1.1 设计任务及要求①以AT89C52芯片为核心,实现四线四相步进电机的正转、反转、加速以及减速功能。
基于STC89C52红外遥控系统设计
基于STC89C52红外遥控系统设计引言:随着科技的发展,遥控系统在现代生活中变得越来越普遍,特别是在家庭电器和自动化控制领域。
本文旨在设计一个基于STC89C52单片机的红外遥控系统,通过LCD显示器显示遥控指令的传输和接收过程,以及相应的操作结果。
设计思路:该遥控系统主要由红外传感器、STC89C52单片机、LCD显示器和电源部分组成。
红外传感器负责接收红外遥控信号,将其转换为电信号,传递给STC89C52单片机进行解码处理。
STC89C52单片机通过解码获得红外遥控指令,并将其转换为相应的操作。
同时,STC89C52单片机会将操作结果通过LCD显示器显示出来。
电路设计:在电路设计方面,主要需要连接红外传感器、STC89C52单片机和LCD 显示器。
首先,将红外传感器的输出引脚连接到STC89C52单片机的一个可编程引脚上,以便传递红外信号。
然后,将STC89C52单片机的其他引脚连接到LCD显示器的对应引脚上,以便进行数据和控制信号的传输。
最后,将适量的电源接入整个系统,以提供必要的电力。
程序设计:在程序设计方面,首先需要根据红外传感器的工作原理对接收到的红外遥控信号进行解码。
可以采用红外遥控解码库进行解码,以便获得具体的遥控指令。
然后,根据解码获得的遥控指令,编写相应的操作函数,在LCD显示器上显示出操作结果。
测试和优化:在完成电路和程序设计后,需要进行测试和优化,以确保系统的正常工作。
可以使用遥控器发送不同的指令,观察系统的响应情况,并在LCD 显示器上进行验证。
如果出现问题,可以通过调试程序和电路进行优化,直到系统能够正常工作。
总结:通过以上设计,可以实现基于STC89C52的红外遥控系统,并通过LCD显示器显示遥控指令的传输和接收过程,以及相应的操作结果。
该系统可以广泛应用于家庭电器和自动化控制领域,提高生活便利性和自动化水平。
同时,该设计也为学习和研究红外遥控技术提供了一个实践平台。
基于STC89C52的红外遥控器解码设计
线 接 收 到 输 出 与 1r _L电
识别 码 , 区 别 不 同 的 电器 在 设 备 , 止 不 同 机 种 遥 控 码 互 相 干 能 防 扰 。后 1 6位 为 8位 功能 码 及 其 反 码 。 NE 数 据 帧格 式 : 按键 按 下 超 过 3 ms时 , 荡 器 使 芯 片 C 当 6 振 激活 , 发射一组 18 将 0 ms的编 码 脉 冲 , 1 8 发 射 代 码 由 一 这 0 ms 个 起 始码 (ms的高 电平 )一 个 结 果 码 ( ms 电平 )低 8位 9 , 45 低 ,
pl a i a i t c on r ngehi m p tbi ysabe an r i l wo k , gh co a i l ,t l d el e i t ab r Ke wo d : far r y r s i r ed emo e onr l CU,od de de n t c to, M c e, co
J ,
、
编 码 格 式 中
“ ” “, O 、1 .的 表 示方法( 宽调 遥 发 码1 脉 控 射 …’
制 ) 图 1 如 。
从 图 1可
、j
168 ms 5
055n … 6 rs
候 启 动 定 时器 中断 ,等 待 一 个 低 电 平 和 一 个 高 电平 结 束 并 关 闭
s r c ei al omm u c to prvig h de dig nia in, o n te co n m eho i co r t e t d s rec . pr t ala Th aci ppl a in c i to prv t a i c o es h t t ha lw c s , de s o o twi ap —
毕业设计:基于STC89C52单片机的步进电机控制系统设计与实现
唐山学院毕业设计设计题目:基于STC89C52单片机的步进电机控制系统设计与实现系别:信息工程系班级:姓名:指导教师:2013年6月10 日基于单片机的步进电机控制系统设计与实现摘要步进电机是一种纯粹的数字控制电动机,是一种受电脉冲信号控制的无刷式直流电动机,是现代定位驱动装置的核心,广泛应用在机械、电力、纺织、电子、仪表、印刷以及航空航天、船舶、兵器等国防工业等领域。
基于单片机的步进电机控制系统具有稳定度高、成本低、控制方便、应用范围广等特点。
本系统是由STC89C52单片机核心处理模块,遥控器命令输入模块,ULN2003及28BYJ-48步进电机组成的电机模块,12864液晶输出模块共同组成的基于单片机的步进电机控制系统。
本设计以载波为38KHZ的红外遥控器作为用户的控制端,它的功能是把用户的命令转换为红外信号。
红外信号由TL1838接收,它可以将光信号转换为电信号,并将其发送给微控制器STC89C52。
STC89C52对电信号进行相应处理即可获得用户所发出的指令,并依此来控制28BYJ48型四相八拍电机并以12864液晶作为当前状态的显示器。
用户可以对步进电机进行加速、减速、正转、反转的控制。
本步进电机控制系统具有精度高、运行稳定、控制方便、维护简单、应用范围广等特点。
关键词:STC89C52 12864液晶步进电机红外遥控Design and Implementation of Stepper Motor Control System Based on MCUAbstractStepper motor is a kind of pure digital control motor and brushless dc motor controlled by electric pulse signal type. Stepper motor is the core of the modern orientation drive, widely used in machinery, electric power, textile, electronics, instruments, printing and aerospace, ships, weapons, and other areas of the defense industry, etc. The characteristics of the stepping motor control system based on single chip microcomputer include high stability, low cost, convenient control and wide application , etc.The stepper motor control system consists of core processor using the single chip processor, command input control module using IR remote control , display module using 12864 LCD and 28BYJ48 stepping motor module which using ULN2003 as driver.The infrared remote control with carrier for 38 KHZ is used as the control end of the user, which can convert the users’ commands into the infrared signal. The TL1838 can receive the infrared signal and convert it into electrical signal, which input to tSTC89C52.The MCU can obtain instructions of users by processing the incoming signal and control stepping motor of the 28BYJ48 type, the current status can be shown by 12864 LCD. Users could control acceleration, deceleration, forward, inversion for the stepping motor. The features of the control system of stepper motor includes high precision, stable running, convenient control and simple maintenance and wide application, etc.Key word:MCU; 12864 LCD; Stepper Motor; Infrared remote control目录1 引言 (1)2 总体设计方案 (2)2.1系统设计原理 (2)2.2总体设计框图 (2)3系统硬件模块的组成 (3)3.1单片机控制模块 (3)3.1.1 STC89C52主要结构 (3)3.1.2 STC89C52功能特性描述 (3)3.1.3 时钟电路 (6)3.1.4复位电路 (6)3.2步进电机模块 (7)3.2.1 步进电机简介 (7)3.2.2步进电机的结构 (8)3.2.3 28BYJ-48步进电机工作原理 (8)3.3ULN2003芯片概述与特点 (9)3.4红外线发射接收模块 (10)3.4.1 红外线遥控的介绍 (10)3.4.2红外通信基本原理 (10)3.4.3 红外遥控发射系统 (12)3.4.4 红外遥控接收系统 (12)3.4.5 TL1838与单片机的接口 (14)3.512864显示模块 (14)3.5.1 12864液晶的特点 (14)3.5.2 12864液晶的引脚说明 (15)3.5.3 12864液晶的读写操作 (17)3.5.4 12864液晶的控制指令 (17)3.5.5 12864液晶接口电路 (20)3.6蜂鸣器模块 (20)3.6.1 蜂鸣器介绍 (20)3.6.2 蜂鸣器的接口电路 (21)4 软件设计与调试 (22)4.1主程序流程图 (22)4.2程序设计思路 (23)4.2.1 遥控器的解码 (23)4.2.2 步进电机的控制 (23)4.2.3 显示屏的控制 (24)4.2.4 蜂鸣器的控制 (24)4.2.5 模块中的通信 (24)5 编程与下载软件 (25)5.1 Keil软件 (25)5.2STC-ISP下载软件 (26)6 硬件电路制作 (27)6.1原理图的绘制 (27)6.2电路实现的基本步骤 (27)7 结论 (30)谢辞 (31)参考文献 (32)附录 (33)1 引言步进电机是一种纯粹的数字控制电动机,又称为阶跃电机或脉冲电机[1]。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
项目名称:基于STC89C52单片机红外遥控步进电机一、摘要>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>二、关键词>>>>>>>>>>>>>>>>>>>>>>>>>>>>>三、STC89S52概述>>>>>>>>>>>>>>>>>>>>>>1.概述>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>2.主要性能>>>>>>>>>>>>>>>>>>>>>>>>>>3.单片机引脚分布图>>>>>>>>>>>>>>>>>>>四、功能描述及分析>>>>>>>>>>>>>>>>>>>>>>五、软件描述>>>>>>>>>>>>>>>>>>>>>>>>>>>1.程序流程图>>>>>>>>>>>>>>>>>>>>>>>>2.判断编码电平流程图>>>>>>>>>>>>>>>>>六、操作说明>>>>>>>>>>>>>>>>>>>>>>>>>>>七、实施步骤>>>>>>>>>>>>>>>>>>>>>>>>>>>1.步骤>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>2.PCB制作流程>>>>>>>>>>>>>>>>>>>>>>>3.原理图及电路分析>>>>>>>>>>>>>>>>>>>>八、项目制作原件清单>>>>>>>>>>>>>>>>>>>>九、项目程序>>>>>>>>>>>>>>>>>>>>>>>>>>>>十、毕业作品实物照>>>>>>>>>>>>>>>>>>>>>>> 十一、毕业设计总结>>>>>>>>>>>>>>>>>>>>>>>一、摘要随着我国工业化、信息化进程的高速发展,电子信息产业蓬勃发展,国内对单片机及其外围设备研究越来越深入,实用也越来越广泛。
无论是工业用品,还是民用产品,基本上都设计到单片机的设计和使用。
本设计介绍了一种基于STC89S52单片机的红外遥控步进电机的设计,系统分为红外遥控编解码和驱动步进电机两个模块,设计的系统能通过红外遥控器发射不同的码值来控制步进电机的正反转,加速减速以及启动停止,本报告对该系统的工作原理、硬件电路和软件进行了详细介绍。
二、关键词红外遥控;51单片机;步进电机三、STC89S52概述1.STC89S52是一种低功耗、高性能CMOS8位微控制器、具有8K在系统可编程Flash储存器。
实用Atmel公司高密度非易失性储存器技术制造,与工业80C51产品指令和引脚完全兼容。
片上Flash 允许程序储存器在系统可编程,亦适于常规编程器。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使STC89S52为众多嵌入式控制应用系统提供高灵活,超有效地解决方案。
2.主要性能(1)、与MCS_51单片机产品兼容(2)、8K字节在系统可编程Flash存储器(3)、1000次擦写周期(4)、全静态操作:0Hz~33Hz (5)、三级加密程序存储器(6)、32个可编程I/O口线(7)、三个16位定时器、计数器(8)、八个中断源(9)、全双工UART串行通道(10)、低功耗空闲和掉电模式(11)、掉电后中断可唤醒(12)、看门狗定时器(13)、双数据指针(14)、掉电标识符3. 单片机引脚分布图四、功能描述及分析基本构架原理框图1.红外发射模块:遥控发射器采用SC6121编码芯片进行红外遥控发射电路的搭建。
SC6121是一块用于红外遥控系统中得虹鳟用发射继承电路,采用CMOS公益制造,它可外接32个按键。
通过遥控器发射不同的码值,红外接收电路将接收到的信号送给单片机的外部中断0,单片机接收到信号后通过解码程序对接收到的信号进行处理,使得性和谐信号成为相应的码值。
经过处理后这些信号就可以去控制步进电机的正转反转、加速减速以及启动停止。
具体的遥控发射应用电路图如图所示红外遥控器:2.红外接收模块:本系统采用的接收模块其核心是与SC6121相对应的LFN0038红外接收头。
LFN0038是一颗集接收电路、调制解调电路、低通滤波、放大电路和控制电路为一体的集成接收头,一共有三个引脚输出其中一个是电源一个是接地另一个则是输出,这样就大大方便了我们的使用。
LFN0038内部结构如图由于LFN0038内部集成了强大的信号处理功能,所以在本系统中使用这个LFN0038的接收的时候我们只需要在外部嘉盛一个滤波电路即可,这个RC滤波电路是为了滤除电源端的干扰信号。
下图为LFN0038应用电路及遥控器红外接收头电路:3.步进电机驱动模块:本系统采用额定电压5VDC,相数为四相步进电机。
一共6根连接线,其中两根红色的为电源线。
采用单极性直流电源供电。
只要对不仅电机的各项绕组按合适的时序通电,就能使不仅电机步进转动。
由于单片机P口输出地电流比较弱不能驱动不仅电机,所以要价一个ULN2003芯片来放大电流使之能驱动步进电机工作。
ULN2003是高耐压、大电流达林顿陈列,由七个硅NPN达林顿管组成。
ULN2003的每一对达林顿管都串联一个ULN2003工作电压高,工作电流大,灌电流可达500mA,并且能够在关态时承受50V的电压,输出还可以在高负载电流并行运行。
步进电机驱动电路如图:负载电流并行运行。
步进电机驱动电路如图:五、软件描述(1)程序流程图(2)判断编码电平流程图六、操作说明(1)、接上5V电源线,按下开关按钮,系统初始化。
(2)、按下UP按键,单片机调用正转程序指令,步进电机开始做时针运动。
按下DOWN按键,单片机调用反转程序指令,步进电机开始顺时针运动。
(3)、在正转反转状态下:连续按下+键,单片机调用加速指令,步进电机开始加速。
连续按下-键,单片机调用减速指令,步进电机开始减速。
七、实施步骤1.步骤(1)方案确定:分析题目要求,手机资料,提出方案并论证;(2)基于STC89S52单片机红外遥控步进电机:a)完成基于STC89S52单片机红外遥控步进电机的原理图的设计及电路分析基于STC89S52单片机红外遥控步进电机的原件清单;关b)键元器件选购;(3)线路板的设计与制作1)ProtelDXP完成线路板的设计2)利用热转印方法完成线路板的制作(4)基于STC89S52单片机红外遥控逼近电机的制作1)完成线路板的装配;2)简易外壳的制作;3)利用知道老师提供的程序完成整机的调试。
(5)程序编写、调试及仿真(使用KeilC51和Proteus开发工具软件)(6)基于STC89S52单片机红外遥控步进电机的原理图;八、项目清单红外遥控步进电机耗材清单九、项目程序#include<reg51.h>#define uchar unsigned char#define uint unsigned intsbit IRIN=P3^2; //红处接收端口sbit BEEP = P2^0; //蜂鸣器驱动线bit direction,flag;uchar count1=0,count2=0;uchar rate=9;uchar IRCOM[6];unsigned char code FFW[8]={0xfe,0xfc,0xfd,0xf9,0xfb,0xf3,0xf7,0xf6}; //反转unsigned char code REV[8]={0xf6,0xf7,0xf3,0xfb,0xf9,0xfd,0xfc,0xfe}; //正转char code reserve[3]; //保留0x3b开始的3个字节/****************************************************** *************延时子函数******************************************************* ************/void delay(uchar x){uchar i;while(x--){for(i=0;i<14;i++);}}void beep(void){unsigned char i;for (i=0;i<100;i++){delay(4);BEEP=!BEEP; //BEEP取反}BEEP=1; //关闭蜂鸣器}/****************************************************** *************主函数******************************************************* ************/void main(void){BEEP=1;P0=0xff; //端口初始化P1=0xff;TMOD=0x01; //Timer0工作方式1TH0=0xf8; //2ms定时常数TL0=0xcc;ET0=1; //允许Timer0中断EA=1;TR0=0;EX0=1;IT0=1;direction=1;while(1){if(IRCOM[2]==0x47) //为遥控器的K1键{TR0=0;P0=0xf0; //步进电机断电}if(IRCOM[2]==0x43) //为遥控器的up键{direction=1; //置运行方向标志位(正转)TR0=1;}if(IRCOM[2]==0x40) //为遥控器的DOWN键{direction=0; //清运行方向标志位(反转)TR0=1;}flag=0;}}/****************************************************** *************INT0中断服务子函数******************************************************* ************/void IR_IN()interrupt 0{unsigned char j,k,Num=0;EX0=0; //关闭INT0中断delay(15); //延时if(IRIN==1) //再确认IR信号是否出现{EX0=1; //开INT0中断return;//退出}while(!IRIN) //等IR变为高电平,跳过9ms的前导低电平信号{delay(1);}while(IRIN) //等IR变为低电平,跳过4.5ms的前导高电平信号{delay(1);}for (j=0;j<4;j++) // 收集四组数据{for(k=0;k<8;k++)//每组数据有8位{while(IRIN)//等IR变为低电平{delay(1);}while(!IRIN)//等IR变为高电平{delay(1);}while(IRIN)//计算IR高电平时长{delay(1);Num++;if(Num>=15){EX0=1;//0.14ms计数过长自动离开return;}}//高电平计数完毕IRCOM[j]=IRCOM[j]>>1;//数据最高位补“0”if(Num>=8)IRCOM[j]=IRCOM[j]|0x80;//数据最高位补“1”Num=0;}}if(IRCOM[0]!=0x00)//比较用户码{EX0=1; //开INT0中断return;//退出}if(IRCOM[2]!=~IRCOM[3])//接收数据是否正确{EX0=1;//开INT0中断return;//退出}else beep();flag=1;if(IRCOM[2]==0x09)//“+”键{if(rate>4)rate--;elserate=4;}if(IRCOM[2]==0x15){if(rate<15)rate++;elserate=15;}EX0=1;//重新开INT0中断}/****************************************************** *************定时器0中断服务子函数******************************************************* ************/void motor_onoff() interrupt 1{TL0=0xcc;//2ms定时常数TH0=0xf8;count1++;if(count1<rate){return;}else{count1=0;if(direction==1) //运行方向标志{if(count2<8)P0=FFW[count2]&0x1f; //取数据,正转count2++; //取数据次数加1if(count2==8)count2=0;}else{if(count2<8)P0=REV[count2]&0x1f; //取数据,反转count2++; //取数据次数加1if(count2==8)count2=0;}}}十、毕业作品实物照。