我们从2011年坚守至今,只想做存粹的技术论坛。  由于网站在外面,点击附件后要很长世间才弹出下载,请耐心等待,勿重复点击不要用Edge和IE浏览器下载,否则提示不安全下载不了

 找回密码
 立即注册
搜索
查看: 1115|回复: 0

Actel数模结合FPGA的远程控制器设计 - FPGA/CPLD - 电子工程师俱

[复制链接]

该用户从未签到

1万

主题

1292

回帖

936

积分

管理员

积分
936

社区居民最爱沙发原创达人社区明星终身成就奖优秀斑竹奖宣传大使奖特殊贡献奖

QQ
发表于 2013-3-30 00:56:08 | 显示全部楼层 |阅读模式
<strong>引言</strong>

近年来,随着人们对生活品质的追求,每个家庭都越来越需要一个集控中心把家庭中的各种家电连接起来,并实现远程访问、控制以及自动监测报警功能。网络技术的发展使这一想法成为了现实,然而大多数管理系统都是基于功能强大的PC机。近几年,嵌入式技术迅猛发展,逐步开始成熟,尽管无法实现PC机那样强大的功能,但其低成本、低功耗、体积小等优势都是PC机无法比拟的,尤其是价格因素,更是一个便于推广的亮点。因此,嵌入式产品作为控制终端也将有机会成为发展的趋势。

<strong>1 Actel数模结合FPGA介绍</strong>

Actel公司的Fusion系列FPGA是基于ProASIC3/E的系列芯片,具有Flash架构的FPGA所有特点,如高安全性、高可靠性、单芯片、上电即行、非易失性、低功耗等;具有4 Mb的用户可用Flash、1 Kb的内部Flash、108 Kb的RAM;2个PLL最高频率可达350 MHz;支持多种I/O电平标准,其中差分的I/0标准有LVPECL、LVDS、BLVDS、M—LVDS;具有AES、FlashLock加密技术。另
外,集成了独特的模拟部分:

  ◆具有分辨率高达12位、采样率高达600 ksps、30个输入通道、2.56 V内部参考源的A/D转换器;
  ◆高达30个模拟的输入I/O,可以承受±12 V输入电压,并有10个MOSFET门驱动输出,驱动能力可调;
  ◆可实现电压、温度、电流检测;
  ◆片内集成100 MHz、精度为1%的RC振荡器;
  ◆外部可接32 kHz~20 MHz的晶振;
  ◆具有可编程的实时计数器(RTC);
  ◆片内具有1.5 V稳压源,可提供内核电压,实现睡眠和待机的低功耗模式。

<strong>2 实现原理及系统结构</strong>

系统采用Fusion开发平台为主控器,在片内嵌入8051软核的方式,对系统进行控制和管理。该系统内部嵌入2个8051软核,有效地将管理、控制和检测分开,其两核之间在内部通过并行I/O通信,使用“仿打印机协议”通信;在一个IP核扩展了MiniISA总线,通过并行总线扩展了32 KB SRAM、LCD接口和82C55接口,实现了打印机控制和红外遥控接收;通过电话模块CR6269A和网络模块ZNE一100T将电话信息和网络信息转成串口数据,对家电进行远程控制;模拟I2C总线接口扩展了PCF8563实时时钟芯片、E2PROM存储器AT24C256芯片以及ZLG7290串行显示器/键盘控制器,以获取准确的实时时钟、相关参数,并实现系统信息的存储、4×4键盘动态扫描控制;扩展数字温度传感器DSl8820用于对室温进行测量;在片内扩展了4路A/D,实现对家庭参数(烟雾浓度、燃气浓度、交流电压和交流电流)的测量。系统结构框图如图1所示。


<ignore_js_op>





2010-5-13 14:12:16 上传
<strong>下载附件</strong> (11.88 KB)




</ignore_js_op>


<strong>3 系统硬件设计</strong>

3.1 MiniISA总线扩展板

MiniISA总线扩展板主要用于各种并行总线器件及I2C器件的扩展。其中包括:

82C55并行I/O扩展、LCD接口、ZLG7290串行键盘/显示器接口、PCF8563实时时钟接口、AT24C256接口等。Mi—niISA总线接口如图2所示。


