用CPLD实现DSP2407A与S3C4480的通信

发布者:NexusDream最新更新时间:2007-08-28 来源: 单片机及嵌入式系统应用关键字:实时  触摸  响应  接收 手机看文章 扫描二维码
随时随地手机看文章
在现代汽车电子中,一般有多个微控制器共同协调工作。DSP控制器采用哈佛结构,运算速度快,所以在汽车电子中广泛采用DSP芯片来实现汽车动力系统的控制。ARM是一种32位微控制器,有丰富的外扩接口,因此在汽车电子中一般用ARM来实现大容最的数据存储和人机交互或GPS全球定位系统,故在DSP和ARM之间需要进行数据交换。

CPLD(Complex Programmable Logic Device)是一种复杂的用户可编程逻辑器件,由于采用硬件可编程技术,从而使没计硬件电路也像设计软件一样方便。DSP2407A是T1公司设计的一款专为满足大范围的数字电动机控制应用的微控制器。S3C4480是三星公司专为手持设备设计的高性价比的微控制器。本设计以Xilinx公司的XC95108为例,通过在CPLD中开辟2块独立的SRAM区域(各1字节)来实现DSP2407A与S3C4480的并行通信。采用这种通信方式,数据传输准确、高速,基本可以满足DSP2407A与S3C4480总线接口实时通信的要求,从而将整车动力控制和人机交互有机地统一起来。

1 整体系统结构设计

DSP2407A负责采集汽车所有的数据,再将数据通过CPLD发给S3C44B0进行数据存储和人机交互。有时S3C4480要接收触摸屏命令,命令也通过CPLD发给DSP2407A控制器,从而控制整台汽车的动作。对DSP2407A,要及时响应由S3C44B0发过来的命令;而对于S3C4480,要随时接收DSP2407A送来的数据,这样,双方通信的实时性就要很强。因此在系统设计中,DSP2407A用中断方式接收数据,S3C44BO用查询方式接收数据。

在DSP2407A中,[DO~D7]是数据线,[A15~A12]是地址线,IS是I/0空间选通引脚,当访问外部的存储器或I/O空间时为低电平。WE是写使能,RD是读使能。IOPC7足通用I/O引脚,用来判断DSP2407A是否可以往CPLD写数据。当IOPC7为低电平时,代表DSP2407A可以往CPLD中写数据;若为高电平,则表示CPLD中已有数据,这时DSP2407A不能往CPLD中写数据。XINT1是外部中断,用来通知DSP2407A准备读取CPLD中的数据。

在CPLD中,用l片XC95l08来实现。XC95108共有108个宏单元,有足够的空间来实现2个8位的SRAM区;主要用来实现DSP2407A和S3C44B0之间的数据交换,没置DSP2407A和S3C44B0读/写控制的状态位。在S3C44B0中’[D0~D7]是数据线,nGCSl是芯片选择信号,当存储器地址在相应段的地址区域时芯片被激活。nWE是写允许信号,nOE是读允许信号。IOPF0是通用I/O口,用来监视可否从CPLD中读取数据:当它为高电平时,代表CPLD中有数据,可以读取数据;当它为低电平时。表示CPLD中无数据可读取。IOPF1是通用I/O口,用来监视可否向CPLD中写数据:当它为高电平时,代表CPLD中无数据,可以向CPLD中写数据;当它为低电平时,代表CPLD中已有数据,S3C44B0不能向CPLD中写数据。系统结构如图1所示。

2 CPLD的设计

采用Xilinx ISE8.1为设计工具,用国际上通用的VHDL语言来编写源程序。

2.1 8位数据从DSP中传送到ARM中


当[A15~A12]是1100时,DSP2407A开始向CPLD中写数据,并置dspsign_write和armsign_read为1;表示CPLD中已经有数据了,通知S3C4480可以读取数据和DSP2407A暂时不能向CPLD中写数据;同时将数据写入锁存器sraml中。

当ARM发出读取数据信号,开始将数据从sraml中读出,并且置dspsign_write和armsign_read为0时,表示CPLD中没有数据了,DSP2407A可以向CPLD中重新写数据。



2.2 8位数据从83CA480中传送到DSP2407A中

