[color=rgba(0, 0, 0, 0.9)]本文带来的是基于全志T507-H(硬件平台:创龙科技-EVM评估板),Linux-RT内核的硬件GPIO输入和输出实时性测试及应用开发案例的分享。本次演示的开发环境如下:

[color=rgba(0, 0, 0, 0.9)]

[color=rgba(0, 0, 0, 0.9)]开发环境: 7 64bit、 10 64bit

[color=rgba(0, 0, 0, 0.9)]Linux开发环境:.04.4 64bit

[color=rgba(0, 0, 0, 0.9)]虚拟机:.2.5

[color=rgba(0, 0, 0, 0.9)]U-Boot:U-Boot 2018

[color=rgba(0, 0, 0, 0.9)]:Linux-RT-4.9.170

[color=rgba(0, 0, 0, 0.9)]SDK:-V2.0

[color=rgba(0, 0, 0, 0.9)]GPIO: LED(PI13)、KEY3(PH4)

[color=rgba(0, 0, 0, 0.9)]分享案例:、案例

[color=rgba(0, 0, 0, 0.9)]测试工具:示波器

测试数据汇总

[color=rgba(0, 0, 0, 0.9)]基于全志T507-H(硬件平台:创龙科技-EVM评估板),按照创龙科技提供的案例用户手册进行操作,得出如下测试结果。

[color=rgba(0, 0, 0, 0.9)]备注:测试数据与实际测试环境有关,仅供参考。

[color=rgba(0, 0, 0, 0.9)]

[color=rgba(0, 0, 0, 0.9)]测试结果如下表所示:

[color=rgba(0, 0, 0, 0.9)]

表1 Linux-RT GPIO输入输出案例测试数据

GPIO输入延时

系统延迟

GPIO输出延时

输入输出总延时

测试1

37us

9us

14us

60us

测试2

53us

9us

14us

76us

测试3

57us

9us

14us

80us

测试4

60us

9us

14us

83us

[color=rgba(0, 0, 0, 0.9)]

[color=rgba(0, 0, 0, 0.9)](1)GPIO输入延时:通过使用示波器测量按键事件触发LED电平翻转的实际耗时结合系统延时与GPIO输出延时得出数据;

[color=rgba(0, 0, 0, 0.9)]

[color=rgba(0, 0, 0, 0.9)](2)系统延迟:根据Linux-RT性能测试平均值得出数据;

[color=rgba(0, 0, 0, 0.9)]

[color=rgba(0, 0, 0, 0.9)](3)GPIO输出延时:通过使用示波器测量LED电平翻转的实际耗时得出数据。

[color=rgba(0, 0, 0, 0.9)]

[color=rgba(0, 0, 0, 0.9)]

1.png

图1

表 2 Linux-RT实时性测试数据

Min

(最小值)

Avg

(平均值)

Max

(最大值)

CPU空载状态

5us

7us

86us

CPU满负荷状态

5us

9us

88us

隔离CPU核心状态

5us

9us

38us(CPU3)

[color=rgba(0, 0, 0, 0.9)]根据不隔离CPU核心、隔离CPU核心三种状态的测试结果可知:当程序指定至隔离的CPU3核心上运行时,Linux系统延迟最低,可有效提高系统实时性。故推荐对实时性要求较高的程序(功能)指定至T507-H隔离的CPU核心运行。

Linux-RT实时性测试

[color=rgba(0, 0, 0, 0.9)]本次测试是使用延迟检测工具测试Linux系统实时性。是rt-tests测试套件下的测试工具,也是rt-tests下使用最广泛的测试工具,一般主要用来测试内核的延迟,从而判断内核的实时性。主要通过反复测量并精确统计线程的实际唤醒时间,以提供有关系统的延迟信息。它可测量由硬件、固件和操作系统引起的实时系统的延迟。

[color=rgba(0, 0, 0, 0.9)]

使用测试系统实时性

[color=rgba(0, 0, 0, 0.9)]基于全志T507-H(硬件平台:创龙科技-EVM评估板),按照创龙科技提供的案例用户手册进行操作,使用程序测试系统实时性,得出如下测试结果。

[color=rgba(0, 0, 0, 0.9)]

[color=rgba(0, 0, 0, 0.9)]

2.png

图2 Linux-RT-4.9.170内核测试结果

[color=rgba(0, 0, 0, 0.9)]

3.png

[color=rgba(0, 0, 0, 0.9)]图3 Linux-4.9.170内核测试结果

[color=rgba(0, 0, 0, 0.9)]

[color=rgba(0, 0, 0, 0.9)]对比测试数据,可看到基于Linux-RT-4.9.170内核的系统的延时更加稳定,最大延时更低,系统实时性更佳。

[color=rgba(0, 0, 0, 0.9)]

T507-H核心板典型应用场景

[color=rgba(0, 0, 0, 0.9)]

4.jpg

图4 T507-H核心板典型应用领域

———END———
限 时 特 惠: 本站每日持续更新海量各大内部创业教程,永久会员只需109元,全站资源免费下载 点击查看详情
站 长 微 信: nanadh666

声明:1、本内容转载于网络,版权归原作者所有!2、本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。3、本内容若侵犯到你的版权利益,请联系我们,会尽快给予删除处理!