Vector - CAPL - 实时时间on *(续2)
继续继续。。。
四、键盘事件
这个键盘事件是我个人起的名字,为了方便与其他事件进行区分,为什么要把这一个单独拉出来说呢,因为它的用处实在是太广泛了,基本只要是使用CANoe做一些基本的自动化测试小工具,都会用到它,因此专门列出来说一下。
顾名思义,他就是通过按键触发定义好的自动化函数。
例如,每当在键盘上按按键‘a’,就会发送一帧0x100报文:
message 100 msg;
on key 'a'
{
output(msg);
}
当然,也可以处理键盘信息,然后执行对应的操作:
message 100 msg100;
message 200 msg200;
message 300 msg400;
on key *
{
switch(this)
{
case 'a' : output(msg100); break;
case F10: output(msg200); break;
...
}
}
注意:按键程序不支持按键<ESC>、<F7>、<F8>和<F9>,也就是说这几个键不可作为触发键使用
键盘键值 <-> CAPL代码表示方法
键盘键值 | CAPL代码中表示 |
<F1> - <F12> (<F7>, <F8> and <F9> are not supported) | F1 - F12 |
<Shift>+<F1> - <Shift>+<F12> | shiftF1 - shiftF12 |
<Ctrl>+<F1> - <Ctrl>+<F12> | ctrlF1 - ctrlF12 |
<Ctrl>+<Page up> / <Ctrl>+<Page down> | ctrlPageUp / ctrlPageDown |
<Page up> / <Page down> | PageUp / PageDown |
<End> | End |
<Home> | Home |
<Insert> | InsertKey |
<Delete> | DeleteKey |
<Left Arrow>, <Right Arrow>, <Up Arrow>, <Down Arrow> | CursorLeft, CursorRight, CursorUp, CursorDown |
<Ctrl>+<Left Arrow>, <Ctrl>+<Right Arrow>, <Ctrl>+<Up Arrow>, <Ctrl>+<Down Arrow> | ctrlCursorLeft, ctrlCursorRight, ctrlCursorUp, ctrlCursorDown |
例子
on key 'a' | 执行key 'a'的函数 |
on key ' ' | 执行key ' '的函数 |
on key F1 | 执行key <F1>的函数 |
on key shiftF3 | 执行组合key <Shift>+<F3>的函数 |
on key ctrlF12 | 执行组合key <Ctrl>+<F12>的函数 |
on key PageUp | 执行key <Page up>的函数 |
on key ctrlPageDown | 执行key <Page down>的函数 |
on key Home | 执行key <Home>的函数 |
on key End | 执行key <End>的函数 |