?? plc_public.c
字號:
;/****************************************Copyright (C)**************************************************
;** Email:luheding@126.com
;** QQ:614090042
;** 如有意見或不明可聯系,但要注明來意.否則不回
;**--------------文件信息--------------------------------------------------------------------------------
;**文 件 名: PLC_PUBLIC.c
;**版 本: V2.1
;**創 建 人: LuHeDing
;**最后修改日期: 2010年05月08日
;**描 述: PLC公共參數聲明
;**
;********************************************************************************************************/
/******************************************************************************/
typedef unsigned char uint8; /* 無符號8位整型變量 */
typedef signed char int8; /* 有符號8位整型變量 */
typedef unsigned short uint16; /* 無符號16位整型變量 */
typedef signed short int16; /* 有符號16位整型變量 */
typedef unsigned int uint32; /* 無符號32位整型變量 */
typedef unsigned long long uint64; /* 無符號64位整型變量 */
typedef signed int int32; /* 有符號32位整型變量 */
typedef unsigned long u32;
typedef unsigned short u16;
typedef unsigned char u8;
#ifndef __at
#define __at(_addr) __attribute__ ((at(_addr)))
#endif
/******************************************************************************/
char PLC_UART_BUFFER[0x8F]; //接收緩存 BUFFER
uint8 PLC_CommBuf[0x8f];
char PLC_UART_T_BUFFER[0x8F]; //發送緩存
uint8 PLC_UART_RECEIVE_CNT; //接收計數
uint8 PLC_UART_T_CNT; //發送計數
/******************************************************************************/
uint8 PLC_STL_CMD;//0無效 1剛停止 2已執行停止 其它=無效
uint16 PLC_STL_ADD;//上一步執行的STL(S)號
/******************************************************************************/
uint32 PLC_PC,PLC_O_PC; //PLC程序指針
uint16 PLC_TEMP1,PLC_TEMP2,PLC_CMD; //程序執行專用16位寄存器
uint16 PLC_TEMP3,PLC_TEMP4; //程序執行專用16位寄存器
uint32 PLC_TEMP5,PLC_TEMP6,PLC_TEMPA; //程序執行專用32位寄存器
uint64 PLC_TEMP7,PLC_TEMP8,PLC_TEMP9; //程序執行專用64位寄存器
uint8 PLC_ACC_BIT,PLC_MPS_BIT; //程序執行專用(運算棧及分線棧)
uint16 PLC_RUN_TIME; // 掃描時間
//uint16 PLC_ERR_PC; //PLC出錯步
uint8 PLC_1MS_BIT; //PLC 1MS標志位(用于其它程式運行標志)
uint8 PLC_RUN_BIT; //PLC運行標志
// 0=無運行;1=PLC運行前數據復位;2=PLC程序檢測中;3=PLC程序下常運行;4=STL;
// 5=PLC程序出錯處理;6=PLC程序出錯;其它=?
/******************************************************************************/
uint8 Y0_H_OE,Y1_H_OE;
uint16 PWM_Y0_ON_TIMER,PWM_Y0_CYCLE,PWM_Y0_COUNT;
uint16 PWM_Y1_ON_TIMER,PWM_Y1_CYCLE,PWM_Y1_COUNT;
uint8 PLSY_Y0_CCW,PLSY_Y1_CCW;
uint32 PLSY_Y0_COUNT,PLSY_Y1_COUNT;
/******************************************************************************/
const uint8 hex[256]={
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,1,2,3,4,5,6,7,8,9,0,0,0,0,0,0,
0,10,11,12,13,14,15,0,0,0,0,0,0,};
const uint8 asc[16]={0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x41,0x42,0x43,0x44,0x45,0x46};
/******************************************************************************/
const uint8 PLC_BIT_OR[]={0X01,0X02,0X04,0X08,0X10,0X20,0X40,0X80};
const uint8 PLC_BIT_AND[]={0XFE,0XFD,0XFB,0XF7,0XEF,0XDF,0XBF,0X7F};
/******************************************************************************/
const uint8 PROG_CODE[]__at (0x0003FFA4)={
//最前的0X02表示PLC為2K的程序步,其它還未明
0x08,0x00,0xB9,0x69,0x00,0x00,0x00,0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
0x20,0x20,0xF4,0x09,0xFF,0x0B,0xF4,0x01,0xE7,0x03,0x64,0x0E,0xC7,0x0E,0xDC,0x0E,0xFF,0x0E,0x90,0x01,0xFE,0x03,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x83,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
//程序開始
//0x01,0x24,0x01,0xC5,0x01,0xF0,0x02,0x24,0x02,0xC5,0xFF,0xF7,0x0F,0x00,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
//0x10,0x00,0x02,0x88,0x00,0x80,//0x04,0xB0,0x01,0x24,0x01,0xc5,
//0X01,0X28,0X02,0XC5,0X04,0XB0,0X01,0X24,0X001,0XC5,0X02,0X28,0X03,0XC5,
0X0F,0X00,0XFF,//結束指令
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,};
/*********************************************************************************************************
** End Of File
********************************************************************************************************/
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -