第三代测试机编程手册  1.0
载入中...
搜索中...
未找到
example_vector.c

该示例介绍如何运行向量

1
6#include "lpxsdk.h"
7
8//配置向量的时序和相位
9void example_vector_config(void)
10{
11 //设置运行分频
13 //设置相位
14 Vector_SetPhase(5,5,5);
15 //设置时钟的想我和占空比
16 Vector_SetClock(6, 5);
17}
18
19//向量运行
20void example_vector_run(void)
21{
22 //解锁用于跑向量的引脚
23 TIO_UnlockIoFunction(TIO_PINALL);
24 //获取要运行的向量的标签所在的行号, 如果已知行号可跳过
25 uint32_t PLL_ST = Pattern_GetLineByLabel("PLL_ST");
26 uint32_t PLL_STOP = Pattern_GetLineByLabel("PLL_STOP");
27 //运行向量,判断向量是否成功
28 if (Pattern_Execute(PLL_ST, PLL_STOP, 1000) == VECTOR_EXE_SUCCESS)
29 {
30 //do something
31 }else{
32 //可读出向量失败的信息
34 }
35
36}
37
38//修改向量
39void example_vector_modify()
40{
41 Pattern_Modify("START",100,0,OUTPUT_H);
42}
void TIO_UnlockIoFunction(uint8_t pin)
解锁 pin 脚.用于跑向量的引脚需要解锁.否则无法跑向量.
Typedef_VectorExeErrorInfo * Pattern_GetErrInfo(void)
获取向量运行错误的信息结构体
VECTOR_EXE_SR Pattern_Execute(uint32_t StartIndex, uint32_t EndIndex, uint32_t OverTime_ms)
运行指定pattern中指定起始位置的向量
@ OUTPUT_H
输出模式,高电平
Definition Vector.h:33
uint32_t Pattern_GetLineByLabel(char *Label)
获取指定向量中指定标签所在行的行号(从0行开始)
void Vector_SetRunFre(uint8_t prescaler)
设置向量系统运行的时钟频率
void Vector_SetClock(uint16_t clk_delay, uint16_t clk_duty)
设置时钟信号量的延时和占空比. 时钟信号量是向量文件中,使用clk命名的信号名称 参数的范围:
LpxBool Pattern_Modify(char *Label, int32_t OffsetIndex, uint8_t TCh, MODIFY_VECTOR_VALUE Value)
修改向量中指定标签指定偏移地址的所在行的向量指定bit位的内容. 使用该函数,多次修改同一行的向量,只有最后一次的修改会生效. 比如向量文件中定义的相对"START"标签的第100行向量为 ,...
void Vector_SetPhase(uint16_t OE, uint16_t simple, uint16_t out)
设置向量运行的相位 参数的范围:
@ VECTOR_EXE_SUCCESS
向量运行成功
Definition Vector.h:46
向量运行失败的错误信息保存结构体
Definition Vector.h:61