ImageVerifierCode 换一换
格式:DOCX , 页数:24 ,大小:405.27KB ,
资源ID:3905495      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3905495.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(单片机继电器控制.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

单片机继电器控制.docx

1、单片机继电器控制 电 子 科 技 大 学单片机最小应用系统 设 计 报 告 指导老师: 学 生: 学 号: 机电工程学院2009年5月单片机最小应用系统设计报告一、设计题目1二、设计目的1三、系统硬件图1四、程序流程图2五、系统分析与说明5.1系统主要组成部分35.2继电器量部分45.3单片机最小系统部分55.4可编程并行接口芯8255A部分105.5电路板的制作155.6系统连线说明分析.16六、源程序 17七、设计体会20八、参考文献 20一、 设计题目继电器控制。用8031单片机和8255控制继电器,实现外部电路转换。按一个按钮,第一条线通,再按一下,第一条线路断开,第二条线路通。二、

2、设计目的1、 通过本次实验,掌握继电器的基本原理和特点。2、 掌握可编程通用并行接口芯片8255芯片的结构及编程方法。3、 搭建单片机最小应用系统,进一步加深对单片机应用的理解,提高处理实际问题的能力和独立分析思考的能力。三、 系统硬件图1、 继电器控制的硬件电路原理图如下: 图1 电路原理图2、PCB图如下: 图2 PCB图 四、 程序流程图继电器控制系统程序框图如下: 图3 程序流程图五、系统分析与说明5.1系统主要组成部分继电器控制系统主要分为三个部分:单片机最小系统,继电器部分,可编程并行接口芯片8255A部分。所用主要元件有:AT89S51 ,SRD-05VDC-SL-C型继电器器,

3、 8255A,发光二级管。5.2继电器部分5.2.1 继电器实物图与电气图 继电器是一种电子控制器件,它具有控制系统(又称输入回路)和被控制系统(又称输出回路),通常应用于自动控制电路中,它实际上是用较小的电流去控制较大电流的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电路等作用。 图4 继电器实物图 图5 继电器电气图5.2.2 继电器的工作原理和特性电磁式继电器一般由铁芯、线圈、衔铁、触点簧片等组成的。只要在线圈两端加上一定的电压,线圈中就会流过一定的电流,从而产生电磁效应,衔铁就会在电磁力吸引的作用下克服返回弹簧的拉力吸向铁芯,从而带动衔铁的动触点与静触点(常开触点)吸合。当

4、线圈断电后,电磁的吸力也随之消失,衔铁就会在弹簧的反作用力返回原来的位置,使动触点与原来的静触点(常闭触点)吸合。这样吸合、释放,从而达到了在电路中的导通、切断的目的。对于继电器的“常开、常闭”触点,可以这样来区分:继电器线圈未通电时处于断开状态的静触点,称为“常开触点”;处于接通状态的静触点称为“常闭触点”。5.2.3继电器的选用注意事项控制电路的电源电压,能提供的最大电流;被控制电路中的电压和电流;被控电路需要几组、什么形式的触点。选用继电器时,一般控制电路的电源电压可作为选用的依据。控制电路应能给继电器提供足够的工作电流,否则继电器吸合是不稳定的; 注意器具的容积。若是用于一般用电器,除

5、考虑机箱容积外,小型继电器主要考虑电路板安装布局。对于小型电器,如玩具、遥控装置则应选用超小型继电器产品。5.3单片机最小系统部分MCS-51系列单片机是一种高性能的8位机系列,广泛应用于各种小型控制系统中,其引脚图如图所示。本论文采用的AT89C51单片机是AMTEL公司生产的MCS-51系列的兼容产品,与MCS-51指令系统兼容,系统结构相同,CMOS工艺制造并带有非易失性Flash程序存储器。全部支持12时钟和6时钟操作。AT89C51包含128字节RAM、32条I/O 口线、3个16位定时/计数器、6输入4优先级嵌套中断结构、1个串行I/O 口(可用于多机通信I/O扩展或全双工UART

6、以及片内振荡器和时钟电路)。CPURAMROMI/O接口电路定时器/计数器时钟 图6 MCS-51引脚图MCS-51系列单片机的并行I/O口接口电路是微机必不可少的组成部分,并行输入确出接口是CPU和外部进行信息交换的主要通道。MSC51系列单片有4个8位并行双向I/O口P0P3,共32根I/O线。每一根线能独立用作输入或输出。单片机可以外接键盘、显示器等外围设备还可以进行系统扩展,以解决硬件资源不足问题。4个并行口都是双向口,既可以输入又可以输出。P0、P2口经常作外部扩展存储器时的数据、地址线,P3口除作I/O口外,每一根都有第二功能。这4个I/O口结构基本相同,但仍存在差别。(1) P1

7、口是最常用的I/O口如图所示,因为不作数据地址线,其结构中没有数据地址线,也没有多路开关MUX,输出驱动电路接有上拉电阻。P1口输入输出时与P0作I/O时相似,输出数据时先写入锁存器,经Q端反相,再经场效应管反相输出到引脚。输入时,先向锁存器写l,使v管截止外部引脚信号由下方读缓冲器送入内部总线,完成读引脚操作。P1口也可以读锁存器。外部提升电阻将引脚拉升至高电平,但输人的低电平信号能将其拉低,不会影响低电平的输入。图7 P1口一位结构 (2) P2口的位结构比P1多了一个控制转换部分如图5所示,结构与P0口基本相似,如下图所示。P2口改P0推拉式输出驱动电路为上拉电阻式,当控制信号s为低电平

8、,作I/O口使用时,多路开关MUX使锁存器输出端Q与输出驱动输入端接通,构成一个准双向口。此外,当外部扩展存储器时,P2口常做高8位地址线使用。图8 P2口一位结构下表中概括了单片机中使用到的并行口P1、P2功能: 表1 P1、P2功能一览表MCS-51系列单片机的工作方式和时序单片机应用系统中,除了基本计算机系统单元电路外还需配备完整的外围电路、以完成复位、掉电保护、提供时钟、节电等功能。(1)时钟电路:单片机内部有一个高增益的反相放大器,通过XTAL1和XTAL2引脚外接石英振于或陶瓷振子、微调电容组成振荡器如图13所示。该振荡器发出的脉冲直接送入内部时钟电路。振荡器若外接的是石英扳子,微

9、调电容通常选择30pF;外接陶瓷娠子时选样47pF。振荡频率范围选择1.212M。MCS5-51系列单片机也可以采用外接时钟,这时XTAL 2脚用来输入外部时钟信号(XTAL2脚为内部时钟电路的输入端),XTALl脚则接地如图13b所示。对于CHM05工艺制造的80C51单片机,则应从XTALl脚输入外部时钟信号,XTAL 2脚悬空。 (a)外接石英晶体振荡电路 (b)外接时钟电路图9 两种单片机时钟电路(a) 上电复位 (b) 按键电平复位 (c) RC放电过程 (d) 电平复位过程图10 单片机常用复位电路(2)复位电路:复位使单片机处于起始状态,并从此状态开始运行MCS5-51单片机RS

10、T引脚为复位端,该引脚连续保持2个机器周期(24个时钟振荡周期)以上的高电平。可使单片机复位。本论文使用的是外部复位电路,单片机在启动后要从复位状态开始运行,因此上电时要完成复位工作,称上电复位,如图10a所示。上电瞬间电容两端的电压不能发生突变,只RST端为高电平5v,上电后电容通过及RC电路放电RST端电压逐渐下降,直至低电平0V,如图10c所示。适当选择R、C的值,使RST端的高I电平维持2个机器周期以上即可完成复位。单片机L在运行过程中,出于本身或外并干扰的原因会导致出错。这时可按复位键以重新开始远行,按键复位可分为按键电平复位或按健脉冲复位,如图10b所示。按键脉冲复位和上电平复值的

11、原理是一样的,都是利用RC电路的放电原理,如图10d所示。让RST端能保持一段时间的高电平,以完成复位,按键电平复位时,按键时间也应保持在两个机器周期以上。根据设计要求和计算简便的原则,我们选择12M的石英晶振、30PF的电容、+5V电源,最小系统如下:图11 单片机最小系统5.4可编程并行接口芯片8255A部分8255A可编程外围接口芯片是INTEL公司生产的通用并行接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作: 方式 0:基本输入输出式; 方式 1:选通输入输出式; 方式 2:双向选通工作方式。8255A可编程输入/输出接口1从功能上来分,8255A的

12、结构可分为:总线接口电路、内部控制逻辑和输入/输出接口电路。 (1)总线接口电路 数据总线缓冲器和读/写控制逻辑。(2)内部控制逻辑(3)输入/输出接口电路图12 8255A的结构框图1)三个数据端口 8255A芯片内部有三个8位的输入输出端口,分别为A口、 B口和C口,可用指令将它们分别设置成输入或输出端口,它们在结构和功能上各有特点。端口A包含一个8位数据输入锁存器和一个8位数据输出锁存器缓仲器。端口A无论是用做输入端口还是用做输出端口,其数据均能锁存。 端口B包含一个8位数据输入缓仲器和一个8位数据输出锁存器准仲器。端口B用做输出端口时,其数据能锁存;用做输入端口时,不具有锁存能力,此时

13、外设输入的数据必须维持到被CPU读取为土。端口C包含一个8位数据输入缓仲器和一个8位数据输出锁存器准仲器,当它被用做输入端口时,不具有锁存能力。端口A和端口 B一般作为独立的I/O口使用,与外设的数据线相连。端口 C可以作为一个独立的8位I/O口;也可以拆分为由高4位和低4位分别组成的两个4位端口,作为两个独立的4位I/O口使用;端口C拆分开的高4位和低4位还可以与端口A和端口 B配合,作为端口A和端口B的信号联络线。2)两组控制器 8255A将端口 A B、 C分为两组:端口 A和端口 C的高岑位构成A组,由 A组控制器进行控制;端口B和端口C的低岑位构成B组,由B组控制器进行控制。这两组控

14、制器都从读写控制逻辑接收命令信号和读写信号,从内部数据总线接收控制字,并根据控制字确定各端口的工作方式。3)数据总线缓冲器 数据总线缓仲器是一个双向三态的8位缓仲器,它直接与系统数据总线连接,是8255A与CPU之间传输数据的必经之路,数据的输入、输出以及控制字的写入都是通过这个缓仲器传递的。4)读写控制逻辑 读写控制逻辑电路负责管理8255A的数据传输过程。它接收来自控制总线的控制信号WR、RD、RESET和地址总线的AI、AD以及由地址译码输出的片选信号CS,由这些信号形成对端口的读写控制,并通过A组控制器和B组控制器实现对数据、状态和控制信息的传输。8255A的引脚说明8255A是40根

