鸿信自动化 ST/C 语言模块 指令讲堂 资料下载 第 6 课
C 语言模块 · 第 6 课 高级

数组与查表:配方 / 凸轮

6 段 · 共 1:13 · 数字人讲师示范 · 完全免费

配方、凸轮曲线本质是「按序号取值」。本课讲 C 里的数组与查表,把几十组参数压缩成几行代码。

正在加载数字人讲师…
讲师模型较大(约 87MB),首次打开需要等待。加载完后数字人会自动开始讲解,这段时间可以先往下读讲稿。
已等待 0 秒
等待中… 在仿真器里打开

本课讲稿

1/6为什么要查表0:12

很多工艺参数是一张表:第几号配方给几号温度,主轴转到哪个角度给哪个从轴位置。与其写一串比较,不如建一张表,按编号一查就得,这叫查表。

2/6数组就是一张表0:12

C 里的数组就是现成的表。声明 cam 数组八个值一列排好。前面加 const,表示这张表只读,编译后就固化在程序里,运行期谁也改不了它。

3/6按编号取值0:12

取数就一句:给个下标,表就把对应位置的数给你。凸轮表里下标 3 对应 90 度,下标 7 对应 210 度。下标从 0 开始数,这点别记错。

4/6越界要挡0:14

下标不能乱给:给个 8 或者负数,就越界了,读出来是脏数据。所以取值前先判断——下标在 0 到 7 之间才查,否则输出 0,并用 ok 位告诉外界这次有效没。

5/6一次只查一行0:11

查表一次只取一行:给编号,回一个值。要一整列都拿出来,就每拍换一个编号连查。凸轮就是这么干的——主轴角度变,从轴位置跟着表走。

6/6小结:查表四步0:11

查表就四步:建一张 const 表,判下标在界内,按下标取一个值,越界就输出 0 加个 ok 位。配方切换、电子凸轮,一个套路通吃。