CS5460A 芯片与其在功率测量的一种应用
曾智刚, 周岳松, 谢晨
(广东工业大学 广东 广州 510090)
摘 要: 介绍了CS5460A 的特点及其管脚功能, 给出外围应用硬件原理图, 分析并给出芯片应用的读写程序。
关键词: CS5460A ; 特点功能; 硬件运用; 读写程序
中图分类号: T P36811 文献标识码: B 文章编号: 1004 373X (2004) 05 100 03
CS5460A and Its Appl ica tion in Energy M ea surem en t
ZEN G Zh igang, ZHOU Yuesong, X IE Chenyang
(Guangdong U niversity of Techno logy, Guangzhou, 510090, Ch ina)
Abstract: T h is paper in troduces the techn ique featu re of ch ip CS5460A as w ell as the function of each p in, show s the ex terio r
app licat ion hardw are simp lified schem atic, analyzing and giving read and w rite p rogram 1
Keywords: CS5460; featu re and function; app lying of hardw are; read and w rite p rogram 1
收稿日期: 2003 11 04
1 引 言
CS5460A 是美国C irru s L ogic 公司最新推出的带
有串行接口的单相双向功率ö电能计量集成电路芯片,
现主要应用在单相电子式电能
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
和三相电子式电能表
中。不同于以前流行的CS5460 芯片, 该芯片特有的自
动引脚模式功能, 能使芯片独立工作, 得电时自动初
始化, 由外部的 E2PROM 引导开始工作, 并从中读取
数据, 如果用于高容量或用在家庭, 为了降低成本, 此
模式下, 该型芯片可以不用微控制器独立工作。除此
之外, 该芯片的性能优于其他计量芯片, 主要表现在:
(1) 转换精度高, 测量功能强
自身转换精度达到 011 级, 可以实现 012 级的测
量仪表。可测量瞬时电流、瞬时电压、瞬时功率、电
流有效值、电压有效值、功率有效值和电能计量, 这
在电力系统的测量芯片中是不多见的。
(2) 外围器件少, 具有片内看门狗定时器 (W atch
Dog T im er) 与内部电源监视器
该芯片只用很少的外围器件即可实现转换功能,
确保了仪表的转换精度及稳定性。
(3) 接口方便
器件本身形成双向串行接口, 双向串行接口与内
部寄存器阵列可以方便地与微处理器相连接, 并有功
能很强的内部寄存器数组, 仅用 5~ 6 根连线即可方便
地与单片机接口; 针对这些特点, 选用了CS5460 芯
片, 收到了很好的效果。本文着重介绍CS5460 芯片的
基本功能与运用, 根据时序, 给出所采用读写方法的
一些体会以及硬件实现原理图。
2 芯片管脚的功能
1 脚XOU T: 晶体振荡器输出。
2 脚CPU CL K: CPU 时钟输出。CPU CL K 片
上振荡器的输出, 可以驱动一个标难的CM O S 负荷。
3 脚VD + : 数字电路电源正极。以D GND 为参
考, 一般为+ 5 V ±10%。
4 脚D GND: 数字地。数字接地, 与VA - 具有相
同的电平。
5 脚 SCL K: 串行时钟输入。该脚确定 SD I和 SDO
引脚的输入和输出速率。此输入具有一个允许使用边
沿缓慢的信号的施密特触发器。只有当 CS 低时,
SCL K 引脚才识别时钟。
6 脚 SDO : 串行数据输出。SDO 是串行数据端口
的输出引脚, 当CS 高时, 其输出将处于高阻抗状态。
7 脚CS: 片选。当处于低电平时, 端口可以识别
SCL K。该脚高电平状态使 SDO 引脚处于高阻抗状
态。CS 应在 SCL K 处于低电平时改变状态。
8 脚 M OD E: 模式选择。当处于高电平时
CS5460A 开始执行自导入序列, 从外接 E 2PROM 读
取命令和设置。当处于低电平时CS5460 运行在常规
命令模式。引脚不连接时下拉为逻辑低电平。
001
曾智刚等: CS5460A 芯片与其在功率测量的一种应用
9 脚V IN + : 差分电压正输入端。
10 脚V IN - : 差分电压负输入端。V IN + , V IN -
为电压通道的差分模拟输入引脚。
11 脚V R EFOU T: 参考电压输出。芯片上的参考
电压由该引脚输出, 参考电压的标称值为 215 V (以
VA - 引脚为参考)。
12 脚V R EF IN : 参考电压输入。该引脚输入的电
压给芯片上的调制器提供参考电压。
13 脚VA - : 模拟地负极。负模拟电源引脚, 必
须具有最低的电压。
14 脚VA + : 模拟电源正极。以VA - 为参考, 通
常为+ 5 V ±10%。
15 脚HN - : 差分电流负输入端。
16 脚HN + : 差分电流正输入端。HN - , HN +
为电流通道的差分模拟输入引脚。
17 脚 PFM ON : 电源掉电监视输出。PFM ON
掉电监视器, 用来监视模拟电源, 相对于VA - 引脚的
典型阀值电平为 215 V , 具有±50 mV 的滞环。如果
PFM ON 的电压低于阀值, 则状态寄存器的L SD (低
电源
检测
工程第三方检测合同工程防雷检测合同植筋拉拔检测方案传感器技术课后答案检测机构通用要求培训
) 位将被置位。
18 脚N C: 空脚。该引脚保持悬浮态。
19 脚R ESET: 复位输入。R ESET 当复位引
脚为低电平时, 所有内部寄存器都被设置为缺省值。
20 脚 IN T: 中断输出。当 IN T 变低时, 表明一个
允许的事件已发生。可以通过向CS5460A 写入适当命
令来使 IN T 清除 (逻辑 1)。
21 脚 EOU T: 电能脉冲输出。EOU T 电量输
出引脚, 输出一个脉冲宽固定、频率 (可编程) 和电
能成比例的脉冲串。
22 脚ED IR: 能量方向指示输出。如果测量到的电
能是负值, 电能方向指示器发出指示。
23 脚 SD I: 串行数据输入。SD I是串行数据接口的
输入引脚。数据的输入速率由 SCL K 决定。
24 脚X IN : 晶体振荡器输入。XOU T , X IN
芯片内的一个门电路与这些引脚相连, 可连接晶体为
芯片提供系统时钟。另外, 也可以有外部时钟 (与
CM O S 时钟兼容) 驱动引脚X IN , 为芯片提供系统时
钟。
3 软硬件实现
311 硬件部分
图 1 是一台电压电流功率测试仪有关CS5460A
的外围原理图, 单片机采用的是 A TM EL 公司的
M EG8 芯片。该芯片是一款高性能、低功耗的R ISC 结
构的 8 位机, 在 16 M H z 下, 最高能完成 16 M IöS 的
数据处理能力, 只需要 2 个时钟的硬件乘法器内置 8
kb FLA SH ROM , 1 kb SRAM , 使用C 语言编程更容
易, 独特的加密
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
等优异特性 (由于篇幅限制图中
只给出与M EG8 的连接)。运放采用 7650 芯片, 具有
零飘小、精度高等特性。效果胜于现在普遍采用的
O P07 运放芯片。
另外, 在参考电压输入上采用了LM 336 芯片, 无
论是温飘, 还是零飘都比原来直接与芯片参考电压输
出端相连要在精度上高出许多, 提高了测量的精确度。
图 1 CS5460A 芯片极其外围电路
312 软件部分
CS5460A 的串行接口部分集成了一个带有发送ö
接收缓冲器的状态机, 状态机在 SCL K 上升沿解释 8
位命令字。根据对命令的解码, 状态机将执行相应的
操作, 或者为把寻址的内部寄存器的数据传送到发送
缓冲区, 写操作在数据传输前要等 24 个 SCL K 周期。
通过寄存器读ö写命令, 数据可被写入或从CS5460A
中读出, 图 2 和图 3 为读、写时序。
图 2 CS5460A 的写时序
图 3 CS5460A 的读时序
101
《现代电子技术》2004 年第 5 期总第 172 期 仿真与测试
数据的读、写通过向串口 SD I 引脚写入相应的 8
位命令字 (高位在前) 来启动。需要注意的是: 一些
命令字在执行时受周期计数寄存器和配置寄存器内容
的影响, 需要先对周期计数器和配置寄存器内容进行
正确设置。寄存器写指令后必须跟 24 位数据, 先写命
令字启动写操作, 然后随着 24 个连续的串行时钟脉
冲, CS5460A 将从串行输入引脚 SD I 接收串行数据,
一旦收到数据, 状态机便将数据写入配置寄存器并返
回到命令模式。寄存器读指令可以终止在 8 位的边界
上。通过 SD I引脚写入命今后, 可从 SDO 引脚读出数
据, 根据CS5460A 的时序特点, 尤其值得注意的是, 在
读取数据的同时必须向 SD I口写一个 0xFE 字节, 本
文软件部分采用C 语言编程, 他较之汇编语言可读
性、可移植性都比较强, 是可实现汇编语言中对硬件
的操作等一些功能的高级语言, 具有高级语言和低级
语言的共同优点。根据笔者体会以及在实际调试中遇
到的问题, 当采用汇编语言实现该功能时还不易出错,
当用C 语言时往往容易单独写入 0xFE 而造成错误。
下面依照时序分别给出读写的基本C 程序。
vo id IC_ W riteCS5460 (unsigned char CD ata)
{
unsigned char i;
CS5460_ SCL K_ 0; öö时钟置零
CS5460_ CS_ 0; öö片选置零
fo r ( i= 0; i< 8; i+ + ) öö开始一个字节的CD ata
{
CS5460_ SCL K_ 0; öö时钟置零
D elay_ us (5) ; öö相当于 5 个NO P
CS5460_ SCL K_ 1; öö时钟置 1
D elay_ us (5) ; öö相当于 5 个NO P
if (CD ata&0x80) {CS5460_ SD I_ 1; }
else {CS5460_ SD I_ 0; }
öö判断要写入的内容最高位是否为 1, 是 1 写 1,
不是写 0, 再左移数据, 循环写 8 次
CD ata + = CD ata;
}
}
一般读出 3 个字节, 根据需要可以只读 2 个字节,
第 3 个可以只读不放入返回值。
unsigned in t IC_ R eadCS5460 (unsigned char D 1DA TA )
{
unsigned char i, j;
unsigned in t DA TA ; öö要返回的内容
DA TA = 0; öö要返回的内容先清零
IC_ W riteCS5460 (D 1DA TA ) ; öö写入程序状态字
CS5460_ SCL K_ 0; öö时钟置零
fo r ( j= 0; j< 2; j+ + )öö2 个字节的循环, 根据需要可以改成 3 个字节
{DA TA + = DA TA ;öö先循环要返回的内容 (左移 1 位)
fo r ( i= 0; i< 7; i+ + )öö以下开始读出一个字节的 8 b 循环
{CS5460_ SD I_ 1; ööSD I口置 1
CS5460_ SCL K_ 0; öö时钟置零
D elay_ us (5) ; öö延时 5 Λs
CS5460_ SCL K_ 1; öö时钟置 1
D elay_ us (5) ; öö延时 5 Λs
if (P IN C&(1< < PC2) ) {DA TA = DA TA + 1; };
öö判断要读的内容最高位为 1, 则写 1, 否则写 0,
再左移
DA TA + = DA TA ;
}
CS5460_ SD I_ 0; ööSD I口置 1
CS5460_ SCL K_ 0; öö时钟置零
D elay_ us (5) ; öö延时 5 Λs
CS5460_ SCL K_ 1; öö时钟置 1
D elay_ us (5) ; öö延时 5 Λs
if (P IN C&(1< < PC2) ) {DA TA = DA TA + 1; };
öö读一个字节最后一位时单独处理, 是 1 则补 1, 不
是则跳到下一步, 回到上面左移 1 位, 相当于补 0
CS5460_ SCL K_ 0; öö时钟置 0
CS5460_ SD I_ 1; ööSD I口置 1
D elay_ us (2) ; öö延时 2 Λs
CS5460_ CS_ 1; öö片选置 0
}
retu rn (DA TA ) ; öö返回要读的内容
}
本单片机采用的是A TM EL 公司的M EG8 芯片,
以上给出的程序是针对与该芯片接口的CS5460A 的
读写基本C 语言程序, 该程序便可移植到可用C 语言
编程的 51 系列及其他的单片机上。另外参考电压输入
采用了LM 336 芯片, 比使用CS5460A 内部参考电压
输出在测量稳定度上有所提高。该芯片可直接采集电
能、电压、电流、功率、功率因数等值, 可与单片机
组成一个测试装置。该系统经过调试, 工作稳定可靠,
精度满足使用
要求
对教师党员的评价套管和固井爆破片与爆破装置仓库管理基本要求三甲医院都需要复审吗
。
参 考 文 献
[ 1 ] CS5460A 芯片及其实现的单相电能表现场校验
仪 [J ] 1 自动化仪器与仪表, 2002, (5) 1
201
曾智刚等: CS5460A 芯片与其在功率测量的一种应用