15、引脚,双列直插式芯片,40根引脚的分布图如下图(引脚图)所示,这些引脚可分成:(1)与外设连接的引脚(2)与CPU连接的引脚RESET:复位信号输入端,高电平有效,有效时清除8255A内部寄存器,同时三个端口自动设为输入端:D0D7:数据线;VCC:电源;GND:接地线;PAsPA7: A组8位I/O口;PB。PB7:B组 8位 I/O口;PC。PC7:C组 8位 I/O口,还具备其它控制功能;CS:片选信号输入线,低电平有效;RD:读选通信号输入线,低电平有效;WR:写选通信号输入线,低电平有效;ADAI:端口信号选择端,用于决定当前对哪一个端口进行操作。 图13 8255A引脚分布图825

16、5A端口选择表 表2 8255A端口选择表 8255A的编程控制字(1)工作方式控制字:用来设定通道的工作方式及数据的传送方向的。(2)C口按位置位/复位控制字:向控制寄存器写入控制字,而使它的每一位置位或复位。(3)两个控制字的差别工作方式控制字放在程序的开始部分;按位置位/复位控制字可放在初始化程序以后的任何地方。8255A的工作方式及应用(1)方式0及其应用:系统连接(2)方式1及其应用: 引脚配置、输出图、输出时序、状态字(3)方式2及其应用: 引脚定义、输出时序、状态字、接口电路图14 系统连接图5.5电路板的制作Protel99功能强大,为我们进行电子电路原理图和印制板图的设计提供

17、了良好的操作环境。用Protell99进行电路设计分为两大部分:原理图的设计和电路板的设计。原理图的设计实在SCH系统中进行的,电路原理图是印刷板电路设计的基础,只有设计好原理图才有可能进行下一步的电路板设计。用protel99进行电路板设计的第一步是其原理图的设计。显然,原理图决定整个电路的基本功能,也是接下来生成网表和设计印刷板电路的基础。具体步骤如下:(1)图面设置: Protel99允许用户根据电路的规模设置图面的大小,按照偏好和习惯设置图面的样式。实际上,设置图面就是设置了一个工作平面,以后的工作就要在这个平面上进行。所以图面应该设置得足够大,为进一步工作提供一个足够大的工作空间。(

18、2)放置元件: 所谓放置元件就是从元件库中选取所需得元件,将其布置到图面上合适的位置,有时还要重定义元件的编号、封装。元件的封装很重要,要根据元件的实际尺寸和实际封装来决定,要是元件没封装好,将会给以后电路板的制作带来很大的麻烦。这些都是下一步工作的基础。Protel99为用户提供了一个非完备的元件库,并且允许用户对这个元件库进行编辑或者新建自己的元件库。电路板的制作过程(1) 打印:将生成的PCB图打印到热转印纸上,需注意线不能太窄,墨要加重,否则制板时容易断线,如果在操作过程中断了线,可用电烙铁将锡带过。(2) 熨烫:将热转印纸覆在铜板上,用电熨斗进行熨烫,关键要注意熨烫的时间,不能太久,

