#《电力电子仿真》实验报告1_第1页
#《电力电子仿真》实验报告1_第2页
#《电力电子仿真》实验报告1_第3页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、成都理工大学工程技术学院电子电路仿真课程设计报告题目:跑马灯的设计姓名:毛敏学号: 201020307139专业: 10 自动化一班【实验准备】在实验前,我通过上网、上图书馆查找了一些关于单片机 AT89S51的硬 件及指令系统的资料和8255A输出口的使用的资料,结合单片机所学的中 断、定时器和AT89S51扩展I/O接口芯片8255A的工作方式的知识,并对 电路板各个元器件、接线等的清楚认识,完成了对电路板仿真图的绘制, 以及初步的程序,并实现了初步的仿真效果。【设计内容】设计一个跑马灯。【设计要求】所设计的跑马灯是依次轮流点亮最后全部灯闪烁一次。CPU为AT89S51利用并行口 P0 口

2、、P2 口、P3 口,并运用了单片机的 扩展输入-输出口以及接口芯片8255。【设计方案】一、实验原理方框图:本程序设计意在展示跑马灯的色彩样式及“跑马”变换效果,如果将 跑马灯做大,会有很高的观赏价值。通过对一些相关书籍资料的查阅及网 上各种作品和代码的浏览,对各种实现代码的比较和优化,总结出本程序, 以较优秀的代码实现各种可控的“跑马灯”功能。硬件系统部分包括显示部分、控制灯亮的方式部分和控制芯片1、跑马灯的接线电路原理图:U134D0PA01 4333D1PA132r 2D2PA2311D3PA330r 40D4PA429D5PA5392838D6PA627r 37D7PA75RDPB0

3、181936WRPB1920A0A1PB2PB381 213522RESETPB4r 23PB5_6CSPB6PB72425PC0141 15PC116PC2PC317311PC4PC5PC6PC7108255A(1)、8255A的PA、PB、PC作为跑马灯的输出口、D0D7 三态双向数据线:8位三态双向输入输出是 8255A和CPU接口的数据总线(3)、RESET复位:高电平有效,复位时 PA、PB、PC 口和控制寄存器 被清除(4)、 S芯片选择低电平有效。当 S=0时,选择8255A(5)、 D读数据低电平有效。D=0且 S=0时,CPU从8255A读取数据(6) R写数据低电平有效。R

4、=0且 S=0时,CPU将数据写入8255A(7)、A0,A1 地址选择用来选择8255A的PA、PB、PC 口和控制寄存器。如表一所示(8)、PA0PA7 PA 输入 /输出口8位数据输出锁定/缓冲器及8位输入锁定(9)、PB0PB7 PB 输入/输出口8位数据输入/输出锁定/缓冲器/及8位输入缓冲器(10)、PC0PC7- PC 输入/输出口8位数据输出锁定/缓冲器及8位输入锁定(11)、Vcc、GNDVcc: +5V 电源,GND :接地表一地址选择A1A0被选中的端口名00PA 口寄存器01PB 口寄存器10PC 口寄存器11控制寄存器2、AT89C51芯片分析ATME的AT89C51

5、是一种高效微控制器,将多功能8位CPI和闪烁存储器组合在单个芯片中,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。AT89C5啲芯片引脚图如下:U31918293112345678 XTAL1P0.0/AD0P0.1/AD1P0.2/AD2XTAL2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6RSTP0.7/AD7P2.0/A8P2.1/A9P2.2/A10PSENP2.3/A11ALEP2.4/A12EAP2.5/A13P2.6/A14P2.7/A15P1.0P3.0/RXDP1.1P3.1/TXDP1.2P3.2/INT0P1.3P3.3/INT1P1.4P3.4

6、/T0P1.5P3.5/T1P1.6P3.6/WRP1.7P3.7/RDAT89C5139373633-221 22 2325281011121314151617图一 AT89C51引脚图(1)各引脚的说明和功能分析如下:VCC供电电压。GND接地。P0 口: P0 口为一个8位漏级开路双向I/O 口,每脚可吸收8TTL门电 流。当P1 口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程 序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须 被拉高。P1 口: P1 口是一个内部提供上拉电阻的

7、 8位双向I/O 口,P1 口缓冲器 能接收输出4TTL门电流。P1 口管脚写入1后,被内部上拉为高,可用作输 入,P1 口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1 口作为第八位地址接收。P2 口: P2 口为一个内部上拉电阻的8位双向I/O 口,P2 口缓冲器可接 收,输出4个TTL门电流,当P2 口被写“ 1”时,其管脚被内部上拉电阻 拉高,且作为输入。并因此作为输入时,P2 口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2 口当用于外部程序存储器或16位地址 外部数据存储器进行存取时,P2 口输出地址的高八位。在给出地址“1”时

8、, 它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2 口输出其特殊功能寄存器的内容。P2 口在FLASH编程和校验时接收高八位地址 信号和控制信号。P3 口: P3 口管脚是8个带内部上拉电阻的双向I/O 口,可接收输出4 个TTL门电流。当P3 口写入“ 1”后,它们被内部上拉为高电平,并用作 输入。作为输入,由于外部下拉为低电平,P3 口将输出电流(ILL )这是由 于上拉的缘故。RST复位输入。当振荡器复位器件时,要保持 RST脚两个机器周期的 高电平时当8051通电,时钟电路开始工作,在 RESET引脚上出现24个时钟周期以上的高电平,系统即初始复位。初始化后,程序计数器

9、PC指向OOOOH P0-P3输出口全部为高电平,堆栈指钟写入 07H其它专用寄存器 被清“0”。RESET由高电平下降为低电平后,系统即从 0000H地址开始执行 程序。然而,初始复位不改变 RAM(包括工作寄存器R0-R7)的状态:特殊功能寄存器初始态特殊功能寄存器初始态ACC00HB00HPSW00HSP07HDPH00HTH000HDPL00HTL000HIPxxx00000BTH100HIE0xx00000BTL100HTMOD00HTCON00HSCONxxxxxxxxBSBUF00HP0-P31111111BPCON0xxxxxxxBALE/PROG当访问外部存储器时,地址锁存允

10、许的输出电平用于锁存 地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时, ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用 作外部数据存储器时,将跳过一个ALE脉冲。如想禁止 ALE的输出可在SFR8EH&址上置0。此时,ALE只有在执行 MOVXMOV指令是ALE才起作 用。另外,该引脚被略微拉咼。如果微处理器在外部执行状态ALE禁止,置位无效。PSEN外部程序存储器的选通信号。在由外部程序存储器取指期间, 每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/

