采用51单片机和CPLD构建复杂电路系统的设计思想

发布者:JoyfulExplorer最新更新时间:2017-12-26 来源: eefocus关键字:51单片机  CPLD  电路系统 手机看文章 扫描二维码
随时随地手机看文章

  一、引言

  单片机市场可以用巨无霸来形容,其中51 单片机使用者就更多了,针对51 单片机无需更多的介绍,这里必须强调一点,只要你精通了51 单片机,以后在实际工作中选用其它单片机也很容易了,这就是初学者学习51 单片机的价值。选择51 单片机学习入门容易,倒不是说51 系列单片机比别的型号简单,其实在8 位单片机家族中,51 系列单片机算是复杂的,但51 单片机在中国推广最彻底,教程也是最丰富,基本不用看英文资料就能学好,所以特别适合初学者学习用。

 

  下面说说CPLD,从近来跟学生和爱好者交往中发现,初学者都很“讨厌”它,问我为什么要把单片机和CPLD 放一块儿,那样不是增加了学习的难度吗?其实深入学习单片机后,你就会发现,单独一片单片机芯片,实在是不够用,稍微复杂的系统都会缺少接口资源,IO 口不够用。我们学单片机不能仅仅局限于LED(发光二极管,数码管等)驱动,输入还需要键盘、ADC,输出需要LCD、DAC 等,当把这些对象同时放在一个系统当中时,就需要用到很多其它分离的接口IC(芯片),各种逻辑IC。

  学完单片机后大家都会知道这些芯片:如74373,7432,74138……随着数字电子技术的发展,一种新的器件正在被广泛应用,那就是CPLD(ComplexProgrammable Logic Device) 复杂可编程逻辑器件,通俗的说就是可以把以上那些分离器件都放进去的一种可以二次开发的IC.关于CPLD 的详细介绍大家可以自己在网上浏览,很多很多。

  基于此,本刊用这篇文章深入浅出的介绍一种采用51 单片机和CPLD 构建复杂电路系统的设计思想。

  二、单片机系统中几个典型电路介绍

  首先从熟悉的最小系统电路电路说起,如图1所示,图中用网络标号实现电路连接,这样绘制的电路图清晰整洁,U1 是经典的51 单片机 IC,复位电路和晶振电路是传统电路,这里C5 电容是靠近单片机VCC 引脚的,用来对电源滤波,图中其它芯片VCC 附近都有相同功能的滤波电容。U2 是经典的低八位地址锁存电路,这里的74373 也可以用74573 代替,U3 是地址译码电路,74138 实现连续8 个地址(1### #### #### #000 ~ 1####### #### #111,# 是无关位,可以是0 也可以是1,取决于电路其它部分的需要)对象扩展。

  图1 MCU最小系统原理图

  图1 MCU最小系统原理图

  51 单片机给大家推荐STC 的89 或90 系列,其中90 系列已经有片内ADC 了,需要特别强调的是, 随着FLASH 技术的成熟,片内FLASH ROM从8K 到64K 任选,已经足够用了,所以现在很少有单片机系统外扩ROM 了,这样使得EA/VPP 和PSEN 引脚失去了原先的功能了,STC 的51 单片机已经将这两个引脚发展成P4 口了。

  复杂的系统必然有很多输入输出接口,如图2所示,U5 是数据锁存器74273,扩展一个8bits 数据输出端口,U6 是三态数据缓冲器74573,扩展一个8bits 数据输入端口,分别用7432 实现读写时序接口匹配。图2 MCU端口口扩展原理图

  图2 MCU端口口扩展原理图

  经典LCD1602 接口如图3 所示,这里7408、7402 逻辑门用来实现6800 时序(读写信号有独立接口的是8080 时序,这里只有使能信号E,需要外逻辑电路将读写信号相与合并使用)。

  图3 LCD1602接口电路原理图

  图3 LCD1602接口电路原理图

  以上给出的系统还算不上是复杂系统,总共采用了8 块IC,一个实现特定功能的系统往往更复杂,需要采用的IC 会更多。能不能把这些分离的器件用CPLD 来实现呢?答案是肯定的。

  三、单片机与CPLD接口设计

  以上经典电路中,系统扩展使用了单片机总线模式,各个对象采用的三总线连接,根据这种电路结构,这里给出一种单片机同CPLD 的总线接口模式,如图4 所示。

  图4 单片机与CPLD总线接口示意图

  图4 单片机与CPLD总线接口示意图

  这里选择A l t e r a 公司早期的EPM7064SLC44-10 为例,这是很老的一款CPLD器件,是5V 供电。其实选择什么CPLD 型号并不是关键,关键是学习用CPLD 代替分立器件的思想和方法。数据总线P0 口同CPLD 一般IO 口相连,完成数据和低8 位地址传送;控制总线包括单片机读写控制信号Rd(P3.7) 和Wr(P3.6),以及地址锁存信号ALE(Address LOCk Enable)和高位地址线A15(P2.7) 通过CPLD 的全局信号引脚输入,包括全局时钟输入:INPUT/GCLK1, 全局清零输入INPUT/GCLRn, 全局使能输入INPUT/OE1,INPUT/OE2, 这几个信号有专用连线与CPLD 中每个宏单元相连,保证信号到每个宏单元的延时相同并且延时最短。实际电路原理图如图5所示。

  图5 MCU与CPLD接口电路原理图

  图5 MCU与CPLD接口电路原理图

  这样一块CPLD 器件就代替以上除单片机外的7 块芯片了,在电路板上将节约大片的PCB 面积,好处还远不止这些,因为CPLD 是二次开发的,其内部电路可以根据需要再次设计,反复修改,极大的增加了电路设计的灵活性。

  读者看到这里,肯定对自己动手设计CPLD 电路充满了期待,下面介绍如何借助工具软件开发CPLD 内部电路。

  四、CPLD开发介绍

  一般来说,CPLD 生产商都有配套的开发工具, 这里介绍ALTERA 公司的一款易学易用的CPLD 开发软件MaxPlusII,虽然该公司最新版的软件是QUARTusII,但针对某些具体的器件,选择MaxPlusII 还是很方便的。该软件入门教程请到百度搜索《MaxplusII 设计CPLD 入门》,很多手把手的资料。

  最容易的电路设计方法不外乎是直接绘制电路原理图。采用原理图输入,初学者甚至不需要额外学习就可以从事CPLD 设计。我们只需要在软件平台上从集成器件库调出对应的器件,绘制相同的电路原理图即可,实现以上功能电路原理图绘制完成后如图6 所示。

  图6 原理图输入设计CPLD

  图6 原理图输入设计CPLD

  该原理图编译成功后,我们还需要根据实际电路连接图分配绑定引脚,引脚绑定如图7 所示,再编译就可以得到可供下载的文件*.pof 了,最后只需要将下载电缆连接到电路板上,仍然通过该软件即可完成下载。

  正因为CPLD 的IO 脚是可以随意分配的,通常我们会结合实际的PCB 板设计布线的便利来调整引脚分配,引脚分配更改后,只需要重新分配引脚再编译下载即可。

  图7 CPLD引脚绑定

  图7 CPLD引脚绑定

  除了原理图输入外,复杂的CPLD 器件开发,一般用硬件描述语言设计,常用的硬件描述语言有VHDL,VerilogHDL,这些硬件描述语言的掌握是需要系统学习的,基于硬件描述语言的片上系统设计,FPGA 开发目前已经成为高薪职业,社会需求巨大。用硬件描述语言开发CPLD 的方法与前面的原理图输入法类似,也需要编译纠错,时序仿真,引脚绑定,最后编译下载即可。

  给CPLD 下载完程序,这块芯片就是你所设计的逻辑时序电路了,通常比分离元器件功耗更低,性能更优。

  真正是基于上述思想, 笔者将51 单片机同CPLD 相结合,开发了一款适合初学者使用的学习板--Mini51 板。

  五、Mini51板概述

  Mini51 板体积小巧(11×8 厘米),适合用户随身携带,只要PC 机加一根USB 线就可以做硬件实验了,特别适合大专院校学生和爱好者自主学习用。实物图如图8 所示。

  图8 Mini51板实物图

  图8 Mini51板实物图

  Mini51 板系统结构如图9 所示,该板采用单片机+CPLD 结构,单片机为主,CPLD 为辅。与单片机相连的模块有:P1 口接发光二极管、蜂鸣器、继电器、AD/DA,P4 口(STC 单片机PLCC-44封装特有)接实时时钟DS1302、红外接收器,P3口接232 电平转换电路和4 个按键,单片机P0 口和P2 口以及P3.6、P3.7 作为总线使用,CPLD 直接驱动4 位数码管,并给LCD 提供使能信号,单片机和CPLD 引脚分别有扩展接口,板上集成5V稳压电源,可以外接DC9V 电源,也可以从计算机USB 口直接取5V 电源。

  图9 Mini51板结构图

  图9 Mini51板结构图

  单片机首选STC89C5X, 该系列单片机内部集成MAX810/STC810 专用复位电路, 内置看门狗, 超强抗干扰, 轻松过2KV/4KV 快速脉冲干扰(EFT), 加密性强,STC89C52RC ~STC89C58RD+ 系列与Intel8051 管脚兼容,宽电压,5.5V ~ 3.4V 给复位信号后能正常工作,PQFP-44,PLCC-44 封装有P4 口。

  STC89C51RC 有3 个定时器/ 计数器,1280 字节大容量内部数据 RAM ,特别是该系列单片机支持ISP 编程,开发无需高价的编程器,可实现远程升级,在ISP 下载编程时可设置6 或12 时钟/ 机器周期模式,在6 时钟模式,比普通51 速度快一倍。

  CPLD 有两种型号可选,ALTERA 的EPM7064和ATMEL 的ATF1504。


关键字:51单片机  CPLD  电路系统 引用地址:采用51单片机和CPLD构建复杂电路系统的设计思想

上一篇:X25165在8051单片机系统中的应用
下一篇:51单片机延时程序分析

推荐阅读最新更新时间:2024-03-16 15:50

采用ARM和CPLD结构的检测系统可重构设计方法
引言 检测系统的可重构设计是检测技术的发展方向。可重构设计是指利用可重用的软硬件资源,根据不同的应用需求,灵活地改变自身体系结构的设计方法。对于检测系统而言,可重构可以分为软件可重构和硬件可重构。采用硬件可重构技术设计的检测系统具有硬件普适性,通过更换各个硬件模块或配置不同的软件代码,即可实现不同功能的检测,从而减少硬件和软件开发上的投入、缩短产品开发周期。 本文提出了一种基于ARM嵌入式微处理器和复杂可编程逻辑器件( CPLD) 的检测系统硬件可重构设计方法。这种结构检测系统既具有ARM微控制器体积小、集成度高、运算速度快、存储器容量大、功耗低等特点; 又具有CPLD强大的高速逻辑处理能力和方便灵活的动态可重构性,将两者结合
[单片机]
采用ARM和<font color='red'>CPLD</font>结构的检测系统可重构设计方法
什么是单片机_51单片机学前预备知识
  一、单片机的概念:   二、单片机的用途:   工业自动化:数据采集,测控技术;   智能仪器仪表:数字示波器、数字信号源、数字万用表、感应电流表等;   消费类电子产品:洗衣机、电冰箱、空调机、手机等;   凡是与控制或简单计算有关的电子设备都可以用单片机来实现,再根据具体实际情况选择不同性能的单片机,如:atmel,stc,pic,avr,凌阳,80C51,arm等。   三、怎么学单片机:   实践第一;补充必要的理论知识,即缺什么补什么;做工程项目积累经验。(可在网络上搜索些题目,也可自己有什么想法大胆的去试验。)。   四、为什么选择51单片机作为单片机学习的入门:   学51单片机成本低,而且51单片机技术最成
[单片机]
51单片机内部EEPROM的读写解析及例程
STC89C51、52内部都自带有2K字节的EEPROM,54、55和58都自带有16K字节的EEPROM,STC单片机是利用IAP技术实现的EEPROM,内部Flash擦写次数可达100,000 次以上,先来介绍下ISP与IAP的区别和特点。 ISP:In System Programable 是指在系统编程,通俗的讲,就是片子已经焊板子上,不用取下,就可以简单而方便地对其进行编程。比如我们通过电脑给STC单片机下载程序,或给AT89S51单片机下载程序,这就是利用了ISP技术。 IAP:In Application Programable 是指在应用编程,就是片子提供一系列的机制(硬件/软件上的)当片子在运行程序的时候可以
[单片机]
基于51单片机的TFT液晶显示设计
0 引言   51单片机作为一种常见的通用单片机, 虽然其内部资源, 处理速度等都无法与新型高速单片机相提并论, 但其低廉的价格, 极低的入门难度以及适用于简单场合应用等特点, 依然是开发者的常用选择之一。   用51单片机驱动液晶模块通常都使用1602和12864等极为简单的液晶模块, 这里介绍用51单片机驱动QVGA分辨率的TFT液晶模块, 以实现彩色和更为复杂的内容显示的方法。同时, 本文还将使用DS1302芯片和DS18B20芯片来实现在液晶屏上显示实时时钟和温度。    1 硬件设计   本系统硬件电路的设计主要包括单片机最小系统电路, TFT液晶显示电路, 时钟电路, 设置电路以及温度采集电路。其系统工作原理框
[单片机]
基于<font color='red'>51单片机</font>的TFT液晶显示设计
基于CPLD的单片机PCI接口设计
    摘要: 详细阐述一种利用CPLD实现的8位单片机与PCI设备间的通信接口方案,给出用ABEL HDL编写的主要源程序。该方案在实践中检验通过。     关键词: 单片机 CPLD PCI 8位单片机在嵌入式系统中应用广泛,然而让它直接与PCI总线设备打交道却有其固有缺陷。8位单片机只有16位地址线,8位数据端口,而PCI总线2.0规范中,除了有32位地址数据复用AD 外,还有FRAME、IRDY、TRDY等重要的信号线。让单片机有限的I/O端口来直接控制如此众多的信号线是不可能的。一种可行的方案就是利用CPLD作为沟通单片机与PCI设备间的桥梁,充分利用CPLD中I/O资源丰富,用户可自定制
[应用]
基于MCU CPLD变压器测试系统的设计与实现
1引言 BX型信号变压器,BG型轨道变压器和ZG型硅整流器作为铁路信号电器设备的前端,其工作的稳定性、准确性直接关系到行车安全,变压器的可靠检测是严抓质量的第一步,对于生产厂家而言,测试流程不允许抽样,且测试结果应留档。本套测试系统用来测试铁路变压器的各种要求参数,包括原边空载电流、次边空载电压、次边带载电压电流,变压器绝缘电阻、原边电压频率,测量结果精度要求3%,测试系统分为上下位机两大部分,下位机运用智能仪表的设计思想,在MCU和CPLD控制基础上对各种要求测试参数分别进行自动测试,上位机上采用VC++6.0编写软件实现串口通讯,归类统计并判断是否合格,存储打印结果,系统满足操作简单可靠,提高效率,减少误差。 2 功能介
[应用]
51单片机扩展数据存储器RAM proteus仿真
8051单片机芯片扩展数据存储器完整案例下面是proteus仿真原理图: 单片机源程序: #include reg51.h #include absacc.h sbit K1=P3^4; sbit K2 =P3^5; void Ex_Int0(void); unsigned int n; void main() { unsigned int i; n = 0; P1 = 0xff; EA = 1; IT0 = 1; EX0 = 1; for(i=0;i 200
[单片机]
<font color='red'>51单片机</font>扩展数据存储器RAM proteus仿真
采用二维模糊控制器和C8051单片机实现室内自然采光系统的设计
1、 引言 从远古的篝火、油灯到蜡烛、白炽灯,再到今天千家万户的荧光灯,人类已经基本适应了人工光源的室内照明环境。但是由于千万年来的环境影响,自然光仍然是人类最习惯、感觉最舒适的光源,自然采光一直受到建筑师和照明设计师的高度重视。当今社会建筑的节能环保需求更对自然采光照明提出了进一步的要求。《建筑采光设计标准》 中的国家技术经济政策指出: 建筑设计要充分利用天然光,创造良好的光环境。 对室内照明自然采光的研究具有重要的意义: (1) 资料表明,照明用电占整个商业建筑能耗的25 - 40% ,而自然采光在特定的情况下可以节省52% 的照明用电,大大节约了能源。 (2) 相关研究表明,人在自然光条件下工作,可以增加满意度和提高工作
[单片机]
采用二维模糊控制器和C80<font color='red'>51单片机</font>实现室内自然采光系统的设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved