位置:51电子网 » 技术资料 » 单 片 机

C51单片机并行口扩展设计及应用(LM741放大器放大信号输出)

发布时间:2008/5/27 0:00:00 访问次数:749

c51单片机是我们生活中最常用的系列,mcs-51系列单片机有4个并行口(p0,p1,p2,p3口),但对一个稍微复杂的应用系统来说,真正 可供用户使用的并行口,只有p1口可用,况且常常因扩展i2c和spi的器件需占用某些p1口,迫使用户不得不扩展并行口以满足实际的需要。习惯上,常用 的并行口接口芯片有8255、8155,这两种芯片功能比较齐全,可以使用在相对比较复杂的系统中,但如是对一般的系统而言,这些功能往往闲置不用。那么 就可以选用一些本来闲置不用的口线作为选通信号来进行并行口的扩展,这样就能充分利用单片机有限的i/o资源,在本设计中是将p1口扩展成一个或几个8位 并行口,在每一个八位口上接入8个发光二极管做为输出,二极管是做开关量来使用的,在这里设计了跑马灯和流水灯程序,做到对开关量的开断控制;配合开关量 的控制笔者设计了一个共阳led数码管,用来显示当前发光二极管发亮的序号,做到更加直观的双重控 制效果,然后再将p0口通过d/a转换器和一放大器输出一个模拟信号,其结果可以通过示波器看出。这样整个系统即有了数字信号输出和模拟信号输出,也有数 码管显示功能,实用性能大提高了。

2 基于89c51的系统硬件设计
2.1 并行口的扩展的电路设计
众所周知,c51系列的单片机都有四个i/o口(p0、p1、p2、p3),那么at89c51也不例外,但我们通常仅仅使用p1口作为并行口,而令其余 口(p2、p3)处于闲置状态,所以这次设计,我们就是使用闲置不用的p3口做为选能信号线来将p1口进行并行口扩展。
(1) 种方式的并行口扩展优点
连线简单;
不占用存储器空间;
(2) 编程也方便灵活。但也有很大的缺点
并行口扩展能力有限,(如使用74ls573(74ls373)且不进行驱动处理,则最多可扩展4个同样类型的并行输出端口,当然还需要与之对应的四个选通信号。)
如扩展较多,选通信号占用并行口位数太多,例如欲扩展8个并行输出端口,则需要8个选能信号,此时,仅选能信号就占用了一个8位并行口,这对在i/o端口 线有限的单片机系统中,如此浪费资源的现象是不能容忍的。在本次的设计中,采用芯片74hc573(带三态输出的八进制透明d型锁存器)对p1口进行了一 个8位并行口的扩展,选通信号选用p3口的p3.3引脚。原理图如图1所示:

图1 pi口扩展电路


2.2 拟信号输出的电路设计
模拟信号的输出需要用到d/a转换器,这里我使用最常用的8位的d/a转换器dac0832来转换数字电压信号。因dac0832是并行d/a转换集成电 路,其输出为电流型,在使用时,必须额外增加一个运算放大器,才能得到电压信号,在本次电路中使用了1个lm741放大器来放大信号输出,lm741是一 个普通的单操作的放大器,具有输入电压范围大,短路电压保护,高增益和不需频率补偿等优点。dac0832的片选端口与单片机的p2.2相连,xfer和 wr2接地,使之一直处于使能状态,即输入数据寄存器中的数字信号可直接转换为模拟信号。d/a转换电路的输出是一个周期的正弦波,通过外接示波器可以清 淅的看到。另外模拟信号的输出引在一个外接端子上,可以与其它系统相连接,做到通用性的效果。d/a转换原理图如图2所示:

图2 d/a转换


2.3 静态数码管显示的电路设计
数码管显示器是各种仪器设备所不可缺少的重要组成部分,是仪器设备与人对话的一种重要形式,它告诉人们机器的运行状态、数据处理结果、提示操作人员下一步 要进行的操作等。按照显示方法的不同,可分为静态显示和动态显示两种,这里我们所设计的电路显示是属于静态显示那种,是两位静态数码管显示,其主要的功能 是显示当前发光led的序号,比如如果当前是l1灯在亮的话,数码管将显示11,是l2灯亮,数码管显示22字样等。电路的设计使用2个8位的移位寄存器 (74hc164),和两个八段的led数码管(共阳的)加上2个8×330ω的排阻构成。静态数码管显示的优点在于,编写程序相对比较简单,一旦将欲显 示的数据发送出去,只要当前显示的数据没有变化,就无须理睬它。不足之处在于,如果显示的位数太多,硬件的开销和电源的功耗问题将会很严重(比如这里,只 需显示两位,就需要用到两块74hc164和2个排阻)。电路原理图如图3所示:

