电力载波芯片ST7538及其应用

| 收藏本文 下载本文 作者:奶茶鉴定家

以下是小编整理的电力载波芯片ST7538及其应用(共含7篇),欢迎阅读分享,希望对您有所帮助。同时,但愿您也能像本文投稿人“奶茶鉴定家”一样,积极向本站投稿分享好文章。

电力载波芯片ST7538及其应用

篇1:电力载波芯片ST7538及其应用

电力载波芯片ST7538及其应用

摘要:介绍一种最新推出的电力载波调制解调器芯片ST7538的基本原理,给出ST7538的主要控制电路和接口电路,讨论应用该芯片后些注意事项。

关键词:电力载波通信 ST7538 家庭网络 工业网络

利用电力线作为通信介质的电力载波通信,具有极大的方便性、免维护性、即插即用等优点,在很多情况下是人们首选的通信方式。ST7538是最近SGSTHOMSON公司在电力载波芯片ST7536、ST7537基础上推出的又一款半双工、同步/异步FSK(调频)调制解调器芯片。该芯片是为家庭和工业领域电力线网络通信而设计的`,与ST7536和ST7537相比,主要具有以下特点:

*有8个工作频段,即:60kHz、66kHz、72kHz、76kHz、82.05kHz、86kHz、110kHz和132.5kHz;

*内部集成电力线驱动接口,并且提供电压控制和电流控制;

*内部集成+5V线性电源,可对外提供100mA电流;

*可编程通信速率高达4800bps;

*提供过零检测功能;

*具有看门狗功能;

*集成了一个片内运算放大器;

*内部含有一个具有可校验和的、24位可编程控制寄存器;

*采用TQFP44封装。

可以看出,ST7538是一款功能强大的、单芯片电力线调制解调器。

图1

1 ST7538工作原理

ST7538是采用FSK调制技术的高集成度电力载波芯片。内部集成了发送和接收数据的所有功能,通过串行通信,可以方便地与微处理器相连接。内部具有电压自动控制和电流自动控制,只要通过耦合变压器等少量外部器件即可连接到电力网中。ST7538还提供了看门狗、过零检测、运算放大器、时钟输出、超时溢出输出、+5V电源和+5V电源状态输出等,大大减少了ST7538应用电路的外围器件数量。此外,该芯片符合欧洲CENELEC(EN50065-1)和美国FCC标准。图1为ST7538内部原理框图。

1.1 发送数据

当RxTx为低时,ST7538处于发送数据状态。待发数据从TxD脚进入ST7538,时钟上升沿时被采样,并送入FSK调制器调制。调制频率由控制寄存器bit0~bit2决定,速率由控制寄存器bit3~bit4决定。调制信号经D/A变化、滤波和自动电平控制电路(ALC),再通过差分放大器输同到电力线。当打开时间溢出功能,且发送数据时间超过1s或3s时,TOUT变为高电平,同时发送状态自动转为接收状态。这样可以避免信道长时间被某一节点(ST7538)点用。

1.2 接收数据

当RxTx为高时,ST7538处于接收数据状态。信号由模拟输入端RAI脚进入ST7538,经过一个带宽±10kHz的带通滤波器,送入一个带有自动增益AGC的放大器。该滤波器可以通过控制寄存器bit23置零取消滤波功能。自动增益放大器可以根据电力线的信号强度自动调整。为提高信噪比,经过放大器的信号送入一个以通信频率为中心点、带宽为±6kHz的窄带滤波器。此信号再经过解调、滤波和锁相,变成串行数字信号,输出给出ST7538相连的微处理器。

(本网网收集整理)

可以通过使控制器的bit22置位,使ST7538处于高灵敏度接收状态。

1.3 工作模式选择

通过微处理器与ST7538的串口RxD、TxD和CLR/T,可以实现微控制器与ST7538的数据交换。ST7538的工作模式,由REG_DATA和RxTx的状态决定。

微处理器对电力线的访问可以采用同步方式或异步方式。异步方式只需要RxD、TxD和RxTx,无需辅助时钟信号。无载波信号时,RxD输出低电平,对于同步方式,需要CLR/T作为参考时钟,并且ST7538必须是通信发起者(Master)。

对ST7538控制寄存器的访问必须采用同步访问方式,需要RxD、TxD、CLR/T和REG_DATA,CLR/T上升沿有效,发送数据高位在前。

1.4

复位及看门狗

ST7538内部嵌入一个看门狗,可以产生一个内部和外部的复位信号,保证CPU的可靠工作。

2 系统硬件组成

电力载波通信节点模块一般包括以下几部分微处理器部分、载波部分信号滤波部分和电力线信号耦合与保护部分。图2给出了利用ST7538和Atmega8L构成的通用电力载波通信模块。这里仅就滤波部分作简要介绍。

信号滤波部分是整个模块的关键部分,它包括输入窄带滤波器和输出窄带滤波器两部分。图3为输入滤波电路,它采用并联电流谐振电路构成滤波电路,滤除指定频率以外的无用信号和噪声。该谐振点频率f1为

图4为输出滤波电路,它采用串联电压谐振电路,避免无用信号耦合到电力线上。该谐振点频率f2为:

电力线耦合部分采用1:1宽带通信变压器,同时二次侧采用瞬间电压抑制器P6KE6V8A,保护后级电路。

3 应用注意事项

ST7538比早期推出的ST7536、ST7537功能强大得多,引脚也从28脚增至44脚,使用起来仍然很方便,但还需要特别强调以下几点:①注意保证上电复位时间和顺序。ST7538复位时间为50ms,微处理器上电复位时必须有足够长的硬件延时和/或软件延时,保证ST7538可靠复位。ST7538可靠复位后,方可对其进行初始化操作。

②ST7538有8个通信频段,但是同一时刻只能采用一种通信频率。要改变通信频率,则需要调整硬件参数。

③ST7538内部提供的仅是纯透明的物理层通信协议,当噪声信号混入通信频率时,ST7538无法区分,它将与有用信号一起被解调。因此,ST7538要求用户必须自己制制MAC层通信协议,以保证通信的可靠性。

④用ST7538组成系统时,多个节点通信可以采用总线介质访问竞争性协议,例如CSMA(载波监听多路访问)。但是,电力载波通信毕竟通信速率低、效率不高。因此,可以考虑利用ST7538的这零检测功能。利用过零点,实现同步数据传输,进而可以在一个比较大的系统中实现非总线介质竞争的“类TDMA”(时分多址)协议,该协议经常用于GSM等数字无线通信系统。

结语

ST7538是一款功能强大、集成度很高的电力载波芯片,它为家庭和工业环境应用而设计,因此采取了多种抗干扰技术。虽然它采用FSK调制技术,而没有采用扩频技术,没有扩展通信的优点,但是,正因为如此,它可以在噪声频带很宽的信道环境下实现可靠通信。如果能够很好地利用它的多频段性,将可以克服窄带通信的缺点。

篇2:Neuron多处理器芯片及其应用

Neuron多处理器芯片及其应用

摘要:Neuron芯片是美国Mitorola公司和日本Toshiba公司制造的一种多处理器结构的神经元芯片。它将通信协议和控制用微处理器有效地集成在一起,实现通信、控制、调度和I/O等功能。本文以MC134150为例,介绍有关Neuron芯片的基本结构和组成、LonTalk协议以及应用系统的组成方式等。

关键词:神经元芯片多处理器Neuron固件

一、Neuron芯片的基本组成

Neuron芯片作为一种多处理器结构的神经元芯片,有着完整的系统资源,如图1所示,其内部集成有三个管线CPU,最高工作频率可达10MHz。它设置有11编程输入、输出引脚(IO1~IO10),编程方法多达34种,方便了实现应用。片内设有EEPROM和RAM,支持有外部扩展多种存储器的接口,最大存储空间允许有64KB。内部含有两个16位定时器/计数器,能够由固件产生15个软件定时器。Neuron芯片的长处还在于它的网络通信功能,引出的五个通信引脚(CP0~CP4)提供了单端、差分和特殊应用模式等三种网络通信方式。

1.处理器单元

Neuron芯片集成有三个处理器,其中一个用于执行用户编写的应用程序,另外两个完成网络任务。图2示意了Neuron芯片内三个处理器的功能分配及与内部共享存储器区域之间的关系。

(1)MAC处理器是媒体访问控制层处理器。它处理OSI七层网络协议中的1,2层,主要包括驱动通信子系统硬件以及执行冲突回避算法等。MAC处理器使用位于共享存储器中的网络缓冲区与网络处理器进行通信。

(2)网络处理器实现网络协议中的3~6层。它实现网络变量处理、寻址、事务处理、文电鉴别、软件定时器、网络管理和路由等功能。网络处理器通过共享存储器中的网络缓冲区与MAC处理器通信,并采用应用缓冲区与应用处理器进行通信。应用缓冲区也是设置在共享存储器中的。对缓冲区的访问都用硬件信号灯来协调,以便在更新共享数据时消除竞争。

(3)应用处理器一方面执行用户编写的应用程序代码,另一方面执行由用户代码所调用的操作系统服务。大多数应用程序均可采用NeuronC语言来编制,使编程工作真正从繁琐的汇编语言中解脱出来。

2.存储器分配

MC143150的外扩存储器接口总线中,有8位双向数据总线、16位处理器驱动的地址总线以及用于外部存储器存取访问的两个接口信号线R/W和E。总的地址空间为64KB,其中有6KB的地址空间保留在芯片内,剩余的58KB的地址空间供外扩存储器使用。在外扩存储器中,通常用16KB存放固件,其余的42KB用于存放用户程序和数据信息。

3.应用I/O口

具有11个引脚的I/O接口提供有34种编程方式,另外,2个16位定时器/计数器可用于频率和定时I/O。由固件产生的15种软件定时器并不占用应用处理器的运算时间,而由完成网络功能的处理器实现。因此,用户可直接使用软件定时器,不必考虑其具体操作。

Neuron芯片提供的11个I/O引脚(IO0~IO10)可通过编程设定为34种不同的I/O对象,支持电平、脉冲、频率、编码等各种信号模式,有直接I/O对象、定时器/计数器I/O对象、串行I/O对象、并行I/O对象等供用户选择。它们与集成的硬件和固件一起可用于连接马达、阀门、显示驱动器、A/D转换器、压力传感器、热敏电阻、开关量、继电器、可控硅、转速计、其他处理器和调制解调器等,方便了实际应用。表1列举了所有I/O对象的基本类型。

表1I/O对象类型参照表

I/O对象类型注释Bitinput/output位输入/输出Bitshiftinput/output位称输入/输出Byteinput/output字节输入/输出Dualslopeinput双积分输入Edgedivideoutput脉冲沿分离输出Edgeloginput边沿跳变时间间隔序列输入Frequencyoutput频率输出I2Cinput/outputI2C输入/输出Infraredinput远红外输入Leveldetectinput电平监测输入Magcardinput磁卡编码输入Magtracklinput经录入1输入Muxbusinput/output多总线输入/输出Neurowireinput/output神经元接口输入/输出Nibbleinput/output半字节输入/输出Oneshotoutput单稳输出Ontimeinput逻辑电持续时间输入Parallelinput/output并行输入/输出Preiodinput周期输入Pulsecountinput脉冲计数输入Pulsecountoutput脉冲计数输出Pulsewidthoutput脉宽输出Quadratureinput位置码盘输入Serialinput/output串行输入/输出Totalcountinput累加计数输入Touchinput/output触点输入/输出Triacoutput触发输出Triggeredcountoutput计数触发输出Wiegandinput维甘德输入

4.通信口

由CP0~CP4组成的`通信接口,允许工作在单端或差分模式,既可直接驱动,也可外接变压器驱动或外接485总线驱动。传输速率的选择范围为0.6kb/s~1.2Mb/s。

