資源簡介
西門子S7-200的通訊協議源代,支持復合多區塊讀取和單區塊的寫入,已經驗證過和S7-200的通訊,目前支持M和VB,VW,VD,需要支持其他的寄存器請參考網上的寄存器定義
代碼片段和文件信息
HANDLE PPI_UART_CommunPort;
int PPI_Commun_State;
bool ReInitFlag;
#define READ_REG1 0
#define WRITE_REG1 1
#define WRITE_REG2 2
#define WRITE_REG3 3
#define PPI_M_REG 1
#define PPI_VB_REG 2
#define PPI_VW_REG 3
#define PPI_VD_REG 4
typedef struct{
BYTE reg_type;
DWORD reg_addr;
DWORD reg_len;
void *reg_value;
}PPI_Request_Unit;
#define MAX_PPI_REQUEST_NUM 8
PPI_Request_Unit PPI_Request[MAX_PPI_REQUEST_NUM];
BYTE PPI_Commun_Buffer[256]?=?{0};
BYTE PLC_Addr; //PLC通訊地址
BYTE Local_Addr; //本機通訊地址
void PPI_Uart_Close(void)
{
if(PPI_UART_CommunPort?!=?INVALID_HANDLE_VALUE)
{
CloseHandle(PPI_UART_CommunPort);
}
}
bool PPI_Uart_Open(void)
{
DCB dcb;
COMMTIMEOUTS CommTimeOuts;
PLC_Addr?=?2; //PLC通訊地址
Local_Addr
- 上一篇:完整的misra c 測試包
- 下一篇:從文件讀取數據并用OPENGL畫圖
評論
共有 條評論