c51单片机是我们生活中最常用的系列,mcs-51系列单片机有4个并行口(p0,p1,p2,p3口),但对一个稍微复杂的应用系统来说,真正 可供用户使用的并行口,只有p1口可用,况且常常因扩展i2c和spi的器件需占用某些p1口,迫使用户不得不扩展并行口以满足实际的需要。习惯上,常用 的并行口接口芯片有8255、8155,这两种芯片功能比较齐全,可以使用在相对比较复杂的系统中,但如是对一般的系统而言,这些功能往往闲置不用。那么 就可以选用一些本来闲置不用的口线作为选通信号来进行并行口的扩展,这样就能充分利用单片机有限的i/o资源,在本设计中是将p1口扩展成一个或几个8位 并行口,在每一个八位口上接入8个发光二极管做为输出,二极管是做开关量来使用的,在这里设计了跑马灯和流水灯程序,做到对开关量的开断控制;配合开关量 的控制笔者设计了一个共阳led数码管,用来显示当前发光二极管发亮的序号,做到更加直观的双重控 制效果,然后再将p0口通过d/a转换器和一放大器输出一个模拟信号,其结果可以通过示波器看出。这样整个系统即有了数字信号输出和模拟信号输出,也有数 码管显示功能,实用性能大提高了。

2 基于89c51的系统硬件设计
2.1 并行口的扩展的电路设计
众所周知,c51系列的单片机都有四个i/o口(p0、p1、p2、p3),那么at89c51也不例外,但我们通常仅仅使用p1口作为并行口,而令其余 口(p2、p3)处于闲置状态,所以这次设计,我们就是使用闲置不用的p3口做为选能信号线来将p1口进行并行口扩展。
(1) 种方式的并行口扩展优点
连线简单;
不占用存储器空间;
(2) 编程也方便灵活。但也有很大的缺点
并行口扩展能力有限,(如使用74ls573(74ls373)且不进行驱动处理,则最多可扩展4个同样类型的并行输出端口,当然还需要与之对应的四个选通信号。)
如扩展较多,选通信号占用并行口位数太多,例如欲扩展8个并行输出端口,则需要8个选能信号,此时,仅选能信号就占用了一个8位并行口,这对在i/o端口 线有限的单片机系统中,如此浪费资源的现象是不能容忍的。在本次的设计中,采用芯片74hc573(带三态输出的八进制透明d型锁存器)对p1口进行了一 个8位并行口的扩展,选通信号选用p3口的p3.3引脚。原理图如图1所示:

图1 pi口扩展电路


2.2 拟信号输出的电路设计
模拟信号的输出需要用到d/a转换器,这里我使用最常用的8位的d/a转换器dac0832来转换数字电压信号。因dac0832是并行d/a转换集成电 路,其输出为电流型,在使用时,必须额外增加一个运算放大器,才能得到电压信号,在本次电路中使用了1个lm741放大器来放大信号输出,lm741是一 个普通的单操作的放大器,具有输入电压范围大,短路电压保护,高增益和不需频率补偿等优点。dac0832的片选端口与单片机的p2.2相连,xfer和 wr2接地,使之一直处于使能状态,即输入数据寄存器中的数字信号可直接转换为模拟信号。d/a转换电路的输出是一个周期的正弦波,通过外接示波器可以清 淅的看到。另外模拟信号的输出引在一个外接端子上,可以与其它系统相连接,做到通用性的效果。d/a转换原理图如图2所示:

图2 d/a转换


2.3 静态数码管显示的电路设计
数码管显示器是各种仪器设备所不可缺少的重要组成部分,是仪器设备与人对话的一种重要形式,它告诉人们机器的运行状态、数据处理结果、提示操作人员下一步 要进行的操作等。按照显示方法的不同,可分为静态显示和动态显示两种,这里我们所设计的电路显示是属于静态显示那种,是两位静态数码管显示,其主要的功能 是显示当前发光led的序号,比如如果当前是l1灯在亮的话,数码管将显示11,是l2灯亮,数码管显示22字样等。电路的设计使用2个8位的移位寄存器 (74hc164),和两个八段的led数码管(共阳的)加上2个8×330ω的排阻构成。静态数码管显示的优点在于,编写程序相对比较简单,一旦将欲显 示的数据发送出去,只要当前显示的数据没有变化,就无须理睬它。不足之处在于,如果显示的位数太多,硬件的开销和电源的功耗问题将会很严重(比如这里,只 需显示两位,就需要用到两块74hc164和2个排阻)。电路原理图如图3所示:

-->
相关IC型号
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!