微波EDA网,见证研发工程师的成长!
首页 > 通信和网络 > 通信网络技术文库 > 以DSP为核心的无线定位系统的方案设计

以DSP为核心的无线定位系统的方案设计

时间:08-30 来源:互联网 点击:
系统软件设计

系统的软件设计主要包括,多通道缓冲串口的初始化,串口中断服务程序,并行装载程序设计,TL16C550C的初始化及HPI设计等。

程序设计应注意的问题

(1)McBSP工作在数据接收中断方式,因此全局中断和串口中断的相应位应该合理设置。同时,在设置中断向量表时,使中断向量表的位置与处理器模式状态寄存器PMST中的中断向量指针IPTR相对应,使IPTR的9位地址指向128字的中断向量所在的程序页,同时,中断向量表要严格按照C5402规定的格式编写,否则不能正确地产生需要的中断结果。

(2)要实现DSP数据采集系统的脱机独立运行,程序装载十分关键。C5402(A)进行并行装载,要求AT29LV1024中的程序数据流严格按照并行装载的格式,依次给C5402(B)装载程序、C5402(A)自身执行程序,C5402(B)的程序装载到片内DRAM和片外SRAM中。

(3)注意到系统设计中,C5402(B)的HPI口既用来进行程序装载,又作为两片DSP通信接口,为了避免混乱,在C5402(B)的程序中应将IFR中INT2的相应位清零,最好在IMR中屏蔽INT2。

(4)为了实现两路A/D和C5402之间的时序匹配,避免数据冲突,需要注意C5402采样率发生寄存器SRGR1中CLKGDV位的设置,使C5402工作时钟周期大于两个串口中断的响应时间。

TL16C550C的软件流程

TL16C550C 初始化程序主要完成波特率及其它工作寄存器的设置。这里设置TL16C550C工作模式为8位数据位,2位停止位,奇校验状态。TL16C550C的软件设置流程如图5所示。



图5 TL16C55C工作的软件流程(略)

串口接收的部分初始化程序

下面根据多通道缓冲串口的特性和两路串行A/D工作的要求,主要介绍一下串口接收的软件设计和串口部分关键设置。

;=====初始化串口0========

stm #0, SPSA0

stm #0000h, SPSD0 ; #0000H SPCR10

stm #1, SPSA0

stm #0000h, SPSD0 ; #0000H SPCR20

stm #2, SPSA0

stm #0040h, SPSD0 ; #0040H RCRC10 每字16位

stm #3, SPSA0

stm #0040h, SPSD0 ; #0040H RCR20 每帧一段,每段一字

stm #6, SPSA0

stm #000fh,SPSD0 ; #0009H SRGR1 时钟周期 CLKG="6".4MHz

stm #7, SPSA0

stm #300fh, SPSD0 ; #3010H SRGR20 帧周期为16个CLKG

stm #0eh,SPSA0

stm #0a04h, SPSD0 ; #0A04H PCR0 FSX, CLKX输出,FSR,

CLKR输入

;=====初始化串口1======

串口1的初始化程序参见串口0

;=====启动接收========

stm #0,SPSA0

stm #0001h, SPSD0 ;启动串口0接收

stm #1,SPSA0

stm #00c0h, SPSD0 ;内部产生时钟产生FSG

stm #0,SPSA1

stm #0001h, SPSD1 ;启动串口1接收

stm #1,SPSA1

stm #00c0h, SPSD1 ;内部产生时钟产生FSG

;==串口0接收中断子程序===

.sect "brint0"

host_brint0:

rsbx intm ;关中断

ldm drr0,A

stl A,*ar4+ ; 接收

:::

其它处理程序

rete

结束语

本文利用两片DSP,根据TM320C5402多通道缓冲串口的特点,提出了由四个阵列天线传感器阵元组成的DOA估计硬件设计方案,并给出了系统独立工作的硬件原理图和软件设计的部分关键程序。并行装载模式和HPI装载模式同时使用,有效利用了系统资源,减小成本,同时TL16C550C的使用实现了DSP与PC机的高速串行通信。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top