19、也不能时间太短,否则,太久会把铜板烫坏,不够的话墨迹覆不上去。(3) 腐蚀:把铜板放到三氯化铁溶液中腐蚀,需注意溶液浓度要较高,最好用热水配置,这样腐蚀更快,一般3分钟即可。如果时间过长,需剩下的铜线也可能被腐蚀。(4) 打孔:打孔时注意钻头尺寸,本次用的钻头大小是0.712mm的,最需注意的地方是集成块的管脚,如果打孔误差大,管座就很难插上。(5) 放置元件:放置前应先打磨一下打孔后留下的毛刺,并均匀地涂上松香水(目的是防止铜线氧化,易于焊锡覆着焊盘,但多涂会导致焊接时焊点变黑,影响美观)。放置元件时注意集成块的管脚,二极管和电解电容的正负,这些都是平时比较容易出错的地方。(6) 焊接:焊接

20、技术比较难掌握,焊锡、烙铁与焊盘的位置关系,焊锡熔化时间长短,松香水的浓度,烙铁的温度等等,都是影响焊点美观的因素。(7) 检查:检查是否有虚焊,集成块管脚位置是否正确,电源引线位置是否恰当等。检查完毕就能进行调试了。 5.6系统连线说明分析在本系统中8255的PA0、PA1分别继电器上的串联电阻RE1和RE2相连,发光二极管一端与继电器触点相连,另一端接地,单片机的P1.0P1.7连接到8255的D0、D1、D2、D3、D4、D5、D6、D7端子上,作为数据总线,单片机的P3.5与8255的片选信号CS端子相连,P3.4和P3.3与8255的RD和WR端子相连,用于读写信号,P3.6和P3.

21、7与8255的A1和A0端子相连,选择8255的控制端口。调试过程:1、 保证电路板连接正确后,接上电源。2、 保证正确的按钮次序及按下次数与要求的线路控制相符合。实验过程中的问题及改进方法1、制作电路板过程中由于焊接等原因,造成电路连接不通现象,浪费了调试时间。2、由于8255的时序控制不好把握,在调试中花费了不少时间。六、源程序#include #define A0 P3_7#define A1 P3_6#define Rest P3_2#define Read P3_4#define Write P3_3#define CS P3_5#define WR_CLK() Read=1; Wr

22、ite = 0;Write =1 unsigned char Key_Count = 0,TM,set_key_flag;void Set_Adr(char Adr) if(Adr&0x01) A0=1; else A0=0; if(Adr&0x02) A1=1; else A1=0;void Wr_Data_At(unsigned char Data,unsigned char Adr) CS=1; CS=0; Set_Adr(Adr); P1=Data; WR_CLK();void Init_8255(void) Rest=1; Rest=0; CS=0; Read=1; Write=1;

23、 Wr_Data_At(0x82,3);void Set_CH1(void) Wr_Data_At(0xfe,0);void Set_CH2(void) Wr_Data_At(0xfc,0);void Clr_CH1CH2(void) Wr_Data_At(0xff,0);void delay(unsigned int n) unsigned int i=0,j=0; for (i=n;i0;i-) for (j=0;j1000;j+) ; unsigned char Get_Key(void) unsigned char ret=0; unsigned char temp; Read=0;

24、Write=1; Set_Adr(1); temp =P1|0xe7; if(temp!=0xff) delay(50); if(temp = 0xf7) ret = 2; if(temp = 0xef) ret = 1; Read=1; return ret;void main(void) unsigned char key=0; Init_8255(); Clr_CH1CH2(); while(1) key=Get_Key(); if(key=1) Key_Count+; switch (Key_Count) case 1: Set_CH1(); break; case 2: Set_CH

25、2(); break; default: ; break; if(key=2) Key_Count=0; Clr_CH1CH2(); 七、设计体会1、在设计系统过程中,学会用Protel 99画原理图和PCB图。2、自己动手制作电路板,提高动手能力。3、调试程序过程中,针对遇到的问题,寻找解决方法,同时学会利用C语言编制单片机程序。4、感谢在整个设计单片机最小系统过程中给我很大帮助的导师,师兄,同学等。八、参考文献1 孙安青. AT89S51单片机实验及实践教程M.2 秦晓梅.育斌.单片机原理综合实验教程M.辽宁:大连理工大学出版社,2004.3 邓红 张越 单片机实验与应用设计教程M.北京:冶金工业出版社,2004.54 李建中.单片机原理及应用M. 西安:西安电子科技大学出版社,2008.2.5 郑一力.殷晔 Protel 99SE电路设计与与制版M.北京:人民邮电出版社,2008.6 张齐 杜群贵 单片机应用系统设计技术M.北京:电子工业出版社,2004.8

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1