5.附加功能

Neuron芯片具有睡眠/唤醒电路、看门狗定时器和服务引脚等附加功能。

(1)Neuron芯片可以在软件控制下进入低耗的睡眠状态,此时,振荡器系统时钟、通道端口所用的定时器/计数器均关闭。但是,所有的状态信息(包括内部RAM中的内容)都保留,这样可以降低系统功耗。

(2)Neuron芯片中的处理器由三个看门狗定时器保护,主要针对软件错误或存储器错误。若系统软件或应用软件不能周期性地复位些定时器,则整个神经元芯片将被自动复位。在10MHz时钟下,看门狗定时器大约持续0.84s。

(3)Service引脚在芯片固件的控制下,为配置和安装含有芯片的节点时使用。该引脚的可编程上拉电阻由应用软件选择。

二、Neuron固件

Neuron芯片的固件主要包括基于OSI参考模型的LonTalk协议、I/O驱动程序、事件驱动的多任务调试程度以及函数库等部分。其中的LonTalk协议具有通用性,支持多种媒体和多种网络拓扑结构,并提供多种服务。LonTalk协议可使控制信息在各种介质中可靠地传输。表2列出了LonTalk与OSI7层协议之间的比较,以及与Neuron芯片中三个处理器之间的关系。

表2LonTalk与OSI7层协议的比较

层号OSI层次标准服务LON提供的服务处理器7应用层网络应用定义标准网络变量类型应用处理器6表示层数据表示网络变量、外部帧传送网络处理器5会话层远程操作请求/响应、认证、网络管理网络处理器4传送层端对端的可靠传输应答、非应答、点对点、广播、认证等网络处理器3网络层目的地址寻址地址、路由网络处理顺2链路层介质访问和数据组帧帧结构、数据解码、CRC差错检测预测、CSMA磁撞回避、选择优先级、碰撞检测MAC处理器1物理层电气连接介质、电气接口MAC处理器

三、NeuronC语言

NeuronC是基于ANSIC并针对LonWorks分布控制的应用,经优化、加强而成的一种程序设计语言。它增强了对I/O支持、时间处理、报文传递等功能,其扩充部分包括软件定时器、网络变量、显式报文、一个多任务调试、EEPROM变量和杂函数等。NeuronC语言提供的主要特征和支持包括以下内容。

(1)一个内部多任务调度程序:允许程序员以一种自然的方式逻辑地表达由事件引发的并行任务,并可以控制任务执行的优先级。

(2)一个Run-Time函数库:调用时执行事件检查、I/O管理、网络信息的接收和传送、Ueuron的多种控制等。

(3)实现对I/O操作显式的控制:通过对I/O对象的说明来定义标准化Neuron芯片特有的多功能I/O。

(4)新一级对象“网络变量”的说明语句:网络变量作为NeuronC语言的对象,无论何时被赋值,其值都可自动地传遍网络。网络变量的引入和使用了节点间的数据共享。

(5)新语句“when”:定义由事件驱动的任务。

(6)支持显式报文传递:实现对基本LonTalk协议服务的直接访问。

(7)一种对毫秒和秒计时器对象说明的语句:它们在停止计数时将会激活用户定义的任务。

利用NeuronC语言提供的支持,可大大控制网络软件的开发和应用,使开发人员几乎感觉不到在网络环境下编程。

四、应用系统的基本组成

图3所示是基于Neuron芯片的应用系统,一般由下述器件构成。

1.Neuron芯片

它主要用于实现LonTalk协议服务,执行节点中的应用程序。

2.收发器

收发器其实是连接Neuron芯片和通信介质之间的接口,可支持比绞线、电力线、无线射频、光纤及红外等多种介质的通信。由于Neuron固件中含有通信协议,因此,该器件的使用对构建网络环境的应用系统十分方便。

3.应用电路

应用电路是连接Neuron芯片的I/O引脚到诸如传感器、执行器、键盘、显示器等I/O设备所需的电子线路。它需要按照不同的应用要求单独设计。此时,只要通过配置I/O对象和编制NeuronC应用程序,就能控制该应用系统的工作,并实现网络环境的通信功能。

从图3所示的应用系统可知:Neuron芯片的I/O口可通过应用电路输入或输出数据,以与外界接口;借助于Neuron芯片固件中的LonTalk协议支持,Neuron芯片的通信口可通过收发器实现与网上其他应用系统的双向数据通信。Neuron芯片的强大功能和组成应用系统的灵活结构,对组建分布式应用系统无疑是相当方便的。

篇3:FPGA芯片APA150及其应用

FPGA芯片APA150及其应用

摘要:APA150是Actel公司推出的第二代基于Flash的可编程FPGA器件系列ProASICPlus中的一种,非常适合替代ASIC用于航空、消费电子、工业控制、网络和通信市场。文章介绍了APA150的主要特点、内部结构、主要性能参数,给出了APA150在通信系统设计中的应用实例。

关键词:APA150FPGAASICFlash

1概述

APA150是Actel公司推出的第二代基于Flash(闪存)的可编程FPGA(FieldProgramableGateArray,现场可编程门阵列)器件ProASICPlus系列中的一种。该系列器件兼具ASIC(专用集成电路)的性能和FPGA的灵活性于一身,因此,可非常经济地替代A-SIC用于航空、消费电子、工业控制、网络和通信市场。ProASICPlus系列产品的主要特点如下:

●系统内可重复编程;

●非易失,采用0.22μm标准CMOS工艺,内置Flash单元,具有安全的非易失代码存储功能,上电即可运行,无需额外配置PROM存储器;

●高度保密,使用者可编程设置多位密钥以阻止外界自行读取或更改器件的配置;

●功耗低?芯片核心电压为2.5V;

●具有与ASIC类似的精细颗粒架构,支持流行的ASIC工具流程,因而可缩短产品上市时间,便于转换到ASIC。

2内部结构和工作原理

APA150主要由逻辑单元块、嵌入式RAM块、I/O块和可编程连线等几个部分构成,块与块之间用不同等级的连接线和Flash开关相连。

逻辑单元是ProASICPlus器件的基本组成单元,用以实现基本的逻辑功能。APA150内部有6144个逻辑单元,每个逻辑单元有三个输入端和一个输出端。通过适当编程配置Flash开关的状态,可将逻辑单元设置成为具有三个输入的、除了异或功能之外的任意逻辑功能块,例如与非门、具有清零或置位端的锁存器或D触发器等。多个逻辑单元互连还可以实现更复杂的逻辑功能。一般的复杂性和随机性设计可在逻辑单元中实现,但为了提高硅片的利用率和器件的性能,一些较为复杂的功能应通过内嵌的随机存储单元来完成。

APA150内嵌16个共36kbits的RAM块(256×9),这些RAM块可以非常方便地实现一些规模不太大的FIFO、双端口RAM等功能。每个RAM块均包含如下3个部分:

(1)数据区;

(2)总线,包括9位输入数据总线(第9位是奇偶极性位)、读和写各8位地址总线和输出数据总线;

(3)读/写控制,读和写可以独立编程配置为同步或异步工作方式,以适应电路设计的灵活性和时序安排。

另外可以根据设计要求级联或堆叠多个RAM块,以得到更大的宽度或深度。因为这些片内存储器的读、写比片外RAM快得多。

I/O块主要用于提供管脚到内部信号线的接口?并负责输入输出的电气特性控制。通过编程配置I/O块可使I/O管脚具有输入、输出、双向缓冲或三态驱动等功能,其内部结构如图1所示。将控制上拉电阻接到每个I/O管脚可以防止器件在非正常工作时管脚出现悬浮;通过控制输出信号的电压摆率可满足低噪声或高转换速度的要求。如将VDDP接到电源,那么,当VDDP为2.5V时,输入电压或输出高电平为2.5V;而当VDDP为3.3V时,输入电压可为2.5V/3.3V,输出电平则与2.5V或3.3V系统兼容。

APA150器件内部遍布一系列四个级别水平和垂直的连接线:其中超高速本地线用于连接相邻逻辑单元;有效长线则可实现远距离和高扇出连接,其长度可以跨越1、2或4个逻辑单元;另外,高速甚长线常用于甚长或甚高扇出连接,它可以跨越整个器件;高性能全局线常用以连接全局管脚到内部的逻辑单元,如分配作时钟、复位的管脚等。

诸多连接线与逻辑单元或其它块的连接状态由上电即可在系统内编程的Flash开关来决定,其结构如图2所示。其中,浮动栅的作用是通过充电或放电来设定连接两个金属线路之间的开关状态。由于可编程器件或开关器件未发生任何物理变化,因此通过材料分析探测不到任何结果。发生变化的只有浮动栅的电子数,因此,基于Flash的APA150比采用其它工艺(如反熔丝)的FPGA更难以反求和复制。

3管脚功能和主要参数

3.1管脚功能

APA150的封装形式有100脚TQFP(薄型四方扁平封装)、208脚PQFP(塑料方型扁平式封装)、456脚PBGA(塑料球栅阵列封装)以及144、256脚FBGA(微间距球栅阵列)封装等形式。使用时可根据所设计的系统选择适当的封装。下面以100脚的TQFP为例介绍其管脚功能,具体如表1所列。

表1APA150的管脚功能

管脚名管脚号

管脚描述

VDD17,37,68,89接2.5V,作为芯片电源VDDP26,39,40,76,87,100接2.5V或3.3V,作为I/O驱动电压I/O2~8,18~24,27~36,41~46,

