厦门莫格电气自动化有限公司销售
Honeywell霍尼韦尔620-3033
您迈开询价的一小步,我还您成功的一大步。
620-3033
620-3033
620-3033
E***335x是英创公司推出的基于TI AM335x Cortex-A8 CPU的高性能工控主板,板载了丰富的应用通讯接口,如LVDS/TTL标准显示接口,4USB、6串口、双CAN、双网口等。除此之外,E***335x还引出了一组精简ISA总线,我们基于E***335x的ISA总线设计了一系列扩展模块,比如8串口扩展模块ETA508、双网口扩展模块ETA728和4路CAN总线扩展模块ETA704,使得E***335x能够满足更多复杂的工业应用,比如通讯管理机。当然用户也可以利用E***335x 的ISA总线扩展自己的专有应用模块,以适应特定的现场应用需求。
在电力、交通、电信等行业,一般要求设备具有高精度的时钟,通常由时钟源提供高精度的时钟信息输出,而设备需要有自动校时和时钟同步的能力,IRIG-B是目前广泛应用的较时方案之一,本文就将介绍E***335x通过GPS时钟源产生的IRIG-B(DC)码实现时间同步的方法。
IRIG是美国靶场司令***会制定的一种时间标准,其中的串行时钟编码共有6种格式,即A、B、D、E、G、H。它们的主要差别是时间码的帧速率不同,广泛应用的IRIG-B即其中的B型编码,B型码的时帧速率为1帧/s,可传递100位信息。图1是IGIG-B码示意图,其时帧周期是1s,每秒100个码元,使用脉宽编码方式,每个码元脉宽10ms,共三种码元,其中高电平5ms和2ms分别表示二进制 “1”,“0”,高电平8ms为位置标识,分别为P0,P1,…P9。连续两个8ms宽度脉冲的第二个8ms脉冲的前沿为秒准点标志,也是一个时间格式的帧参考标志。一个时间格式帧包含了秒,时,分,天数,年份,控制位等丰富的信息。

