cmcu为stm32h743IIt6
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

77 lines
2.0 KiB

#ifndef APPLICATIONS_SC828_DATA_Table_H
#define APPLICATIONS_SC828_DATA_Table_H
#include <rtthread.h>
#include "stdbool.h"
#include "language.h"
#include <lvgl.h>
// IO状态结构体(可扩展)
typedef struct {
int pin; // PLCID
rt_bool_t current_state; // 当前电平:0=低,1=高
str_id_t name; // 名称(可选,用于调试)
} IO_State_DIO;
typedef struct {
int pin; // PLCID
rt_int16_t current_Value; // 当前状态
str_id_t name; // 名称(可选,用于调试)
} IO_State_AIO;
typedef struct {
int pin; // PLCID
rt_int32_t current_data; // 当前状态
str_id_t name; // 名称(可选,用于调试)
} IO_State_DATA;
typedef struct {
int RUN;
char StepID[3];
double Parameter1;
double Parameter2;
double Parameter3;
double Parameter4;
double Parameter5;
char StepID_S1[3];
char StepID_S2[3];
char StepID_S3[3];
double Parameter1_S1;
double Parameter2_S1;
double Parameter3_S1;
double Parameter4_S1;
double Parameter5_S1;
double Parameter1_S2;
double Parameter2_S2;
double Parameter3_S2;
double Parameter4_S2;
double Parameter5_S2;
double Parameter1_S3;
double Parameter2_S3;
double Parameter3_S3;
double Parameter4_S3;
double Parameter5_S3;
} IO_STEP_DATA;
extern IO_State_DIO di_table[];
extern IO_State_DIO do_table[];
extern IO_State_AIO ai_table[];
extern IO_State_AIO ao_table[];
extern IO_State_DATA data_table[];
extern IO_STEP_DATA step_table[99];
extern const unsigned char DI_TABLE_SIZE;
extern const unsigned char DO_TABLE_SIZE;
extern const unsigned char AI_TABLE_SIZE;
extern const unsigned char AO_TABLE_SIZE;
extern const unsigned char DATA_TABLE_SIZE;
void DATA_Table_Init(void);//
void DATA_INSTRUCTION_START(char p[25]);
void DATA_INSTRUCTION_STOP();
rt_int16_t get_ai_value(int pin);
void get_ao_value(int pin,int16_t dat);
#endif