57~59,69~74,77~85,90~99可用作输入、输出、三态或双向缓冲,作输入、输出时兼容TTL和CMOS电平,不用的输入管脚应接上位电阻GL11,16,60,65全局管脚,可作为低时滞时钟或其它全局信号输入,也可以作为普通I/O使用NPECL13,63除了标准I/O口,APA150芯片还提供低电压正射极耦合逻辑(LVPECL)标准的差分I/O接品,NPECL、PPECL分别为负、正极性输入,二者比较的`结果将送给内部锁相环。不用时空接PPECL15,61TMS49测试模式选择,用于控制边界扫描电路TCK47测试时钟,同时是边界扫描的时钟输入(最大为10MHz)TDI48测试数据输入,作为边界扫描的串行输入TDO54测试数据输出,作为边界扫描的串行输出TRST55测试复位输入,作为边界扫描的异步复位端,低电平有效RCK56运行时钟,编程时用来取代不可靠的TCKVPP52编程器电源,范围是0~16.5V,也可以空接,Actel推荐空接或连接至VDDPVPN53编程器电源,范围是0~-13.8V,也可以空接,Actel推荐空接或接地AVDD14,62内部锁相环电源脚,接2.5V电压,它与地之间应有一个合适的去耦电容以减小噪声;不用内部锁相环时该管脚空接AGND12,64内部锁相环地端GLMA10,66多元全局管脚,可用此管脚作为内部锁相环需要外部环回时的输入,另外也可以作为普通I/O使用GND1,9,25,38,40,51,67,75,86,88接地

3.2主要参数

ProASICPlus系列共有七种产品,其密度从75000到1百万系统门。其中APA150的主要特点如下:

●具有150000个系统门,逻辑单元为6144个;

●内嵌36kB的双端口SRAM的2个锁相环?PLL?内核;

●最大支持242个用户I/O?I/O电压有3.3V和2.5V两种可供选择;

●支持3.3V、32bits、50MHz的PCI总线,系统时钟最高频率为32MHz;

●工作温度:民用温度范围为0~70℃,工业级温度范围为-40~85℃。

4应用实例

图3是笔者以APA150为核心器件设计的CAN总线复接系统。CAN(ControllerAreaNetwork,控制器局域网)是一种多主方式的串行通讯总线,在工业系统中具有广泛的应用。但是它的直接通信距离和通信速率是一对矛盾。本系统借助FPGA/VHDL技术,把15路125kbps的CAN信号复接成2.048Mbps的E1信号,从而利用现有的时分复用通信线路或光纤实现了高速、远距离传输。

PCA82C250是CAN总线的物理接口芯片。16-bit电平转换芯片74LCX16245用于实现15路、5VCAN信号与APA150器件的3.3V输入/输出间的相互转换。APA150则用于完成2MHz的E1信号与15路CAN信号间的分接和复接。而MC100LVELT22与MC100LVELT23则用于实现APA150的低压TTL信号与3.3V低压PECL信号间的转换。光电转换器件采用C-13-155-T3-SSC3B,这是一个3.3V、155MHz、单模光纤收发一体模块。本系统采用基于EDA技术的自顶向下(TOP-DOWN)的设计方法。本设计所采用的工具是Actel公司的集成设计环境LiberoV2.2,它支持VHDL、Verilog语言的顶层设计,同时支持原理图、状态机及流程图等输入,而且还集成了业界领先的设计工具,如仿真和设计验证软件ModelSim、综合软件Synplify、布放软件DesignerR1-2002等。

本系统的核心器件采用基于Flash的APA150。与SRAM工艺的FPGA相比,APA150具有如下优点:

(1)成本低,APA150的价格低于8美元,而且由于APA150具有非易失性,因此不需要用于存储编程数据的PROM,从而节约了成本;

(2)安全性高,一经编程锁定就难以反求,而SRAMFPGA易于复制,安全性不足;

(3)功耗低,其功耗仅是基于SRAM的FPGA产品的1/3到1/2。

与ASIC相比,本系统的研制周期较短,设计成本亦较低,而且具有可重复编程性,因而大大提高了设计的灵活性。

篇4:高精度时钟芯片SDE及其应用

高精度时钟芯片SDE及其应用

摘要:介绍一种内置晶振、充电电池、串行NVRAM的高精度和免调校实时时钟芯片SD2001E。由该芯片构成的时钟电路具有精度高、外围电路和接口电路简单的特点。文中详细描述芯片的主要特性、引脚说明及其工作原理,给出在嵌入式系统中的应用方法、硬件接口电路及应用程序。

关键词:SD2001E 实时时钟 单片机

实时时钟电路在以单片机为核心构成的智能仪器仪表、测控系统、工业控制等领域有着广泛的应用,但现有的时钟电路存在着外围电路(如需外接晶振、电池)和接口电路(并行接口)复杂、功能单一等缺点。SD2001E则是在内部集成了实时时钟电路、串行非易失性SRAM、可充电电池、晶振及电池管理电路的新型实时时钟芯片。该芯片与单片机的接口电路采用工业标准I2C总线,从而简化了接口电路设计。利用该芯片无需扩展任何外围元件,即可构成一个高精度实时时钟及具有256Kb非易失性SRAM的数据存储电路。(本网网收集整理)

1 主要特性及引脚说明

SD2001E时钟芯片的主要特性如下:

*年、月、日、星期、时、分、秒的BCD码输入/输出;

*I2C总线接口(包括实时时钟部分和SRAM部分);

*自动日历到20(包括闰年自动换算功能);

*内置晶振,出厂前已对时钟进行校准,保证精度为±4×10 -6,即时钟年误差小于2min;

*低功耗,典型值为1.0μA(VDD=3.5V);

*工作电压为3.0~5.5V(其中NVRAM在4.5~5.5V工作);

*可设置的两路闹钟输出及32 768Hz~1Hz的方波信号输出;

*可设置的每分钟固定中断输出或选定频率固定中断输出;

*内置充电电路和充电电池,充满一次可保持内部时钟走时时间超过1年以上,可满充电次数达200次;

*内置电源管理电路,当VDD≥3.0V,内部电池不耗电;

*内置稳定电路及电池掉电检测电路;

*内置256Kb的非易失性SRAM,其擦写次数为100亿次,且没有内部写延时。

SD2001E采用24脚DIP封装形式。各引脚的功能如表1所列,其外形及引脚排列如图1所示。

表1 SD2001E引脚说明

引脚号标  廖功    能特  征3TEST测试内部电池电压检测4ON/OFF打开/关闭SRAM,接低电平为打开SRAM,接高电平时关闭此功能引脚主要用来降低芯片整体功耗10~12GND接地 13SCL串行时钟输入脚CMOS输入(与VDD间无保护二极管)14VOUT3.3V稳压输出脚,当VDD≥3.4V时有效可供电流≤30mA,电压精度3.3(1±0.02)V15SDA串行数据输入/输出脚N沟道开路输出(与VDD间无保护二极管)CMOS输入1、2、22

16~18、5~9NC空引脚 19INT1报警中断1输出脚,根据中断寄存器与状态寄存器来设置其工作的模式,当定时时间到达时输出低电平或时钟信号。它可通过重写状态寄存器来禁止N沟道开路输出(与VDD端之间无保护二极管)20SDAESRAM串行数据输入/输出脚开路输出21SCLESRAM串行数据时钟脚CMOS输入23INT2报警中断2输出脚,同INT1 24VDD正电源

2 工作原理

SD2001E内部包括实时时钟与NVRAM两部分,内部原理框图如图2所示。

2.1 实时时钟

SD2001E实时时钟是基于I2C总线的器件,故对该器件的操作必须严格遵守总线时序。当CPU发出起始条件,建立与实时时钟连接后,CPU通过SDA总线连续输出4位器件地址、3位操作指令和1位读/写指令,其格式如下:

DB7DB6DB5DB5DB3DB2DB1DB00110C2C1C0R/W

实时时钟器件的地址固定为“0110”,接下来的3位操作指令构成了对实时时钟部分的8条操作指令,具体指令含义如表2所列。

表2 SD2001E实时时钟指令表

C2C1C0操    作ACK数目000复位00(年),01(月)有,01(天),0(星期)00(分),00(秒)1001状态寄存器存取实时数据1(从年数据开始)存取8011实时数据2(从小时数据开始)存取4100频率事件设置1(INT1脚)3101频率事件2(INT1脚)3110测试模式开始1111测试模式结束1

CPU通过发送不同操作指令,选择相应的'寄存器从而完成相应的操作功能。SD2001E实时时钟部分共包括4个寄存器,分别分别如下:

(1)实时数据寄存器

实时数据寄存器是一个56位的存储器。它以BCD码方式存储,包括年、月、日、星期、时、分、秒的数据,数据格式如图3所示。任何读/写操作或实时数据存取命令都通过发送或接收年数据的第一位“LBS”执行的。

*年数据(00~99):设置最后两位数字(00~99),通过自动日历功能计至2099年。

*月数据(01~12):每月包含天数通过自动日历功能来更改。1、3、5、7、8、10、12为1~31;4、6、9、11为1~30;2(闰年)为1~29;2(普通)为1~28。

*天数(01~31)。

*星期数据(00~06):七进制计数器,对应于星期内每一天来设置。

*小时数据(00~23或00~11):12小时进制,0为AM,1为PM;对于24小时进制,这一位没有意义,但必须设置为“0”或“1”。

*分数据(00~59)。

*秒数据(00~59)与测试标志。

*TEST:在测试模式变为“1”。

(2)状态寄存器

状态寄存器是一个8位寄存器。该寄存器用来显示和设置实时时钟的工作模式,状态寄存器格式如下。

Power:电源标志位,为只读位。

12/24:设置12小时制或24小时制:0为12小时制;1为24小时制。

INT1AE:设置从INT1脚输出的报警中断的状态。设定报警时间并设此位为“1”时INT1寄存器开始有效,0:报警中断输出禁止;1:报警中断输出允许。

INT1ME:确定INT1脚的输出为每分钟边沿中断或每分钟固定中断。为了设为每分钟固定中断输出,应将INT1ME和INT1FE置1。0:报警中断或可选的频率的固定中断输出;1:每分钟边沿中断或每分钟固定中断输出。

INT1FE:设定INT1脚的输出为每分钟固定中断(周期1分钟,占空比50%)或选定频率的固定中断。如果选定频率固定中断输出被允许时,INT1寄存器被认为是频率/事件的数据,0:报警中断或每分钟边沿中断输出;1:每分钟固定中断输出或选定频率固定中断输出。

INT2AE、INT2ME、INT2FE位用于设置从INT2脚输出的报警中断的状态,各位含义同上。

(3)两组报警时间/频率事件设置寄存器

有两组16位报警时间/频率事件设置寄存器,用于设置报警时间或频率事件,由INTxAE与INTxFE控制。设定的AM/PM标志位必须同12小时制或24小时制相对应,否则,设定的小时数将与报警数据不匹配。该寄存器为只写寄存器(x:1或2)。

INTxAE=1时,INT1和INT2寄存器被认为是报警时间数据,与实时数据寄存器中小时和分钟寄存器设置相同。它们用BCD码代表小时与分钟。INT1寄存器内容如图4(a)所示。

INTxFE=1时,INT1与INT2寄存器被视为是频率事件数据(f0~f15位对应频率为32 768~1Hz),对相应位置“1”,则对应频率以“与”的方式输出。INT1寄存器内容如图4(b)所示。

2.2 非易失数据寄存器

SD2001E内部还具有256Kb的非易失性数据寄存器。该存储器是一种性能优良的可擦写100亿次且无内部写延时的数据存储器,可用于保存系统设置参数及采集的数据。

NVRAM的操作方式如下:首先,CPU发出开始信号给SD2001E,然后CPU发出包括4位控制代码,1位读/写指令的8位数据,即“从器件地址”,前4位称为“SRAM器件代码”,固定为“1010”。接下来的3位在这里固定为“000”,从器件地址的最低位为读写控制位,该位为“1”表示对从器件进行读操作,为“0”表示对从器件进行写操作,接下来就可对SD2001E进行读写操作。写操作可分为单字节写操作和连续写操作。读操作有三种操作方式:立即地址读操作、同地址读操作、连续读操作。其操作过程和操作时序与I2C总线SRAM的读写操作相同,这里不再详述。

3 SD2001E在嵌入式系统中的应用

SD2001E可广泛应用于智能仪器仪表系统、水/电/气表等IC卡应用系统、数据采集系统、工业控制系统、测控系统、门禁系统、家用电器等嵌入式应用领域。利用SD2001E可为系统提供以下功能。

(1)实时时钟日历

SD2001E可为系统提供高精度的时钟及日历功能,以满足具有定时数据采集、输出控制、数据保存及定时报警等功能的嵌入式系统需要,同时也可为系统提供时间及日期显示功能。

(2)数据保存

嵌入式系统一般均需要涉及到系统设置参数及采集数据保存的问题。通常的做法是,通过扩展1片E2PROM芯片来保存设置参数及采集的数据,但E2PROM存在擦写寿命有限及数据存储的可靠性不高等问题;而利用SD2001E片内32KB、擦写数为100亿次的高性能NVRAM,则几乎不用考虑存储器的擦写寿命及数据存储的可靠性问题。因而,SD2001E为需频繁读写数据的应用领域提供了很好的解决方案。

(3)频率输出

对于需要固定频率输出或需要以ms或s为单位的定时应用领域,可以通过设置频率事件数据给INT1寄存器,并置INT1ME位为“0”和INT1FE位为“1”。此时,从INT1引脚将输出频率为32 768Hz~1Hz的固定频率,利用单片机的计数器或中断次数软件计数的方法可得到以ms或s为单位的任意时间输出。

(4)定时输出

当系统需要以分钟为基本单位的定时输出时(如采集周期固定的多路数据采集、巡回检测系统等),可将SD2001E状态寄存器的INT1ME位置为“1”,INT1FE位置为“0”,以选择为每分钟边沿中断输出或将INT1ME、INT1FE位同时置“1”选择为每分钟固定中断输出。通过单片机的计数器或中断次数软件计数的方法,可得到以min为单位的任意时间输出。

(5)定时报警

对于具有定时报警输出要求的系统,可通过SD2001E的INT1寄存器来设置报警时间(小时和分钟数据),并将状态寄存器中的INT1AE位置为“1”、INT1ME位及INT1FE位置为“0”来实现。需要指出的是SD2001E定时报警中断为每天一或二次。对于需要用到长时间定时的报警系统,如每月或每年一次的报警系统,可通过软件编程的方法设定报警中断的时间。

图5 SD2001E与单片机硬件连接

4 具体应用与软件编程

下面以AT89C52单片机为例,给出SD2001E与单片机的典型接口电路。由于AT89C52单片机没有I2C总线接口,故这里使用AT89C52的P3.3、P3.4口线,来模拟I2C总线,其中SDA与P3.4相连,SCL与P3.3相连。SD2001E内部SRAM的I2C总线接口SDAE与SDA并联,SCLE与SCL并联。此外,为了实现定时报警中断输出的功能,还将SD2001E INT1端与单片机的INT0外中断端相连,具体的硬件连接电路如图5所示。网络补充版(收集整理)给出与上述硬件电路对应的子程序,包括SD2001E初始化子程序,实时时钟数据读、写子程序与INT1中断输出子程序。程序采用模拟I2C总线软件包编制。

由于SD2001E高精度时钟日历芯片将可充电池、晶振充电电路及256Kb的NVRAM集成在了一起,又采用了简单的I2C总线接口,因而该器件无需扩展任何外围元件就可构成一个功能完善的时钟日历电路,同时又可为系统提供一个容量为32KB的高性能非易失性数据存储单元,故该器件是嵌入式系统时钟电路的良好选择。

篇5:高性能DDS芯片AD9954及其应用

高性能DDS芯片AD9954及其应用

摘要:AD9954是美国AD公司采用先进的DDS技术生产的高集成度频率合成器,它能产生200MHz的模拟正弦波。文章介绍了AD9954的基本特点和引脚功能,分析了其内部结构和工作原理,给出了AD9954在高速调制信号系统中的应用方案。

关键词:AD9954  串行操作  RAM  高速调制

1 概述

AD9954是采用先进的DDS技术开发的高集成度DDS器件。它内置高速、高性能D/A转换器及超高速比较器,可用为数字编程控制的频率合成器,能产生200MHz的模拟正弦波。AD9954内含1024×32静态RAM,利用该RAM可实现高速调制,并支持几种扫频模式。AD9954可提供自定义的线性扫频操作模式,通过AD9954的串行I/O口输入控制字可实现快速变频且具有良好的频率分辨率。其应用范围包括灵敏频率合成器、可编程时钟发生器、雷达和扫描系统的FM调制源以及测试和测量装置等。AD9954的内部结构如图1所示,其主要特性如下:

●内置400MSPS时钟;

●内含14位DAC;

●相位、幅度可编程;

●有32位频率转换字;

●可用串行I/O控制;

●内置超高速模拟比较器;

●可自动线性和非线性扫频;

●内部集成有1024×32位RAM;

●采用1.8V电源供电;

●可4~20倍倍频;

●支持大多数数字输入中的5V输入电平;

●可实现多片同步。

图1

2 引脚说明

AD9954采用48脚TQFP/EP封装,其引脚排列发图2所示,各引脚定义如下:

I/O UPDATE:在该引脚的上升沿可把内部缓冲存储器中的内容送到I/O寄存器中。引脚电平的建立和保持与SYNC-CLK输出信号有关;

DGND和AGND:数字地与模拟地;

OSC/REFCLK和OSC/REFCLK:参考时钟或振荡输入端:

CYRSTAL OUT:振荡器输出端;

CLKMODESELECT:振荡器控制端,为1时使能振荡器,为0时不使能振荡器;

LOOP_FILTER:该引脚应与AVDD间串联一个1kΩ电阻和一个0.1μF电容;

IOUT和IOUT:DAC输出端,使用时应接一个上接电阻;

DACBP:DAC去耦端,使用时应接一个0.01μF的旁路电容;

DAC_RSET:DAC复位端,使用时应通过一个3.92kΩ的电阻接至AGND端;

COMP_OUT:比较器输出端,可以输出方波或脉冲信号;

COMP_IN和COMP_IN:比较器输入端;

PWRDWNCTL:外部电源掉电控制输入引脚;

(本网网收集整理)

RESET:芯片复位端;

IOSYNC:异步串行端口控制复位引脚;为1时,当前I/O操作立即停止;为0时开始新的I/O操作;不用时,此引脚必须接地;

SDO:采用3线串口操作时,SDO为串行数据输出端。采用2线串口操作时,SDO不用,可以不连;

CS:片选端,低电平有效,允许多芯片共用I/O总线;

SCLK:I/O操作的串行数据时钟输入端;

SDIO:采用3线串口操作时,SDO为串行数据输入端,采用2线操作时,SDO为双向串行数据端。

DVDD_I/O;I/O电源,可以是1.8V或3.3V;

SYNC_IN:同步多片AD9954输入信号,使用时与主AD9954的SYNC_CLK的输出相连;

SYNC_CLK:时钟输出脚,为内部时钟的1/4,可用作外围硬件同步;

OSK:在编程操作时可用该脚来控制幅度与时间斜率,与SYNC_CLK同步;当OSK不能被编程时,此脚接DGND;

PS1和PS0:可用来选择4个RAM段控制字区中的一个。

3 AD9954的串行操作

在AD9954的串行操作中,指令字节用来指定读/写操作和寄存器地址。由于串行操作是在寄存器级别上发生的,因此串行端口控制器应能识别指令字节寄存器地址和自动产生适当的寄存器字节地址。在串行操作指令阶段和通信阶段,一般先传送指令阶段的指令字,指令阶段对应于SCLK的前8个上升沿,其对应的指令字(8比特)包含了以下信息:

MSBD6D5D4D3D2D1LSBR/WXXA4A3A2A1A0

其中R/W位用于决定指令字后的操作是读还是写,高电平为读出,低电平为写入;6、5位的电平高低与操作无关;4~0位则对应于A4~A0,表示操作串行寄存器地址,该地址信息同时包含了与该指令字所在指令段对应的通信段的传送字节数。指令阶段后接着是通讯阶段,传送对应于字节数的几个通信周期。

通信周期完成后,AD9954的串口控制器即认为接下来的8个SCLK的'上升沿对应的是下一个通信周期的指令字。IOSYNC引脚为高时将立即终止当前的通信周期,而当IOSYNC引脚状态回到低电平时,AD9954串口控制器即认为接下来的8个系统时钟的上升沿对应的是下一个通信周期的指令字,从而保持通信的同步。

AD9954的串行操作有两种数据传送方式,即从最高位开始传送和从最低位开始传送,这是由控制寄存器0的第8位来决定的。默认状态为低电平,此时先传送最高位,若为高电平则先传送最低位。串行操作的读/写时序如图3所示。

4 AD9954的RAM

AD9954内部的1024×32静态RAM具有双向单一入口,对它进行的读/写操作不能同时进行,写操作优先。RAM的使能位是CFR<31>(控制功能寄存器31位),此位为低时,对RAM的操作只能通过串行端口;此位为高且CFR<30>为逻辑0时,RAM的输出为相位累加器的输入,此时给芯片提供的是频率转换字;此位为高且CFR<30>为逻辑1时,RAM的输出可作为相位偏移加法器的输入给芯片提供相位偏移控制字。写RAM的操作首先通过控制PS1、SP0来选择RAM段。然后再对相应的RAM控制寄存器写RAM操作的地址变化率、起始地址、终止地址、模式控制和停留方式位。RAM段控制寄存器的5、6、7位可用来指示RAM操作的5种模式,即直接转换模式、上斜坡模式、双向斜变模式、连续双向斜变模式和连续循环模式。其中连续循环模式是使能RAM,RAM模式控制字为100,这种模式可提供自动、连续、单向的扫频,地址发生器从起始地址开始,当其增加到终止地址后会自动回到起始地址重新开始下次循环。

RAM段控制寄存器的39~24位可定义RAM控制器在每个地址停留的SYNC_CLK的周期数,取值范围是1~65535;9、8、23~16位用于定义10位终止地址;3~0、15~10位则用于定义10位起始地址。

5 在高速调制系统中的应用

调制信号对干扰有较强的抵抗作用,同时对相邻信道的信号干扰也较小,并具有解调方便且易于集成等优点,因此数字调制信号系统可广泛应用于现代通信设备及科研教学仪器中。由于受频率精确度、稳定度和范围等因素的制约,提高数字调制方式中的FM速度是难点,用高性能DDS芯片AD9954可以很好的解决这个问题。AD9954具有良好的频率分辨率和快速、连续的变频能力,它内部有静态RAM,能实现高速数字调频。

数字调制信号系统的框图如图4所示。本系统采用DSP作为控制电路的核心,来向AD9954写命令字,AD9954将产生所需频率的正弦或调制信号,并经低通滤波器后输出。

AD9954的串口与DSP相连,DSP通过AD9954的CS、SCLK、SDIO和SDO管脚向AD9954写入数据和控制字。首先设置特定的寄存器控制字,以允许RAM工作,接着将RAM输出作为相位累加器的输入给芯片提供频率转换字,然后写好RAM段控制寄存器的值,定义好起始地址、终止地址并选择好工作模式。例如,在RAM地址256~511中写入计算好的频率值,主要操作过程如下:

(1)允许RAM操作,清除CFR<30>;

(2)选择模式5即连续循环模式;

(3)选择RAM段1,PS0=1,PS1=0;

(4)指令字节为00001001;

(5)定义通信阶段的通信周期数为256,把数据写入RAM存储器地址256~511中;

(6)改变I/O UPDATE启动模式工作。

本系统可由地址的变化速率来计算调制速度,地址变化速率RAM段控制寄存器中的地址变化率控制字决定,其值的范围是1~65535,定义的时间是SYNC_CLK的周期数。由于SYNC_CLK最大为100MHz,从而决定了地址变化率控制字为1时能定义的最快速度为100MHz,假设一个波形要采集256个点,那么调制速度为100 MHz/256=400kHz;如果采样点为100个,则调制速度可达100 MHz/100=1 MHz。由于AD9954产生的调制波形采样点多,采样时间精确,因此波形性能较好。

6 结束语

高性能DDS芯片由于其AD9954内部集成有RAM,因此,利用RAM的存储功能,能够产生频率分辨高,波形性能好,调制速度高达1 MHz的调频波,该速度是其他DDS芯片的几十~几百倍,因而可广泛应用于数字调制系统的设计之中。

篇6:PCI接口芯片s5935及其应用

PCI接口芯片s5935及其应用

摘要:s5935是AMCC公司生产的 PCI接口芯片,可实现直通(PASS-THRU)、邮箱(MAILBOX)、FIFO/DMA三种工作方式。文章简要介绍了这三种工作方式,并给出了s5935的WDM驱动编程。

关键词:PCI WDM s5935

PCI局部总线由于具有高速率以及支持即插即用等特点在微机系统中得到广泛应用。利用PCI接口芯片可以方便地设计PCI规范板卡。s5935是AMCC公司s59xx系列PCI接口芯片中的一种。该芯片功能强大,可用于高速数据采集处理卡、视频加速卡以及多媒体通信等。其主要特点如下:

●兼容PCI2.1规范,可实现PCI总线主设备和从设备功能;

●具有高达132MB/s的传输速率;

●支持8/16/32位外加用户总线;

●可选nvRAM和扩展BIOS;

●具有直通、邮箱、FIFO/DMA三种工作方式;

●适于32位5V电平PCI卡,具有160脚PQFP和208脚TQFP两种封装。

(本网网收集整理)

1 s5935的结构

图1所示是s5935的内部结构框图。s5935中的寄存器分为PCI配置寄存器组和操作寄存器组。前者可从nvRAM的40h~7fh位载入,也可以是默认值,s5935只能实现首部类型0和单功能设备配置。后者用于s5935与外加总线的`操作配置和数据传输(如中断控制,邮箱入口等),从PCI总线访问时称为PCI操作寄存器组,地址为PCI操作寄存器基址加各寄存器偏移地址;而从外加总线访问时,称为外加总线操作寄存器组,可通过ADR[6:2]选择。

