当前位置:首页 > 嵌入式 > 嵌入式硬件

摘要:
  本文描述了用赛灵思公司的xc95216 系列cpld 芯片实现扩展单片机与计算机pc104 的接口并行通信的方法, 解决了在嵌入式操作系统中单片机与主机总线设备打交道资源不足的固有缺陷, 把以太网卡的功能集成在一片xc95216 的 cpld 中, 简化了硬件, 通信实时性强; 并给出用vhdl 编写的主要源程序。该方案在实践中检验通过。

  引 言

  8位单片机在嵌入式系统中应用广泛, 然而让它直接与pci 总线设备打交道却有其固有缺陷。8 位单片机只有16 位地址线, 8 位数据端口, 而pci 总线2.0 规范中, 除了有32 位地址数据复用ad[3- 0]外, 还有 frame、irdy、trdy 等重要的信号线。让单片机有限的i/o 端口来直接控制如此众多的信号线是不可能的。一种可行的方案就是利用cpld 作为沟通单片机 与pci 设备间的桥梁, 充分利用cpld 中i/o 资源丰富、用户可自定制逻辑的优势, 来帮助单片机完成与 pci 设备间的通信任务。

1.2 cpld 设计规划

  出于对单片机和cpld 处理能力和系统成本的考虑, 下面的规划不支持pci 总线的线性突传输等需要连续几个数据周期的读写方式, 而仅支持一个址周期加一个数据周期的读写方式。对于大部分应用而言, 这种方式已经足够了。图1 是经过简化后的pci 总线读写操作时序。在cpld 内设有13 个8 位寄存器用来保存进行一次pci 总线读写时所需要的数据, 其中pci_address0- pci_address3 是读写时的地址数据; pcidatas0- pci_datas3 是要往pci 设备写的数据; pci_cbe[3- 0]保存地址周期时的总线命令; pci_cbe[7- 4] 保存数据周期时的字节使能命令; pci_data0- pci_data3 保存从pci 设备返回的数据; pci_request 是pci 总线读写操作状态寄存器, 用于向单片机返回一些信息。当单片机往pci_cbe 寄存器写入一个字节的时候, 会复位cpld 中的状态机, 触发cpld 进行pci 总线的读写操作; 单片机则通过查询pci_request 寄存器得知读写操作完成, 再从pci_data 寄存器读出pci 设备返回的数据。

2.2 单片机pci 读写c 语言程序设计

  在cpld 在帮助下, 单片机读写pci 设备就变得相当简单。首先, 将pci_cbe 等寄存器都声明为外部存储器变量, 并根据cpld 的设计指定地址。然后, 传递适当的参数给以下两个读写子函数, 即可完成对pci 设备配置空间、i/o 空间、存储器空间的读写操作。从 pci 设备的返回数据存放在全局变量savedata 中。实际上在写pci 设备时, 也可以从pci_data 中得到返回数据。这个数据必须等于往pci 设备写的数据。利用这一点可以进行差错检验和故障判断, 视具体应用而定。

3 结论
  用cpld 实现单片机与pci 总线接口的并行通信, 电路结构简单、体积小, 1 片cpld 芯片足够, 并且控制方便, 实时性强, 通信效率高。本设计方法已成功地应用于作者开发的各种数据采集系统中, 用作单片机与pc104 之间的并行数据通信, 效果非常理想。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

随着科技的飞速发展,电子产品在我们日常生活中扮演着越来越重要的角色。而在这些电子产品中,接口作为连接设备与外部设备的桥梁,其重要性不言而喻。其中,Type-C接口作为一种新型的接口标准,因其独特的优势,逐渐成为了众多电子...

关键字: 电子产品 Type-C 接口

该系列产品有助于嵌入式设计人员在更广泛的系统中轻松实现USB功能

关键字: 单片机 嵌入式设计 USB

单片机编程语言是程序员与微控制器进行交流的桥梁,它们构成了单片机系统的软件开发基石,决定着如何有效、高效地控制和管理单片机的各项资源。随着微控制器技术的不断发展,针对不同应用场景的需求,形成了丰富多样的编程语言体系。本文...

关键字: 单片机 微控制器

单片机,全称为“单片微型计算机”或“微控制器”(Microcontroller Unit,简称MCU),是一种高度集成化的电子器件,它是现代科技领域的关键组件,尤其在自动化控制、物联网、消费电子、汽车电子、工业控制等领域...

关键字: 单片机 MCU

STM32是由意法半导体公司(STMicroelectronics)推出的基于ARM Cortex-M内核的32位微控制器系列,以其高性能、低功耗、丰富的外设接口和强大的生态系统深受广大嵌入式开发者喜爱。本文将详细介绍S...

关键字: STM32 单片机

在当前的科技浪潮中,单片机作为嵌入式系统的重要组成部分,正以其强大的功能和广泛的应用领域受到越来越多行业的青睐。在众多单片机中,W79E2051以其卓越的性能和稳定的工作特性,成为市场上的明星产品。本文将深入探讨W79E...

关键字: 单片机 w79e2051单片机

单片机,又称为微控制器或微处理器,是现代电子设备中的核心部件之一。它集成了中央处理器、存储器、输入输出接口等电路,通过外部信号引脚与外部设备进行通信,实现对设备的控制和管理。本文将详细介绍单片机的外部信号引脚名称及其功能...

关键字: 单片机 微控制器 中央处理器

随着科技的飞速发展,单片机和嵌入式系统在现代电子设备中的应用越来越广泛。它们不仅提高了设备的智能化水平,还推动了各行各业的创新与发展。在单片机和嵌入式系统的开发中,编程语言的选择至关重要。本文将深入探讨单片机和嵌入式系统...

关键字: 单片机 嵌入式系统 电子设备

PLC(可编程逻辑控制器)和单片机是两种不同的控制设备,它们之间存在明显的区别:

关键字: 单片机 plc 控制器

Holtek隆重推出全新一代32-bit Arm® Cortex®-M0+ 5V CAN MCU - HT32F53231/HT32F53241/HT32F53242/HT32F53252。这一系列单片机带有来自Bosc...

关键字: MCU 工业自动化 单片机
关闭
关闭