首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 单元电路介绍 > 其它电路
ISPl362在基于FPGA的红外成像系统中的应用
来源:本站整理  作者:佚名  2010-04-09 11:33:55




    ISPl362设备控制器内部40多个寄存器。编写代码时的重点工作就是根据寄存器每一位代表的意义确定配置值,特别是有些关键位,只有正确配置方能保证芯片的正常工作。在使用ISPl362之前,要先配置的寄存器有模式寄存器、硬件配置寄存器、中断使能寄存器等,端点配置寄存器可以在任何时刻完成,但仅在枚举后的初始化后才有效。为了便于程序设计,在一开始对模式寄存器、硬件配置寄存器、中断使能寄存器等配置的同时,也对16个端点配置寄存器进行配置。端点0为控制端点,包括in和out端点,这两个端点大小固定,均为64 B。枚举过程就是通过这个端点进行的。其余14个为可编程端点,也可以被配置成双缓冲端点进一步提高吞吐量。设计中端点1配置为64 B双缓冲批量in端点;端点2配置为16 B中断out端点;端点3配置为16 B中断in端点等;可以禁能不用的端点。配置模式寄存器时,尤其要注意可以通过第三位来使能所有中断。对于硬件配置寄存器,要注意中断输出管脚INT2的设置,这里选择低电平有效的中断信号模式。对这些寄存器正确配置之后,ISP1362就会进入预期工作模式。
    由于ISP1362中需要配置的寄存器很多,因此本设计中先在FPGA生成一片16位,大小为128 B的ROM,再将需要配置的寄存器的写命令和配置值按照顺序写入ROM中,配置时,只需将ROM中的数据依次写入芯片中即可。寄存器的配置时序如图3所示(为便于观察,图3中只截取了部分寄存器的配置情况)。


    图3中信号clk_50M为全局时钟;ISP_Rst为芯片的复位信号;ISP_CS,ISP_WR,ISP_RD分别为ISPl362的片选信号、读信号、写信号,均为低电平有效;ISP_Al为模式选择信号,当其值为1时,芯片工作于设备控制器模式,为O时芯片工作于主机控制器模式;ISP_A0为高时对应的ISP_Data为DC的初始化命令,当ISP_AO为低时对应的ISP_Data为写入相应寄存器的配置值。
2.2设备接收请求
    主机的每次请求,都是将请求以setup包的形式发送到out端点的out缓冲区。当out缓冲区接收到数据时,芯片的INT2管脚将会有中断产生。在模式寄存器、硬件配置寄存器、中断使能寄存器正确配置之后,当有中断事件产生时,ISP1362内部的SIE就能够检测到中断,并置中断寄存器的相应位为高电平。固件通过读取并分析中断寄存器的值来判断中断类型,再进行中断事件的处理。
    固件首先检测到的是out中断。这是因为在上电复位以后,主机就向out缓冲区发第一个setup请求包。当接收到out中断时,固件首先读取out端点的端点状态寄存器将中断清除,以便于芯片接收其他的中断。接着固件再根据端点状态寄存器的值判断out缓冲区内是否含有setup包,然后固件读取out缓冲区。
    根据out缓冲区的内容判断是何种请求,再决定做何响应。in中断的产生不同于out中断。in中断是在in缓冲区由空变满之后才产生的,in中断的产生需要固件进行写in缓冲区的操作。换而言之,是写in缓冲区的操作引发了in中断的产生,而不是in中断的产生引发了写缓冲区的操作。当固件检测到in中断时,同样要通过读in端点的端点状态寄存器将中断清除。

上一页  [1] [2] [3] [4]  下一页

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:203,117.20000 毫秒