s5935的引脚接口分为PCI总线接口、外加总线接口和nvRAM接口。外加总线接口包括中断、复位输出、数据总线及控制引脚,这三种工作方式各有其独立的控制引脚。

2 s5935的工作方式

s5935具有直通、邮箱和FIFO三种工作方式,其中直通方式(Pass-Thru)可以实现PCI总线对外加总线的实时读写,它可对PCI总线读写时序直接响应;邮箱方式(MAILBOX)可通过PCI总线与外加总线的一方读/写邮箱,另一方接收中断/查询并写/读邮箱;以上两种工作方式只能在s5935作为PCI从设备时实现。 而FIFO方式则可使其作为总线主设备来启动DMA数据传输。在典型的PCI数据处理卡中,可用s5935作为PCI接口通过DSP处理数据,同时使用FPGA完成DSP与s5935间的逻辑转换;邮箱或直通方式用于主机和DSP之间的命令和参数传输,FIFO/DMA方式则可完成高速批量数据传送。下面是s5935的PCI配置及三种工作方式在Win-dows2000下的WDM驱动程序(DDK编程)。

2.1 s5935的PCI配置

PCI配置寄存器格式可参考PCI协议文档。如果不使用nvRAM加载s5935的PCI配置寄存器,将无法实现FIFO和直通工作方式。PCI配置寄存器中的基址寄存器BASE ADDRESS 0对应于PCI操作寄存器的基地址;BASE ADDRESS 1至4则分别对应于四个直通通道地址(无nvRAM时默认为0)。上述基址寄存器的内容可由系统在初始化时查询以确定映射方式(I/O或内存映射)、直通通道位宽和地址范围,然后由系统写入物理地址,这种具体配置方法比较麻烦(见参考文献1和2)。同时,nvRAM的45h字节的第5、6位必须置0以使能FIFO操作。