11、PSEN信号将不出现。EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器 (OOOOH-FFFF)不管是否有内部程序存储器。 注意加密方式1时,/EA将 内部锁定为RESET当/EA端保持高电平时,此间内部程序存储器。在FLASH 编程期间,此引脚也用于施加12V编程电源(VPP。XTAL1反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2来自反向振荡器的输出。振荡器特性:XTAL1和XTAL2分别为反向放大器的输入和输出。 该反向 放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外 部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二 分频触发

12、器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的 高低电平要求的宽度。芯片擦除:整个PERO懈列和三个锁定位的电擦除可通过正确的控制 信号组合,并保持ALE管脚处于低电平10ms来完成。在芯片擦操作中,代 码阵列全被写“ 1”且在任何非空存储字节被重复编程以前,该操作必须被 执行。此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑, 支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。本设计使用AT89C51芯片作为控制芯片,

13、利用P0 口连接一个并行输入 /输出器件8255A用8255器件的PA PB 口连接发光二极管,最后通过用汇编语言编程实现。通过程序中的延迟来控制“跑马灯”的亮灭,以达 到显示效果。开始时第一组的灯从上往下一次,而第二组的八个跑马灯是 从下往上一次亮,然后第一组的再倒回去,最后所有的灯全亮一次,按此 规律循环下去。3、硬件电路连接图如下:C21nFX1U119CRYSTALXTAL118XTAL2RST29匸ALEEAP1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P

14、0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RDU2393421'74<5536rD0PA0D1PA1D2PA2D3PA3D4PA4D5PA5D6PA6D7PA7RDPB0WRPB1A0PB2A1PB3RESETPB4PB5CSPB6PB7PC0PC1PC2PC3PC4PC5PC6PC7AT89C51'ELLOWD5'ELLOW'ELLOW

15、9;ELLOWD3'ELLOWD418B119B220B323B625b8LLOWD2D9D10D13LED-YELLOWD14LED-YELLOWR2loo-R3R4R1R7100R8R10R9R114=h100R12R13100R14R15100LED-YELLOW图二原理图四、程序流程图1、主程序:程序设计思路:本设计使用89S2051芯片作为控制芯片,利用P0 口连 接一个并行输入/输出器件8255A用8255器件的PA PB 口连接发光二 极管,最后通过用汇编语言编程实现。通过程序中的延迟来控制“跑马灯”的亮灭,以达到显示效果。开始时第一组的灯从上往下一次,而第二组的 八个跑

16、马灯是从下往上一次亮,然后第一组的再倒回去,最后所有的灯全 亮一次,按此规律循环下去。主程序图二是开始时第一组的八个灯从上往下依次亮,而第二组的八个跑马灯是 从下往上依次亮时的仿真图。图三是第一组倒回去亮时,而第二组的不变时的仿真图。图四是所有灯同时亮时的仿真图的截图。±C11nFP0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0-P3

17、.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RDU23934D0"3732D1D23JD334计D53327D6D721536RDT2236-WR:=7EA0A1RESET%CSR5eLLOWR2ELLOWD2'ELLOWD3R4D4D5eLLOWR10PB/ELLOWD9R9PC4ELLOWR11ELLOWR12ELLOWR13J100ELLOWELLOWD14LED-YELLOWPA6PA7PB0PB1PB2PB3PB4PC5PC6PC7100-R3C11nFX1CRYSTALC21nFR1710kU1XTAL1P0.0/AD0P0.1/AD1P0.

18、2/AD2XTAL2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6RSTP0.7/AD7P2.0/A7P2.1/A9P2.2/A10PSENP2.3/A11ALEP2.4/A12EAP2.5/A13P2.6/A14P2.7/A15P1.0P3.0/RXDP1.1P3.1/TXDP1.2P3.2/INTLP1.3P3.3/INTP1.4P3.4/T0P1.5P3.5/T1P1.6P3.6/WRP1.7P3.7/RD"1918AT89C51PA0PA1PA2PA3PA4PA5PCCPC1D16ELLOWCEZZlR1"ELLOWR7ELLOW1 100 1R8

19、1 100 1R14LED-YELLOW图四仿真图eLLOWR2100R3ELLOW'ELLOWD2D3D4'ELLOWU2D5R48255AD0D1D2D3D4D5D6D7PA0PA1PA2PA3PA4PA5PA6PA7PB0PB1R7100"AA0A1PB2PB3RESETPB4PB5PB6PB7"h 39 A - 38 A'ELLOWR8100-18B1P I9B2-20B323 B624 B7I 251PC0PC1PC2PC3PC4PC5PC6PC7图五仿真图'ELLOWR10100 JB2D9R9'ELLOW100D10R1

20、1100B3YellowDED-YellowLED-YELLOWD13LED-YELLOWD14LED-YELLOWD16透一LED-YELLOWR124>100R13100R14100R15100R164>100MAIN0030HP2.2P2.2P2.2P2.0P2.1A,#80HR0,AR1,#0FEHR2,#7FHR3,#08P2.0P2.1A,R1R0,AAR1,AP2.0P2.1A,R2R0,AAR2,ADELAYR3,LOOPR1,#7FHR2,#0FEHR3,#08P2.0P2.1A,R1R0,AAR1,AP2.0P2.1A,R2R0,AADELAY六、实验程序ORG

21、0000HLJMPORGMAIN:CLRSETBCLRSETBSETBMOVMOVXSTART: MOVMOVMOVLOOP: CLRCLRMOVMOVXRLMOVSETBCLRMOVMOVXRRMOVCALLDJNZMOVMOVMOVLOOP1: CLRCLRMOVMOVXRRMOVSETBCLRMOVMOVXRLCALLDJNZR3,L00P1CLRP2.0CLRP2.1MOVA,#0MOVXR0,ASETBP2.0MOVXR0,ACALLDELAYMOVA,#0FFHCLRP2.0MOVXR0,ASETBP2.0MOVXR0,ACALLDELAYJMP STARTDELAY:MOVR6,#0FFHD1:MOVR7,#0FFHDJNZR7,$DJNZR6,D1RETEND七、总结在去实验室前,我经过多番努力,将电路板上的电路用仿真软件画出, 并且确保了每一条连线都包含了,芯片的每一个管脚都清楚的认识到是用 来干什么的,怎么连接的,仿真时各个点将会出现什么情况。尔后,我又 进行了初步的编程,将程序模块化,分为了主程序、显示子程序、延时子 程序等,但在程序的编程过程中,我不是很了解怎么实现这个过程,导致 未能完成该程序的编写。因此,我和组员在互

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论