<ignore_js_op>





2010-5-13 14:12:16 上传
<strong>下载附件</strong> (6.38 KB)




</ignore_js_op>


3.1.1 外设地址选择与分配

系统通过可编程逻辑阵列器件GAL16V8实现基地址的选择与分配。MiniISA总线接口寻址空间为256字节,其中高4位(A4~A7)为板卡基地址,通过4个拨动开关进行基地址的设置;低4位为该ISA板的接口地址,A2、A3用于板上外扩芯片的地址选择,每个外设的寻址空间为4字节。板卡基地址 base(高4位)由SA7、SA6、SA5、SA4决定,A3、A2对板卡上外设进行片选,地址分配如表1所列。


<ignore_js_op>





2010-5-13 14:12:17 上传
<strong>下载附件</strong> (6.79 KB)




</ignore_js_op>


3.2.2板卡资源介绍

(1)82055并行I/O扩展

可编程并行接口82C55是一款具有2个8位(A口和B口)和2个4位(C口高/低4位) 并行I/O端口的接口芯片,接口可编程,I/O端口控制功能强。芯片接口地址如表2所列。

该设计中82C55主要用于控制打印机的输入与输出,其接口电路如图3所示。


<ignore_js_op>





2010-5-13 14:12:16 上传
<strong>下载附件</strong> (18.96 KB)




</ignore_js_op>


(2)汉字微型打印机扩展

汉字微型打印机为针式打印机。如图3所示,打印机数据线与82C55的PA口相接,PA口设置为输出;忙线(BUSY)和选通线(STB)分别与PC7、 PCO相接。82C55的PC口高4位I/O口设置为输入,低4位I/O口设置为输出。

(3)串行键盘显示器控制器ZLG7290

ZLG7290是串行I2C总线的一款键盘/显示器控制器,最多可以扩展8×8键盘和64个LED。在MiniISA总线扩展板中将所有接口引出,电路如图4所示,而在本设计中只使用的4×4的键盘,用于界面操作。


<ignore_js_op>





2010-5-13 14:12:16 上传
<strong>下载附件</strong> (11.95 KB)




</ignore_js_op>


(4)实时时钟芯片PCF8563

扩展PCF8563实时时钟芯片,用于获取准确时间用于时间的显示。PCF8563是Philips公司推出的一款工业级、内含I2C总线接口功能、具有极低功耗的多功能时钟/日历芯片。工作电流为O.25μA,采用O.1F电容供电;断电情况下,仍可正常工作10~13天。

(5)串行E2PROM AT240256

AT24C256是串行I2C总线的一款E2PROM,存储空间为32 KB,主要用于报警参数、密码、红外代码以及相关产品信息的存储。

3.2 电话模块CR6269A

CR6269A 电话模块可实现自动电话应用所需的全部功能:电话接口、摘机电路、振铃识别、FSK来电号码接收、电话信号音识别、DTMF收发、多段数码语音、多和弦音乐和铃声、免提扩音、用户语音输入和电话语音输出、2路遥控驱动输出。所有硬件的底层控制均由模块内MCU完成,用户通过一标准RS232接口完成指令和数据通信,功能强大且应用非常简便,只需接入5V电源、电话线、串口线即可使用。

3.3 网络模块ZNT一100T

ZNT一100T网络模块是周立功公司开发的一款嵌入式网络模块。它内部集成了TCP/IP协议栈、10M以太网接口,串口TTL电平方式,波特率为 300~115 200 bps,提供5个可控制I/O,可通过网页控制或TCP控制控制端口任意设定。表3为ZNE一100T接口说明。本设计中,利用该模块进行网络控制。


<ignore_js_op>





2010-5-13 14:12:17 上传
<strong>下载附件</strong> (11.12 KB)




</ignore_js_op>


3.4 交流电检测电路

本设计,采用DVDI—001电压/电流互感器对交流电的电压、电流进行采样,然后通过精密整流电路进行整流,采用RC滤波,最终变为O~5 V电压进入FPGA的A/D测量端。

(1)作为电压互感器使用