图1:IRIG-B码标准
上面是对IRIG-B码的简单介绍,在实际使用IRIG-B码时钟源与E***335x进行时间同步时,用户并不需要关心IRIG-B码的具体含义和实现方法,仅需要将B码脉连接到E***335x的较时引脚就可以了,E***335x的驱动程序将完成B码***、同步等工作。
E***335x(EM335x)使用GPIO6作为B码脉冲输入管脚。
由于GPIO6还复用了PWM功能,所以当使用较时功能时,系统的“PWM1:”则不可用。另外需要特别注意的是:E***335x(EM335x)所有GIPO的***高输入电压不能超3.3V,否则将损坏主CPU,所以在连接B码信号时应该根据实际情况增加相应的电平转换电路。
应用程序打开设备"IGB1:"后,对应的驱动程序就会根据注册表的设备,自动进行时间同步,下面是IRIG-B码校时的例子代码:
#include "stdafx.h"
#include
#include "bsp_drivers.h"
#define IOCTL_IRIG_B_GET_TIME
CTL_CODE(FILE_DEVICE_BUS_EXTENDER,4055,METHOD_BUFFERED,FILE_ANY_ACCESS)
#define IOCTL_IRIG_B_SYNC_NOW
CTL_CODE(FILE_DEVICE_BUS_EXTENDER,4056,METHOD_BUFFERED,FILE_ANY_ACCESS)
int _tmain(int argc, _TCHAR* argv[])
{
HANDLE hIrigb;
SYSTEMTIME systime;
DWORD dwTimeoues;
// 打开系统较时功能,驱动程序会根据注册表的设置自动较时
hIrigb = CreateFile(TEXT("IGB1:"),
GENERIC_READ|GENERIC_WRITE,
FILE_SHARE_READ|FILE_SHARE_WRITE,
NULL,
OPEN_EXISTING,
FILE_FLAG_RANDOM_ACCESS,
NULL);
if(hIrigb == INVALID_HANDLE_VALUE)
return -1;
// 立刻进行一次时间同步,超时时间设置为3000ms
dwTimeoues = 3000;
if(DeviceIoControl(hIrigb,
IOCTL_IRIG_B_SYNC_NOW,
&dwTimeoues,
sizeof(DWORD),
&systime, // 如果时间同步成功,返回当时系统时间 sizeof(SYSTEMTIME),
NULL,NULL))
{
RETAILMSG(1, (TEXT("Time: %04d-%02d-%02d.%02d:%02d:%02d\r\n"),
systime.wYear, systime.wMonth, systime.wDay,
systime.wHour, systime.wMinute, econd));
}
SIEMENS 6DD1661-0AB1 1
MPCBL0001F04 5
39ACM24BEN 4
6GT2002-0AA00 4
6GT2102-0AB00 4
16137-118 3
545-1105 3
6ES5318-8MB13 3
6ES5377-0AB41 3
6ES5470-8MC12 3
6ES7414-3XJ00-0AB0 3
6EW1890-2AC 3
***P-E211-A11 3
***P-E217 3
505-6504 2
505-6660B 2
6ES5464-8ME11 2
6GK1105-2AA10 2
6SC6140-0FE01 2
MD63F800 2
MPCBL0001BPP 2
NKDG/A 2
***P-E136 2
C8451-A17-A26 2
39SAMCAN 1
1FK6063-6AF71-1EH0 1
39SDM024DCCBN 1
462.000.7076.00 1
505-7339 1
6***3503-1DB10 1
6***6648-0AC11-3AX0 1
6DD1681-0CA2 3
6DD1683-0CC0 2
6DR2410-5 1
6DS1731-8RR 2
6ES3373-0AA61 1
6ES5103-8MA03 1
6ES5375-1LR41 1
6ES5376-0AA21 1
6ES5421-8MA12 1
6ES5451-8MR12 1
6ES5482-8MA13 1
6ES5491-0LB11 1
6ES5535-3LB12 1
6ES5700-8MA11 1
6ES5760-0AB11 1
6ES5944-7UB21 1
6ES5946-3UA23 1
6ES5948-3UA11 1
6ES5955-3LC13 1
6ES5955-3LC14 1
6ES7952-0KH00-0AA0 1
6EW1861-3BA 1
6FC5103-0AB03-0AA2 1
6FC5147-0AA15-0AA1 1
6FC5203-0AF02-0AA0 1
6FC5210-0DA21-0AA1 1
6FC5210-0DF02-0AA0 1
6FC5357-0BB22-0AE0 1
6GK1105-2AC10 1
6GT2002-0AB00 1
6MD10100BA00 1
6NH9720-3AA00 1
6NH9860-1AA00 1
6SC6111-2AA00 1
6SC9811-4DA04 1
6SC9816-0AA03 1
6SN1118-0DK23-0AA2 1
FD63T150 1
HED43B040 1
MAESTRO DCD 140X14/28 1
PSCCM22AAN 1
QLCDM024DCBAN 1
QLVIMBCN 1
RMS-TSIG-TZ 1
SICOMP PC32-F 1
***P16-SYS51C 1
***P-E200-A1 1
***P-E201-A1 1
***P-E230-A10 1
WDAL2170-00 1
6SC6108-0SG02 1
SCHNEIDER TSX07311612 170
140DAO84210 166
140DDI35310 152
140CPS11420 124
140MSB10100 107
TFTX11702 104
TSX07301028 60
TSX07311628 60
TSX07301012 56
140CPU11303 53
STBDAO8210 51
140DRA84000 48
140CPS12420 41
140DDO84300 31
TSX07311622 30
TSX07312422 30
TSX073L2028 30
140CPU67160 28
140DDI35300 21
TSX07311648 20
140XBE10000 19
140CRP93100 19
140CPU65150 18
140ACO02000 18
140DDI84100 14
AS-B809-016 12
STBDAI7220 11
140CPS12400 10
AS-B840-108 10
140ATI03000 9
140CPU65160 8
140CRA93100 8
STB***O0200 8
140DAO84000 8
140ACI03000 7
140NWM10000 7
140CPS11410 7
140NOM211OO 6
140CRP81100 6
140CPS21400 5
AS-B827-032 5
140***I03000 5
140HLI34000 4
140CRP31200 4
140NOE77111 4
140SDI95300S 4
140XBP01600 4
AS-B808-016 4
AS-B883-200 4
140CHS11000 3
AS-8535-000 3
XBTF011110 3
XBTF011310 3
140ARI03010 3
140ACI04000 3
140CPS11100 2
140***O02000 2
140CPS11400 2
140CPU31110 2
140DAI54000 2
140ERT85410 2
AS-B814-108 2
AS-B838-032 2
AS-BDAP-218 2
AS-BDEP-218 2
AS-S911-801 2
LC1-D32 2
TSXAEY414 2
XBTF024510 2
XBTGK2330 2
8201-5-1 2
140EHC20200 2
140DAI55300 2
140CPU11302 2
140CPU43412A 2
140CPU53414A 2
140AMM09000 1
140CHS11100 1
140CPU21304 1
140CPU65260 1
140CRA21210 1
140CRA21220 1
140CRA93101 1
140DDI36400 1
140DDO36400 1
140DDO88500 1
140DRC83000 1
140EHC10500 1
140ESI06210 1
140NOM21100 2
140SDO95300S 1
140XBP01000 1
416NHM30030 1
490NAE91100 1
AM-SA85-000 1
AM-SA85-002 1
AS-B872-200 1
AS-BDAP-210 1
AS-BDPA-210 1
AS-HDTA-202 1
AS-P120-000 1
ATV31HU40N4A 1
BMXCPS2000 1
BMXDDI1602 1
PC-0984-785 1
PC-A984-130 1
SD***0 1
TSX08CD08R6A 1
TSXAEY800 1
TSXP575643M 1
TSXPSY5500M 1
XBTF023110 1
XBTF024110 1
XBTF034610 1
XBTF034610N 1
XBTFC044310 1
XBTGK2120 1
XBTGK5330 1
TSX08ED12R8 1
140CPU42402 1
170ADI34000 1
170ADM35010 1
140CRP93200 1
140ACO13000 1
140CRA21110 1
B&R ECE243-0 6
E***60-01 4
ECE161-0 3
ECA162-01 2
ECPA81-2 2
ECPE82-2 2
ECPE84-2 2
ECPP40-01 2
ECPP60-01 2
4PP220.0571-45 1
ECEP128-0 1
ECNT43-0 1
ECPNC3-0 1