2.2 直通方式

s5935提供有四条直通通道,可以实现单周期和突发数据传送。在主机驱动程序中,读写直通通道地址可实现数据传输,如:

WRITE PORT USHORT?BASE ADDRESS 3+OFF-SET ADDRESS,DATA?;

s5935外加总线接口部分相关引脚:

PTATN: 输出,直通周期开始;

PTNUM?1?0?: 输出,指示四个直通通道之一;

PTBE?3?0?: 输出,DQ?31?0?字节使能;

PTWR: 输出,读写选择;

PTADR: 输入,OFFSET ADDRESS从直通地址寄存器驱动至DQ?31?0?;

PTRDY: 输入,表明外加总线完成传输;

ADR?6?2?: 输入,选择外加操作寄存器;

2.3 邮箱方式

s5935有输入、输出邮箱各四个,多采用中断/查询方式传输数据,外加总线则可由ADR?6:2?和IRQ等引脚实现。中断控制/状态寄存器用于实现中断的使能配置、查询和清除,邮箱状态寄存器可查询邮箱状态,通过控制/状态寄存器可使邮箱复位。还可以通过EA?0?8?脚直接读写外加总线4号输出邮箱的第三字节,这也是直连外部中断的一种简单方法。在Windows2000下,其典型WDM驱动程序中断相关部分模型如下(地址I/O映射):

