Android终端及FPGA控制的智能家居系统

来源:华强电子网 作者:------ 时间:2014-06-18 14:04

  2 主控中心FPGA设计

  本系统采用FPGA作为中间控制部分的处理器主要基于以下两点考虑,首先整个系统中用到多个串口,普通单片机内部不超过3个串口,而FPGA可以根据需求搭建多个UART接口;其次FPGA可以采用平行以及流水线处理,可以完成视频数据采集、VGA接口输出等高速处理,还可完成脸部识别、指纹识别等复杂运算。设计中采用的FPGA芯片型号是Altera公司CycloneII系列EP2C8Q208C8,在QuartusII平台下用Verilog语言进行开发。

  2.1 UART模块的设计

  由于FPGA与各功能模块均利用串口进行通信,因此需要搭建多个UART接口,对数据进行传输和处理。UART通信模块主要由波特率产生模块、发送模块和接收模块三部分组成,其中波特率产生模块是将50MHz的主时钟经过多次分频后为UART的收发模块提供特定的波特率。

  FPGA中的每个UART都被例化成一个子模块,各模块间通过输出输入接口进行数据的交互,此外还有一个控制模块,用于控制每个串口的发送和接收。

  2.2 视频监控的设计

  视频监控是家庭防盗系统中必不可少的部分,本系统通过OV7670摄像头获取视频信息,用FPGA进行数据的采集和存储,最后通过VGA接口用显示器显示出来。框架如图2所示。

  

图2 视频监控框架图

  OV7670是OmmVision公司生产的CMOS摄像头,通过SCCB总线控制,图像最高达到30帧/s。FPGA先构建一个配置模块,用SCCB总线对OV7670进行初始化设置并使其开始工作,其中的SCCB总线本质为简化了的I2C总线。

  配置成功后,FPGA将接收RGB565格式的数据,即第一个字节的前5位表示红色,第一字节的后3位和第二字节前3位表示绿色,第二字节后5位表示蓝色。数据通过SDRAM控制模块存进外部SDRAM中,SDRAM的主要作用是把图像数据以30帧/s的速率进行缓存,然后再以60帧/s的速率读出。从SDRAM读出的数据将通过VGA控制模块转换为VGA协议输出,最后通过一个三路10位高速视频DAC芯片ADV7123进行D/A转换后显示在显示器上,进行实时的监控。

  除了可实时监控外,当系统触发警报信息后可以对视频信息存储到外接Flash中,由于Flash的容量以及读写速度有限,不能将所有视频数据保存下来,因此采样间断性存储的方法,即以图片的形式将现场的情况保存下来,这种方式既能减少Flash的容量,又可以较好地保存现场的信息。

资讯排行榜

  • 每日排行
  • 每周排行
  • 每月排行

华强资讯微信号

关注方法:
· 使用微信扫一扫二维码
· 搜索微信号:华强微电子