导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→我如何创建一个大气真空断路阀gPTP时间时钟输出端点?

* 101064: 我如何创建一个大气真空断路阀gPTP时间时钟输出端点?

   liufengzhong 
liufengzhong发表的帖子 

 我如何创建一个大气真空断路阀gPTP时间时钟输出端点?
测量同步经由主和经由奴隶通常使用1 pps(每秒1脉冲)信号然后提供到testsystem。

必须来源于gPTP时钟和信号切换硬件销然后可以用来测量。

我怎么能实现XMOS设备上运行AVB参考设计吗?

回答:

AVB端点软件包含一个任务gptp_test_clock致力于从gPTP生成HW时钟时间。
这个任务可以被实例化一个核心的par { }块应用程序的主要()
HW时钟可以观察到一个范围选择GPIO销和用于检查的质量gPTP多个AVB端点之间的时间同步。

下面是实现这一目标的代码更改AVB 5.2.1释放和AVB 6.0.4分别发布:

所有的变化都是在main.xc文件。

常见的变化:

实例化一个输出端口:

on tile[0]: out port test_clock_port = XS1_PORT_4C;

——定义ns的时钟周期。 例如1 PPS(1赫兹)时钟信号:

#define gPTP_HW_CLK_PERIOD 1E9


AVB 5.2.1具体:
需要一个额外的通道连接gptp_test_clock(经由客户端)服务器。
1。 增加一个频道的c_ptp数组项:

// PTP channels
  chan c_ptp[2 + AVB_DEMO_ENABLE_TALKER];


2。 在media_clock_server参数增加c_ptp通道数组项的数量
                  2 + AVB_DEMO_ENABLE_TALKER,


然后添加这个par { }中的任务列表:

// Generate HW clock from gPTP time
    on tile[0]: ptp_output_test_clock(c_ptp[2],
                        test_clock_port,
                        gPTP_HW_CLK_PERIOD);


AVB 6.0.4靠近:
需要一个额外的通道连接gptp_test_clock(经由客户端)服务器。
所有您需要做的为实现这一目标是这个枚举添加一个新值 NUM_PTP_CHANS
让我们叫它 PTP_TO_HW_CLK
枚举现在看起来应该像这样:

enum ptp_chans {
  PTP_TO_AVB_MANAGER = 0,
#if AVB_DEMO_ENABLE_TALKER
  PTP_TO_TALKER,
#endif
  PTP_TO_1722_1,
  PTP_TO_HW_CLK,
  NUM_PTP_CHANS
};

枚举对于编写可扩展的代码很有用。 NUM_PTP_CHANS总是基于值的数量来计算正确。
 
然后添加这个par { }中的任务列表:

on tile[0]: ptp_output_test_clock(c_ptp[PTP_TO_HW_CLK],
                        test_clock_port,
                        gPTP_HW_CLK_PERIOD);


发表时间:2014年10月23日21:14:28

  
回复该帖

本主题共有 1 帖,分页:>>>>>该主题的所有内容[1]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

[上一篇帖子]:在xTimeComposer XC-1A不显示我想我XC-1A连接到我的电脑运行OS&nb
[下一篇帖子]:如何在.xc文件访问sd卡模块你好,每个人 /P P 去年我已经成功地创建了一个动画 /P P