AddDevice//加载设备

? ……

IoInitializeDpcRequest();

……?

DispatchPNP ? ? //

?……

case CmResourceTypeInterrupt:

GetInterruptRes??; //取得中断资源

……

WRITE PORT ULONG(BASE ADDRESS 0+INTCSR,DISABLE INT DWORD) ;//禁止中断

IoConnectInterrupt???

……?

DeviceControl()//实现应用程序中DeviceIOCon-trol函数对设备的读写

? ……

switch?CONTROLCODE??……

case ENABLE INTERRUPT: //使能和配置

中断方式

WRITE PORT ULONG(BASE ADDRESS 0+INTCSR,INT MASK DWORD);

case WRITE DATA:

WRITE PORT ULONG(BASE ADDRESS 0+INCOMING MBOX2 ADDRESS,DATA);

}

……}

InterruptHandler? ? //中断服务函数

{ ……

DWORD= READ PORT ULONG(BASE AD-DRESS 0+INTCSR)?//查询是否使本设备产生的中断及本设备以何种方式产生中断

……

DWORD=READ PORT ULONG(BASE AD-DRESS 0+PCI INCOMING MBOX2);//假设2号邮箱收到数据产生此中断

WRITE PORT ULONG(BASE ADDRESS 0+INTCSR,DEASSERT INTERRUPT WORD);//清中断

……

IoRequestDpc();//调用DpcForISR函数,完成可推迟的中断服务

……?

DpcForISR? ? ?……?

2.4 FIFO方式

s5935的两条FIFO,分别对应于读、写外加总线,它们可根据读写方向由s5935自动选择。当外加总线作为主控设备时,使能AMREN(外加总线主控读使能)和AMWEN(外加总线主控写使能)引脚即可启动FIFO/DMA传输,同时可通过相应的引脚或寄存器得到FIFO状态并复位FIFO。当从PCI总线进行s5935主控FIFO/DMA传输时,首先应在中断配置寄存器中写endian格式和中断方式,然后写地址和计数寄存器,最后写PCI控制/状态寄存器(MCSR)并启动DMA, 在Windows2000下的驱动程序步骤如图2所示,具体编程可参考邮箱方式。

篇7:ST7536的电力载波网络的路由算法研究

ST7536的电力载波网络的路由算法研究

摘要:法国ST公司的ST7536是一个半双工、同步FSK调制解调器芯片。它专为低压电力线传输而设计,较好地克服了低压电力载线波传输中的技术问题。但是在实际应用中,电力载波网络的通信距离均无大于其芯片的通信距离,所以必须使用相应的算法来补偿,从而更好地应用于实际当中。本文介绍一种简单可行的路由算法。

关键词:ST7536 电力线载波 数据通信 网络 路由算法

引言

随着现代化进程的不断发展,能够大量节约人力物力的自动化系统得到广泛的应用,电力载波技术就是在这一形式下推出的一项技术。电力线载波(PLC)是电力系统特有的、基本的通信方式。电力线载波通信是指利用现有电力线,通过载波方式将模拟或数字信号进行高速传输的技术。由于使用坚固可靠的电力线作为载波信号的传输媒介,因此具有信号传输稳定可靠、路由合理、可同时复用远动信号等特点,是唯一不需要线路投资的有线通信方式。电力线载波通信技术可以进行模拟(语音信号)或数字信息(如家居控制信号)的半双工传输,可广泛应用于家居自动化、小型办公室、家庭办公室通信(如互联网、内部信件、游戏、音频、视频)等领域,具有节省费用、安装方便、应用广泛等特点。

图1

作为通信技术的一个新兴应用领域,电力载波通信技术以其诱人的前景及潜在的巨大市场而为全世界所关注,成为世界各大公司及研究单位争相研究的热点。国外许多著名公司和研究单位,如Intellon、Thomson、Atmel等,都在外此进行研究,并开发出相应的器件和产品;而国内的许多企业也紧随国际步伐,在利用电力线传输信息,特别是在远程抄表及远程控制系统方面已逐步形成应用研究的热点。

1 ST7536简介

ST7536是单芯片Modem,有28个引脚。ST7536芯片的集成度很高,只需要较少的外部元件来完成所有操作:1个晶振,4个电阻和5个电容。表1给出其各主要引脚的功能。

表1 ST7536主要引脚说明

引  脚名  称

说         明

1Rx/Tx发送或接收模式选择输入2RESET逻辑复位和电源关闭模式输入,低有效5RxD同步接收数据输出6CLR/T和功能模式相关的发送接收时钟输出7RxDEM解调后的数据输出12TxD发送数据输入15CHS信道选择输入16AFCF波特率选择输入17DVSS自动频率控制输出,连接外部补偿电路19DEMI中间频率滤波器输出20AVSSFSK解调输入24RAI接收模拟输入25RxFO接收滤波器输出26TXFI发送滤波器输入(TEST4为高时被选中)27ALCI自动等级控制输入28ATO模拟发送输出

ST7536属于半双工同步调制解调集成电路,采用低成本的同步FSK调制方式。它有两种工作方式:接收和发送数据。工作方式是由Rx/Tx控制输入端决定的,数据的输入输出与时钟相关联。此时钟信号由ST7536产生。当ST7536工作于发送方式时,发送的数据(TXD)在时钟的正沿被抽样,然后进入FSK调制器。它的工作频率是由时间基准和控制逻辑来设定的。在正常工作状态,信号混合电路决定送至发送滤波器的FSK调制信号。此滤波器是一开关型的电容带通滤波器。

在接收方式时,信号通过接收模块输入端(RAI)进入,被接收信号经过接收带通滤波器滤波。接收滤波器与发送滤波器一样,也是开关电容滤波器,也用自动频率控制电路来将此滤波器设定于正确的工作频率上。经过放大之后,此接收信号频率向下变换并经中频带通滤波器滤波,得到的信号送至FSK解调器。中频滤波器(IFQ)输出和FSK解调器输入(OEMI)间的耦合是由外部的电容来完成的',它滤除了失调电压。时钟恢复电路从FSK解调器的解调输出中接收时钟信号(CLR/T)。同步接收的数据在时钟正沿被传送。

ST7536的内部功能结构如图1所示。

ST7536符合DH028/29ENEL、欧洲CENELECEN50065-1标准以及美国的FCC规定。一个由ST7536作电力载波通信芯片的系统是由微处理器、接口电路和ST7536本身组成的系统,系统结构如图2所示。

(本网网收集整理)

2 路由算法的实现

路由器是网络层的互联部件,可提供比网桥更丰富、灵活的网络互联功能,是目前使用最多的网络互联部件之一。路由算法是用软件方法实现路由的功能。

路由算法的工作原理及操作过程主要包括下面几点。

①接收数据包,并将数据包进行分解。当路由器接收到数据包之后,要先验证其合法性,然后把报头、报文和校验字节分离开来。最后再根据报头的不同,选择进行什么操作。

②对IP数据包进行处理。当接收到有效的报文时,路由器必须决定该数据是本地提交还是向前转发。当IP广播或多播时,也可能是一种混合的情况。对这些情况的判断,主要根据下面三个规则进行处理:

*当IP数据包中有一个源路由选项时,它将被转发而不进行本地提交;

*当IP目的地址或其非转发多播地址中的某一个地址与数由器的某个端口地址相符时,将进行地提交;

*当IP目的地址是一个广播地址,或者是个既要转发又要本地提交的多播地址时,将同时进行两个操作。

③转发寻址。当路由器决定要转发一个IP数据包时,先要确定下一个路由器的地址。如果数据包中包括路由器选项而且验证其合法时,则下一个路由器地址可取自自身列表中的一项,而源地址应该是写成广播源的地址。

④转发验证。在转发之前,路由器应该对数据包进行一些校验工作,而只有验证无误的时候才能进行转发,否则将数据包抛弃而重新提示数据包的广播源重发。这里的校验分两个部分:一个是IP的验证,看是否接收到的数据包目标IP符合要求;二是具体数据的验证,看校验得到的数据是否有误(笔者使用的是CRC校验方式)。

⑤同步字节的设置。这一项在通常的路由算法中并不存在,但是在笔者使用的ST7536芯片通信中需要强调使用。因为该芯片是以同步传输方式工作的,为了保证其通讯数据的正确传输,要首先在报文前面加1~2字节的同步字节位。

由于电力载波网络的采集器与集中器之间的距离在实际应用中远远超过最大通信距离,所以必须使用路由算法来弥补这个缺点。

由于载波网络的硬件十分固定,而且相对来说传输的数据也比较少,所以我们使用路由算法中的中继器方式和静态路由表算法。

图3为电力载波网络通信原理。图中的采集器1、2可以直接和集中器进行通信,而采集器3、4、5由由于通信距离过远不能直接和集中器进行通信,因而要利用采集器1、2作为中继器间接与采集器进行通信。采集器1、2中安放的静态路由表中分别为采集器3和采集器4、5的地址。

在载波网络当中,传输数据包的格式按照现场总线的规定方式:

图4给出采集器的1的中继器算法流程。

图4

其中需要注意的是,无论是采集器还是集中器,如果校验位与校验结果不一致的话,要提示发送包的单元重新发送数据包,直至二者结果一致为止。这一点在流程图中没有被强调。

结语

与扩频载波产品(如SSC P300等)相比,尽管ST7536的通信速率与通信距离受到一定的限制;但是由于其具有较好的稳定性与可靠性,因此在国内电力载波市场仍具有很大的份额,对它的应用研究仍然具有重要的理论与实际意义。

本文给出了在基于ST7536的电力载波的通信网络中,为了克服芯片的通信距离离不够而需要用到的一种相对简单的路由算法。应用该算法可以使电力载波网络的通信距离大大算法,从而提高电力载波芯片的应用范围,具有较高的应用价值,特别是在小区自动抄表系统的实际应用当中有着较好的效果。

大功率电力电子技术的应用

电力负荷控制系统应用论文

芯片融资计划书

实验报告芯片解剖实验报告

芯片买卖合同5篇

芯片买卖合同范文

芯片买卖合同大全

芯片买卖合同模版

通用异步串口扩展芯片GM8123/25的原理和应用

怎么理解窦性心律st改变呢

电力载波芯片ST7538及其应用(共7篇)

欢迎下载DOC格式的电力载波芯片ST7538及其应用,但愿能给您带来参考作用!
推荐度: 推荐 推荐 推荐 推荐 推荐
点击下载文档 文档为doc格式
点击下载本文文档