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

1 板间共享存储器的硬件接口电路和软件控制流程

1.1 信号处理板硬件接口电路

基于DSP的信号处理板可以根据应用要求运行许多信号处理算法,如信号预处理、目标识别与跟踪定位、Kalman滤波等。待处理的原始信号数据通过板间通信从数据采集板获得。这里采用板间共享存储器的方法来完成数据交换,DSP既可以从共享存储器读取采集数据,也可以把处理结果(如新的程控放大倍数值,跟踪定位结果等)写到共享存储器中供MCU读取。

TMS320C32有一个双向串行口,可以设置每帧同时收发8/16/24/32位数据,同步时钟可以由内部串口定时器产生或由外部输入。通过设置串口全局控制寄存器来控制串口的总体功能和工作模式;通过设置FSX/DX/CLKX端口控制寄存器和FSR/DR/CLKR端口控制寄存器来控制串口6个引脚的功能,可以软件设置每个引脚为通用的I/O引脚或串口通信引脚。TMS320C32有两根通用的I/O引脚为XF0和XF1,由于共享存储器接口电路需要4根控制线来进行DSP与MCU间的握手通信,这里把串口的2个引脚FSR0和FSX0设置为通用的I/O引脚用作控制线。接口电路原理图如图1所示。

图中RAM0~RAM3是四片容量为512K的8位高速RAM(芯片型号为CY7C1049-17VC),组成32位数据宽度的存储器,DSP运行时的程序和数据都在这四片RAM中。FLASH(芯片型号为Am29F016)用于存储程序和初始化数据,即使掉电内容也不丢失,DSP上电时由自带的BOOT LOADER程序从FLASH中取出程序到四片RAM中运行。从共享存储器读取的采集数据也暂存到这四片RAM中。

1.2 数据采集板硬件接口电路

基于单片机AT89C51的数据采集板在单片机的全局控制下,通过对多路声传感器输出的微弱信号进行程控放大、低通滤波、同步采样保持、A/D变换,实时同步采集多路信号,并把采集到的信号数据存放在数据采集板上的128K共享存储器(芯片型号为CY7C109-12VC)中。

共享存储器及其总线隔离电路设计在数据采集板上。在某一时刻,共享存储器只能被某一方访问,否则会产生总线冲突。这里由MCU切换选通DSP总线或单片机总线,分时访问共享存储器。总线隔离芯片选用常见的双向总线隔离/驱动芯片74HC245,它有一个输出使能引脚(E)和一个数据传输方向(DIR)引脚,MCU通过控制这两个引脚来完成总线隔离与数据传输方向控制功能。接口电路原理图如图2所示。图中,MCU端的总线隔离由一片74HC373和两片74HC245完成,DSP端由三片74HC245完成数据总线和地址总线的隔离。由P1.2控制选通哪组总线,当P1.2为低电平时,共享存储器只能被MCU访问;当P1.2为高电平时,只有当P1.3也为高电平时(表示MCU同意让出共享存储器),共享存储器才能被DSP访问。由于DSP需要读或写共享存储器,所以需要软件设置数据总线隔离芯片74HC245的数据传输方向,这里通过设置DSPDIR信号线的电平状态来完成(高电平时为读,低电平时为写)。由于地址总线的数据传输方向始终是单向的,所以其隔离芯片的DIR端可以固定接低电平或高电平,视74HC245的实际接线而定。
1.3 软件控制流程

信号处理板上的DSP需要采集信号数据时就向数据采集板上的MCU发出请求信号,单片机接收到请求信号后,如果同意让出共享存储器,则向DSP发出应答信号,同时隔离MCU端的总线,暂停数据采集。DSP接收到应答信号后就可以访问共享存储器,DSP快速读、写完数据后,向单片机发结束信号,单片机接收到结束信号后,收回共享存储器,同时隔离DSP端总线,继续采集。这样数据采集与信号处理就可以同时进行,不同于一般的采集一段处理一段的串行工作模式,实现了数据采集零等待,增加了系统的吞吐能力。参见图3的接线图,一次完整的通信过程详述如下,注意在DSP程序初始化时应把XF0、XF1、FSR0设置为相应的无效状态。 1?DSP需要采集信号数据时向MCU发请求信号(置XF0为低电平),触发MCU的INT0中断,等待MCU应答(DSP循环检测XF1的状态)。

2?如果MCU同意让出共享存储器,则响应中断,否则等待。在中断服务程序中,置P1.3(即DSPACK)为高电平,表示应答。同时置P1.2为高电平,选通DSP总线。MCU接着循环检测P1.4?即DSPEOR)的状态。

3?DSP收到应答信号(即检测到XF1为高电平),立即快速读写共享存储器,在读操作前,置FSX0为高电平,在写操作前,置FSX0为低电平。读写完

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

在单片机通信系统中,数据帧是实现设备间可靠对话的核心载体。不同于网络通信中成熟的TCP/IP协议,单片机通信往往需要自定义数据帧格式,而帧头、帧尾与校验机制则是保障数据传输准确性的三大关键。

关键字: 单片机 数据帧

随着嵌入式技术的不断发展,时序分析工具和方法也在不断进步,未来将朝着智能化、自动化的方向发展,为开发者提供更高效的调试手段。但无论技术如何发展,扎实的时序分析基础都是嵌入式开发者不可或缺的能力,只有深入理解通信时序的本质...

关键字: 时序 单片机

在嵌入式系统设计中,不同架构、不同厂商的单片机协同工作早已成为常态。从8位的51系列到32位的STM32,从精简指令集的PIC到复杂指令集的AVR,这些性能各异的单片机如何突破硬件差异实现数据交互,是嵌入式开发中的核心课...

关键字: 嵌入式 单片机

在嵌入式系统开发中,单片机的时钟系统是整个系统的"心脏",所有的指令执行、外设操作、定时器中断都依赖于精准的时钟信号。但在实际开发过程中,很多开发者都会遇到单片机时钟不准的问题,表现为定时器计时偏差、UART通信波特率错...

关键字: 控制系统 单片机

在单片机开发与调试过程中,复位电路作为保障芯片正常启动的核心模块,其稳定性直接影响程序烧录与系统运行。实际应用中,不少开发者会遇到“接稳压电源可正常烧录,接入电池后却无法烧录程序”的故障,此类问题多与复位电路设计、电池供...

关键字: 单片机 复位电路 时序匹配

在单片机的世界里,“字节”(Byte)是一个贯穿始终的核心概念。从存储数据到执行指令,从变量定义到外设通信,字节无处不在。很多初学者在学习单片机时,往往更关注复杂的程序逻辑和外设驱动,却忽略了字节这个基础知识点,导致在后...

关键字: 单片机 字节

在单片机的数字逻辑中,我们通常最关注的是高电平和低电平两种状态,它们构成了二进制数字世界的基础。然而,除了这两种状态之外,还有一种至关重要但常常被忽视的状态——高阻态(High Impedance State)。高阻态就...

关键字: 单片机 高阻态

对于PIC入门者来说,不需要盲目追求高端开发板,一块功能均衡、资料丰富的入门款就能满足需求。比如Microchip官方推出的PIC16F84A开发板,它搭载经典的8位PIC内核,引脚布局清晰,自带LED、按键等基础外设,...

关键字: PIC 单片机

该低功耗器件支持5V运行,在实现高性能的同时,能有效保障系统简洁性与成本效益

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

CH558T 采用 BASIC-52 系统,并具备蓝牙连接功能。CH558T 的运行频率为 48 MHz,拥有 4KB 的 xRAM,足以满足常规应用需求。

关键字: 单片机 BASIC-52 系统 CH558T
关闭