扩展8个输出端口设计(2)

更新时间:2023-09-17 17:16:01 阅读量: 幼儿教育 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

课 程 设 计 任 务

设计题目 学生姓名 设计要求: 1.单片机串行口工作于方式0,使用移位寄存器芯片74LS164扩展出8个输出口,接八只LED输出显示。具有电源开关及指示灯,有复位按键。 2.将串行口设置为工作方式0,接74LS164,扩展成8个输出端口,接8只LED。 3.使8个LED每4个为一组,亮灯从中间开始向左移动一次,再从中间开始向右移动一次,接着从最右端向中间移动一次,再从最左端向中间移动一次,然后闪烁两次,不断循环。 扩展8个输出端口设计 学生应完成的工作: 1.用Proteus完成扩展8个输出端口的原理图设计。 2.在Keil上用汇编语言完成扩展8个输出端口的实现程序。 3.将Proteus和Keil级联,进行仿真,修改硬件电路和程序,直至实现所要求的功能。 4.根据原理图完成实物焊接,将程序烧进单片机之后进行调试,直到达到设计要求。 5.完成课程设计说明书。 6.该学生主要做的工作是实物的焊接与调试。 参考文献阅读: [1] 余永权.ATMEL89 系列单片机应用技术[M].北京航空航天大学出版社,2002. [2] AT89C52 Datasheet,ATMEL,2004. [3] 于永,戴佳,常江.51单片机实例精讲[M].北京:电子工业出版社,2006. [4] 朱宇光.单片机应用新技术教程[M].西安:电子工业出版社,2004. [5] 张毅刚,彭喜元,董继成.单片机原理及应用[M].高等教育出版社,2003. [6] 童诗白,华成英.模拟电子技术基础[M].高等教育出版社,2006. 工作计划:6号——7号完成原理图设计; 8号——9号完成程序设计; 10号——11号电路仿真和调试; 13号——16号电路板的焊接和调试; 17号完成课程设计说明书。 任务下达日期:2013 年5月 6 日 任务完成日期:2013 年5月 17 日 指导教师(签名): 学生(签名):

扩展8个输出端口设计

摘 要:本设计利用AT89C52的单片机以及移位寄存器芯片74LS164实现扩展单片机

8个输出端口的功能。该设计包括电源模块,扩展模块,振荡模块,复位模块和显示模块。电源电路利用桥堆2W10接变压器将交流电转化为直流电,经稳压集成电路7805稳压以及电容滤波后得到电压为+5V的直流电源,实现对芯片和电路的供电功能;而晶振和电容组成的振荡电路,对AT89S52提供工作频率;由电阻和按键组成一个按键电平复位电路实现对系统的复位;把编写的程序下载到单片机内实现对串行口扩展8个并行输出口的控制,显示模块使用的是74LS164移位寄存器实现对LED的低电平驱动控制显示,每个输出实现口接一只LED输出显示,实现LED能够按照设计的规律闪亮与熄灭。

关键词:扩展输出口;AT89C52;移位寄存器芯片74LS164;桥堆2W10

目 录

1.设计背景………………………………………………………………1 2.设计方案………………………………………………………………1 2.1原理图设计方案……………………………………………………1 2.2程序设计方案………………………………………………………3 3.方案实施………………………………………………………………5 3.1原理图设计方案的实施……………………………………………5 3.2程序设计方案的实施……………………………………………11 4.结果与结论……………………………………………………………12 4.1设计的结果………………………………………………………12 4.2设计的结论和心得体会…………………………………………12 5.收获与致谢……………………………………………………………13 6.参考文献………………………………………………………………13 7.附录…………………………………………………………………14 7.1附录一 元器件清单………………………………………………14 7.2附录二 电路仿真图………………………………………………15 7.3附录三 程序及其注释…………………………………………16 7.4附录四 实物图……………………………………………………18

1. 设计背景

随着电子技术的发展,越来越多的电子产品都趋向于智能化,集成化,使得单片机的应用越来来越广泛,而扩展并行口只是为了单片机从基础到更高层侧次的应用。为了更好的了解和开发单片机的功能我们应该时刻关注单片机的的发展现状和未来的发展趋势,把理论与实际结合起来充分发挥个人的创新思维,更好的利用单片机。

MCS-51系列单片机是单片机的基础,只有充分掌握了MCS-51的功能才能更有效率的去学习其他单片机。MCS-51系列单片机有4个并行口(P0,P1,P2,P3口),但对一个稍微复杂的应用系统来说,四个并行口是远不能满足实际生产的需要的,这就迫使我们不得不扩展并行口以满足实际的需要。在RXD和TXD端口没被使用的情况下,可以利用RXD和TXD端口和移位寄存器74LS164将4个八位并行口扩展为多组八位的并行输出口,这样就可以用本来闲置不用的端口进行并行口的扩展,能充分利用单片机有限的I/O资源,扩展了并行口的数量。

2.设计方案

2.1原理图设计方案

(1)方案比较与选择

AT89C52单片机有4个并行口,当内部并行口不够用时可以外扩并行口芯片。而实现扩展端口的设计方案与很多种,下面简要介绍两种方案。 1.方案一

由AT89C52的串行口RXD输出信息由74LS164的管脚1,2,由TXD输出的脉冲信号与74LS164的CLOCK管脚相连控制74LS164的输出锁存与变换,将转化成并行数据输出到LED上显示。

首先根据要实现的LED灯的亮灭不同规律,编写八位二进制数,绘出数表,写入单片机。单片机通过查表分别传出各个八位二进制数据,实现LED灯的亮闪功能。然后要实现数表中数据的依次输出,每次查询数表中一个数据后,数据指针地址加一指向下一数据,便下一次查表读取数据,延迟一秒后,读取下一数据,直至数表中数据读取完毕。最后设计循环体,实现数表的循环读取输出。 2.方案二

1

在LED灯闪灭控制的数据输出时,采用按照其要求结果依次编写输出程序。不过在编写程序时,不免产生了多次重复的写入数据到SBUF、调用、延时等程序,占用了大量的存储空间,如此的反复书写,显得冗长单调硬件电路连好后,要想使8255工作还需要对8255进行初始化,显然编程比较麻烦,但是8255扩展的并行输出口个数可由工作方式选择,这是其优点。

74LS164为非可编程并行口输出芯片,不需要进行初始化,软件编程比较简单,但是以增加电路复杂度为代价的因此选择方案一。 (2)系统框图

根据课程设计要求,作为控制模块的AT89C52单片机算术运算功能强大,软件编程灵活,自由度大,可用程序实现各种算法和逻辑控制。而单片机要工作需要的是最小系统,而最小系统由晶振电路部分、复位电路部分和电源模块组成,由于要扩展八位并行输出口,作为扩展成功的标志输出显示部分是由8个LED来实现的,特能够直观的看出所设计的电路是否符合要求,所以是必不可少的。因此可得该电路系统框图如图2.1

所示。

电源

模块 复位电路 晶振 电路

图2.1 系统框图

主 输 控 出 扩 模 显 展 块 示 部 (AT 部 分 89C5分 2)

(3)根据设计要求,依据系统框图用Proteus画原理图

Proteus软件具有其它EDA工具软件(例:multisim)的功能。这些功能是: 1.原理布图

2.PCB自动或人工布线 3.SPICE电路仿真 4.互动的电路仿真

2

本文来源:https://www.bwwdw.com/article/98wh.html

Top