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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

本文(2023年基于CPLD的单片机IO口扩展研究.doc)为本站会员(sc****y)主动上传,蜗牛文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知蜗牛文库(发送邮件至admin@wnwk.com或直接QQ联系客服),我们立即给予删除!

2023年基于CPLD的单片机IO口扩展研究.doc

1、基于基于 CPLDCPLD 的单片机的单片机 I/OI/O 口扩展研究口扩展研究 向兵 赵红军 摘要:单片机的应用在日常生活中已逐渐普及,大至家用电器,小至儿童玩具。在高等教育中,尤其是电子信息专业方面,单片机知识也是必不可少的一门课程。在使用单片机的同时,不但要求对理论知识的掌握,也需要在实际应用中得心应手,游刃有余。最基本的莫过于单片机的端口操作,其中 I/O 口的电平控制给我们日常生活带来了极大方便。在使用的过程中,低端单片机由于 I/O口数量不足导致部分功能无法实现,我们常使用数字集成芯片进行扩展,如74LS 系列移位寄存器,但是这种集成芯片也会由于引脚数量限制而无法确保单片机端口的充

2、分扩展。所以,在此我们采用复杂可编程逻辑器件 CPLD(Complex Programmable Logic Device)进行扩展研究,选取 EPM1270T144 结合 AT89C51 芯片进行设计,可根据实际需求扩展对应数量的端口。关键词:单片机;I/0 口;扩展;CPLD 一、AT89C51 端口使用 在使用单片机进行电路开发时,我们肯定会用到其中 32 个输入输出引脚,在程序中对其电平进行控制便能实现外围电路的相应功能。例如,控制 8*8LED 点阵屏时,我们将其中 16 个引脚分别接至点阵的行和列,便可让点阵屏显示相应内容。控制 16*16 点阵时,将单片机所有 IO 口分为两组,

3、即 2*16,便可实现控制。但是如果点阵屏太大,如 32*32 点阵,则徐 64 个 IO 口,这样,只靠一片AT89C51 单片机是无法直接实现功能控制,所以,我们选择复杂可编程逻辑器件 EPM1270 进行端口扩展。二、EPM1270T144 EPM1270 是 Altera 公司旗下 MAX系列产品,内部包含 1270 个逻辑单元,外部144 个引脚,根据使用情况来讲,排除下载端口及时钟引脚,此芯片可用作普通 I/O 口的数量高达 115(24 个电源接口+4 个下载接口+1 个时钟引脚)。EPM1270 采用 JTAG 编程方式,对应引脚编号为 33-36。因 CPLD 无内部时钟,需

4、要外部晶振提供脉冲信号作为其处理节拍标准,在选择时钟引脚时,可使用引脚编号为 18,20,89,91 任一引脚作为时钟信号输入端,在此我们使用有源晶振频率为 11.0592MHz 作为时钟基准。三、译码扩展 EPM120 为复杂可编程逻辑器件,其通用 I/O 口均可设置为双向或单向端口。在此,以 2-4 译码为例,即使用单片机两个 I/O 口扩展为 4 路 I/O 口。我们使用AT89C51D 的 P1.0,P1.1 引脚作为待扩展引脚,将其连接至 EPM1270 编号 21,22 引脚,通过编号 130-133 引脚输出扩展信号。此译码原理与二进制译码原理相同,也可进行 3-8 译码或 4-

5、16 译码扩展。本文扩展输出的 4 个 I/O 口连接 4路 LED 进行控制。四、软件设计 我们通过 AT89C51 两路引脚控制 4 路 LED 工作状态,按照 2-4 译码原理,两路输入可形成 4 种状态,分别对应 4 路输出引脚的电平,并在某一时刻单独点亮单个 LED,若进行动态扫描,则可使显示效果类似于静态多路显示。单片机P1.0,P1.1 四种工作状态 00,01,10,11 对应扩展输出工作状态分别为 0001,0010,0100,1000。在此,我们以第三种情况为例,将单片机 P1.1-1.0 引脚电平设置为 10,则通过 P1=0X02 即可实现,此后译码工作由 EPM127

6、0 完成。由于P1.1-1.0 引脚信号作为 EPM1270 输入,则需将 EPM1270 的 20,21 引脚设为输入端口,其设置代码如下:moduleblock1(P10,P11,LED0,LED1,LED2,LED3);input P10,P11;/定义 21,22 为输入引脚 output LED0,LED1,LED2,LED3;/定义 130-133 为输出引脚 reg LED0,LED1,LED2,LED3;/将输出引脚设置为寄存器类型变量 由于 EPM1270 输出信号是由 21,22 引脚的输入信号决定,所以逻辑上属于组合逻辑,只要 21,22 引脚电平产生变化,则 130-1

7、33 引脚电平会随之变化,因此,EPM1270 程序设计如下:always (P10 or P11)begin if(p11,p10=2b00)begin LED3,LED2,LED1,LED0=4b0001;End else if(p11,p10=2b01)begin LED3,LED2,LED1,LED0=4b0010;End else if(p11,p10=2b10)begin LED3,LED2,LED1,LED0=4b0100;end else if(p11,p10=2b11)begin LED3,LED2,LED1,LED0 pin,打开 Pin Planner 进行引脚分配,将

8、P10,P11 引脚分别配置到 EPM1270 的第 21,22 引脚即,将 LED0,LED1,LED2,LED3 分別分配至 EPM1270 的 130-133 引脚即可。五、小结 本文通过复杂可编程逻辑器件 EPM1270 对单片机 I/O 口进行扩展,其优越的可编程性能可充分满足单片机应用中的端口需求,译码原理清晰,程序设计简单方便。但是对于追求低成本的电路系统而言,EPM1270 价格偏高,焊接技术要求过硬,对于普通开发者来讲,在需求度不是很高的情况下仍建议采用数字集成芯片进行设计。参考文献:1沈莉丽等.FPGA/CPLD 设计与实践教程M.中国电力出版社.2017.02 2王静霞.单片机基础与应用M.高等教育出版社.2016.3 3王金明.数字系统设计与 verilog HDLM.电子工业出版社.2019.01 4赵勇等.单片机原理与接口技术M.电子科技大学出版社.2016.12 5刘春龙等.CPLD 应用技术实用教程M.机械工业出版社.2012.06 作者简介:向兵(1990-),男,汉,四川南充人,助教,硕士研究生,从事单片机原理与应用、电子产品分析与制作等课程研究及项目开发。赵红军(1980-),男,汉,四川南充人,副教授,在读博士,从事电力系统设计与研究。

copyright@ 2008-2023 wnwk.com网站版权所有

经营许可证编号:浙ICP备2024059924号-2