新闻中心

EEPW首页>EDA/PCB>设计应用> 基于DSP内嵌PCI总线的卫星信号仿真器设计

基于DSP内嵌PCI总线的卫星信号仿真器设计

作者: 时间:2009-08-25 来源:网络 收藏

中断响应函数的关键代码如下:

本文引用地址://m.amcfsurvey.com/article/191948.htm


主机给发中断是通过将HDCR寄存器的INT位置1实现的,要注意产生该中断的有效前提条件是的中断使能寄存器(IEN)HOSTSW位被使能,即HOSTSW=1。
为了便于使用PCI的驱动函数和以后驱动程序发布的需要,将驱动函数封装在动态链接库DLL中,它们中主要函数的关键代码如下:


为了使PC机能够正确地捕获到由传来的中断,在动态链接的DSP6416_IntEnable()函数中,必须设置内核模式下的中断传输命令,因为它的优先级比用户模式下的中断响应函数高,因而一旦DSP产生中断,首先执行的是内核模式下的中断传输命令。由于DSP6416PCI产生的中断属于电平敏感中断,如果不清除中断它将一直有效,这将会导致中断响应函数不断执行而死机。因此,必须在中断使能函数设置中断传输命令。在该例中,先从HSR中读取一个DWORD,然后在中断传输命令中设置CMD_MASK位。如果前面从HSR中读出的值为0x04,则屏蔽DSP所产生的中断,否则不执行屏蔽命令,然后在中断传输命令中向DSP的RSTSRC写入0x10清除中断。图6中用到的关闭中断使能和关闭设备2个函数可分别通过调用WinDriver中 WDC_IntDisable(),WDC_PciDe_viceClose(),WDC_DriverClose()的函数等实现。此外,调用这些函数之前要判断中断是否存在,设备是否打开,否则会出现严重错误。
3.4 卫星信号实验验证
设置卫星信号场景:用户位置为北纬60°00'00,东经100°00'00,高程300 m,静止状态。GG24接收机的解算结果如图8所示。

GG24接收机解算结果是北纬59°59'59.867 52,东经99°59'57.636 24,高程为308.02 m,与设置的场景,即北纬60°00'00,东经100°00'00,高程300 m相当吻合。因此,这说明了的正确性和有效性。

4 结 语
在此设计的基于DSP6416PCI数据传输硬件平台和驱动开发方案已用于多模卫星信号仿真器中,该方案数据传输稳定,速度快(可达115 MB/s),采用WinDriver软件工具包开发DSP6416的PCI设备驱动程序,不但可以极大地缩短开发周期,而且还提高了卫星信号仿真器的开发效率和整体性能。


上一页 1 2 3 4 下一页

关键词:DSPPCI内嵌仿真器

评论


相关推荐

技术专区

关闭