DVDI—001作电压互感器使用时是一种电流型电压互感器。电压采样电路如图5所示。根据电路的实际情况,将Rr的阻值选为5 kΩ,CO选为O.1μF。因为电流的感应是1:l,所以Rr选为5 kΩ;同时也要注意不要让负载超过互感器的范围。这样,就可以安全地得到所需要的幅值范围。


<ignore_js_op>





2010-5-13 14:12:17 上传
<strong>下载附件</strong> (6.02 KB)




</ignore_js_op>


(2)作为电流互感器使用

DVDI—001作电流互感器应用时,用户只需在中心孔内穿1匝母线作为输入线圈。电流采样电路如图6所示。由于电流的感应比是3 000:1,所以电路中的负载是很小的,所以根据电路的实际情况将Rr的阻值选为5 kΩ,CO选为0.22μF。这样,就可以安全地得到所需要的幅值范围(0~5 V)。

3.5 温度检测

数字温度传感器DSl8B20具有与CPU接口方便、直接数字量输出等优点,可提供12位(二进制)温度读数指示器件的温度信息。经过单线接口送入 DSl8820或从DSl8B20送出,因此从主机CPU到DSl8820仅需一条线。室内温度检测采用数字温度传感器,其电路如图7所示。


<ignore_js_op>





2010-5-13 14:12:16 上传
<strong>下载附件</strong> (2.39 KB)




</ignore_js_op>


<strong>4 双核通信</strong>

系统采用主从式架构,主核发送命令,从核响应,共同完成对外围设备的控制和管理。其中,COREl作为主核,外扩了32 KB的SRAM,主要通过MiniISA总线与外界通信;CORE2作为从核,通过I/O与外部通信。COREl、CORE2在结构上是相对独立的,双核采用仿打印机协议进行通信,二者以I/O口相接(并行数据线8位,控制线2位)。双核通信接口如图8所示,接口引脚定义如表4所列。


<ignore_js_op>





2010-5-13 14:12:17 上传
<strong>下载附件</strong> (6.85 KB)




</ignore_js_op>



<ignore_js_op>





2010-5-13 14:12:16 上传
<strong>下载附件</strong> (5.53 KB)




</ignore_js_op>


系统在每一个核中,都开辟了一个16字节的缓存,用于存储接收到的数据。其发送格式为:


<ignore_js_op>





2010-5-13 14:12:17 上传
<strong>下载附件</strong> (1.53 KB)




</ignore_js_op>


从设备地址如表5所列。

<strong>5 软件设计</strong>

5.1 系统主程序流程

系统内部具有双核,每个内核单独执行程序。主程序流程如图9所示。


<ignore_js_op>





2010-5-13 14:12:17 上传
<strong>下载附件</strong> (9.25 KB)




</ignore_js_op>


5.2 双核通信流程

双核通信采用读忙线发送、中断接收的方式,增强了数据发送的可靠性,如图10所示。


<ignore_js_op>





2010-5-13 14:12:17 上传
<strong>下载附件</strong> (10.28 KB)




</ignore_js_op>


<strong>结语</strong>

本文利用Actel公司最新Fusion系列数模结合的FPGA实现了远程家电控制,保证了多CPU环境下通信的协调与稳定。本文创新点:采用数模结合的 FPGA,内嵌2个8051 IP软核,主核通过扩展MiniISA总线实现数据处理和系统管理,从核直接用于参数的采集和控制,且参数采集所用的A/D转换器均为12位的片内 A/D。

<strong>参考文献</strong>

1. 谭浩强 C 语音程序设计 1999
2. 马忠梅 单片机的C语言应用程序设计 2007
3. 周立功 Actel FPGA实验教程 2008
4. 楼然苗.李光飞 51 系列单片机设计实例 2006

作者:中国海洋大学 刘坚强李鹏王永才王璇
来源:单片机与嵌入式系统应用 2008 (12)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

论坛开启做任务可以
额外奖励金币快速赚
积分升级了


Copyright ©2011-2024 NTpcb.com All Right Reserved.  Powered by Discuz! (NTpcb)

本站信息均由会员发表,不代表NTpcb立场,如侵犯了您的权利请发帖投诉

平平安安
TOP
快速回复 返回顶部 返回列表