当S3C4480向CPLD写数据时,将数据写入到锁存器sram2中,同时置dsp_int为0,通知DSP2407A产生一个外部中断,可以从CPLD中取数据;置armsign_write为0,表示CPLD中已有数据,S3C4480不能再向CPLD中写数据。

当[A15~12]是1101时,DSP2407A向CPLD中发出一个读取信号,数据从锁存器sram2传送给DSP2407A中,并且置dsp_int为1,armsign_write为l,表示数据已被DSP2407A读走,S3C4480可以继续向CPLD中写数据。


3 S3C4480和DSP2407A通信软件设计

在本程序中,DSP2407A采用中断方式接收数据,S3C4480采用查询端口方式接收数据。

(1)DSP2407A程序

(2)S3C44B0程序

关键字:实时  触摸  响应  接收 引用地址:用CPLD实现DSP2407A与S3C4480的通信

上一篇:基于CPLD的高速可程控数字延迟线系统的设计
下一篇:基于FPGA的NAND FLASH控制器

推荐阅读最新更新时间:2024-05-13 18:37

基于TMS320C64x实现LFM信号的实时脉冲压缩
0 引言 脉冲压缩技术因解决了雷达作用距离与分辨率之间的矛盾而成为现代雷达的一种重要体制,数字LFM(线性调频)信号脉冲压缩就是利用数字信号处理的方法来实现雷达信号的脉冲压缩,脉冲压缩器的设计就是匹配滤波器的设计,脉冲压缩过程是接收信号与发射波形的复共扼之间的相关函数,在时域实现时,等效于求接收信号与发射信号复共轭的卷积。若考虑到抑制旁瓣加窗函数,不但要增加存储器,而且运算量将增加1倍,在频域实现时,是接收信号的FFT值与发射波形的FFT值的复共轭相乘,然后再变换到时域而获得的。若求N点数字信号的脉冲压缩,频域算法运算量大大减少,而且抑制旁瓣加窗时不需增加存储器及运算量,相比较而言,用频域FFT实现脉冲压缩的方法较优,因此
[模拟电子]
S-Touch电容式触摸控制器PCB布局指南
本应用指南旨在为 S-Touch 电容触摸感应 设计所用的各种PCB(印刷电路板) (如FR4、 柔性PCB 或 ITO面板)的结构和布局提供设计布局指导。在目前市场上可提供的PCB基材中,FR4是最常用的一种。 FR4是一种玻璃纤维增强型环氧树脂层压板,PCB可以是单层或多层。 在触摸模块的尺寸受限的情况下,使用单层PCB不是总能行得通的,通常使用四层或两层PCB。 我们将以最常用的两层PCB为例来介绍 PCB布局 指南。 PCB设计与布局 在结构为两层的PCB中,S-Touch触摸控制器和其他部件被布设在PCB的底层, 传感器电极被布设在PCB的每个传感器通道所需的调谐匹配电容器可以直接布设在
[工业控制]
基于Zigbee的智能车运行状态实时监控系统设计
0 引言 智能车又称轮式机器人,是集传感器、计算机、自动控制、通信以及机械等技术于一身的综合系统。在智能车的设计和制作过程中,控制算法调试是一个极其重要而又关键的环节,面临着许多急需解决的问题:智能车能否按照事先设计的思路运行;控制策略是否符合实际需求;运行中出现问题时,智能车的各项实时参数是什么。针对这些问题,许多学者提出了基于仿真的解决方案。有学者提出基于参数化的机械系统几何模型,使用拉格朗日方法建立系统动力学方程,来对虚拟机械系统进行动力学分析。但由于车辆机械结构的复杂性,这种建模和仿真方式过于繁琐,影响了仿真和研究的效率。清华大学针对全国大学生智能车竞赛开发的PlaSTid仿真平台,其动力学模型虽然较为简单,但该模型是一种
[单片机]
基于Zigbee的智能车运行状态<font color='red'>实时</font>监控系统设计
stm8引脚能否做成触摸输入
我曾开发带有触摸按键功能的消费类电子产品,在起初也是不知道STM8引脚可以实现触摸这个功能,所以这里写给大家。 1 写在前面 我们开发带有触摸功能的产品时,可能首先考虑的就是购买一个触摸芯片。但是对于消费类电子,如果你的产量较大,可能就会考虑这1,2块的触摸芯片的成本。此时,使用STM8,或者STM32作为主控的IC可以实现触摸功能就显得比较重要了。 由于很多人不知道这个功能,这里先让大家了解并熟悉这一项触摸按键功能。 2 ST官网开发板 ST官网提供很多带有触摸按键的开发板,这里举几个例让大家看看: 1.STM8S-Discovery 2.STM32072B-EVAL 3.STM32L152C-Disco
[单片机]
stm8引脚能否做成<font color='red'>触摸</font>输入
触摸屏行业发展迅猛
  iSuppli公司表示,触摸屏行业发展迅猛,催生了一波又一波的竞争和技术,也吸引了众多OEM厂商加入到其中。据该公司预测,全球领先触摸屏产品的出货金额将从2006年的24亿美元增长到2012年的44亿美元。   iSuppli公司的新报告《触摸屏:即将高速增长的行业》显示,触摸屏市场有100多家供应商和300多家OEM/集成商以及各种技术方案。   触摸屏主要有八种不同的技术 - 电阻式、表面电容式、投射电容式、表面声波式、红外式、弯曲波式、有源数字转换器式和光学成像式。   iSuppli指出,尽管电阻式触摸屏使用寿命并不太长,而且透射率不佳,却是市场上最常用的触摸屏技术。它的低价格和对手指及探笔的良好反应性能使之成为
[手机便携]
STM32之串口DMA接收不定长数据
引言 在使用stm32或者其他单片机的时候,会经常使用到串口通讯,那么如何有效地接收数据呢?假如这段数据是不定长的有如何高效接收呢? 同学A:数据来了就会进入串口中断,在中断中读取数据就行了! 中断就是打断程序正常运行,怎么能保证高效呢?经常把主程序打断,主程序还要不要运行了? 同学B:串口可以配置成用DMA的方式接收数据,等接收完毕就可以去读取了! 这个同学是对的,我们可以使用DMA去接收数据,不过DMA需要定长才能产生接收中断,如何接收不定长的数据呢? DMA简介 题外话:其实,上面的问题是很有必要思考一下的,不断思考,才能进步。 什么是DMA DMA:全称Direct Memory Access,即直
[单片机]
STM32之串口DMA<font color='red'>接收</font>不定长数据
恩智浦触摸感应解决方案为物联网应用简化用户界面设计
恩智浦全新触摸解决方案提供通过预认证和测试的硬件组件、优化的软件环境和易于使用的配置工具,帮助加快产品上市 恩智浦半导体(NXP Semiconductors N.V.)(纳斯达克代码:NXPI)今日在恩智浦FTF技术论坛上发布并演示了全新的触摸解决方案。新的解决方案将专用的触摸软件与Kinetis KE15Z MCU上所提供的触摸感应界面(TSI)模块结合在一起,并配备一套完整的工具,使设计人员能够轻松地在物联网应用中添加触摸界面设计,包括家用电器、智能建筑、工业控制机器等等。 在用户界面中添加触摸功能是一项极具挑战性的任务,因为要想达到一流的用户体验,需要考虑许多因素。恩智浦触摸解决方案可以解决这些难题,降低添加触摸功
[网络通信]
嵌入式linux 系统下的触摸屏驱动系统设计
  文章首先介绍了触摸屏的实现原理,然后介绍了触摸屏芯片AD7873 的特性,在此基础上设计了ad7873 与i.MX27 和触摸屏的连接 PCB 图,最后依照硬件连接图设计了嵌入式Linux 下的驱动,并成功通过了tclib 触摸屏专业 测试 软件的测试,在家庭智能网关系统的测试中也成功运行,实现了从硬件到软件的嵌入式下触摸屏的驱动系统设计。   1 引言   随着 计算机 技术的发展和普及,触摸屏技术得到了越来越广泛应用,在各种手持设备中,如手机、MP4、掌上游戏机、掌上PDA 等,由于其方便、舒适,使其完全摆脱了键盘和鼠标的束缚,使人机交互更为直截了当。而在微软最新开发的windows 7 操作系统中,就有其值得骄傲
[电源管理]
嵌入式linux 系统下的<font color='red'>触摸</font>屏驱动系统设计
小广播
最新应用文章
换一换 更多 相关热搜器件

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 医疗电子 工业控制

词云: 1 2 3 4 5 6 7 8 9 10

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

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