亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? plc51x_fnc.c

?? PLC源代碼
?? C
?? 第 1 頁 / 共 5 頁
字號:
/*----------------------------------------------------------------------------------------------------*/
/*                                                                                                    */
/*                  PLC 梯型圖 解釋型監控 C Code示范程序(用于 51單片機)                             */
/*                                                                                                    */
/*     為防止 PLC 指令編碼和 C 語言關鍵字混淆,特規定,在本監控程序中,所有 PLC 指令前面加下劃線"_", */
/*  所有點(BIT型)前后各加下劃線"_",所有點(WORD型)前加下劃線"_",指令后面的數據用( )包含,數據  */
/*  中間用","分隔,以示和 C 語言關鍵字區分及適應于 C 語言書寫方法。                                   */
/*      所有十進制常數去掉前導"K",所有十六進制常數去掉前導"H"再加前導數字"0x",以便適應于 C 語言常   */
/*  數書寫方法。這些下劃線和加減前導數字將由 PLC 梯型圖反編譯程序自動加入。                           */
/*                                                                                                    */
/*     說心里話,這種容量小、功能少的 PLC,用匯編是最佳選擇,程序精練、執行效率高,比如散轉指令,用   */
/*  C語言的函數指針效率大打折扣,但考慮到方便大家今后程序的移植、更改、提高,使之能適應于 AVR,STM8, */
/*  NEC,PIC,H8,STM32......等任何單片機,未使用 51單片機特有的 bit 操作指令,關鍵部位也未插入匯編, */
/*  等程序修改穩定后再修改相關指令,優化程序代碼,提升執行速度,使之更適合 51單片機的使用。           */
/*                                                                                                    */
/*     本程序支持混合編程,即在 PLC 指令編碼中可任意插入 C 語言語句,符合 C 語言規范的匯編語言語句。  */
/*  可使用現有的調試軟件仿真器設置斷點,單步,多步,跟蹤,連續,全速等手段調試 PLC 程序,修改和監控   */
/*  PLC 點元件狀態和內容,使之更適合廣大單片機愛好者使用。                                            */
/*                                                                                                    */
/*     目前支持下列點(繼續完善中):                                                                 */
/*  _X0_---_X57_,_Y0_---_S57_,_M0_---_M255_,_S0_---_S255_,_T0---_T31,_C0---_C31,_D0---_D31;     */
/*                                                                                                    */
/*     目前支持常數(繼續完善中):                                                                   */
/*  K 范圍:-32768---32767;  H 范圍:0---FFFFH;                                                       */
/*                                                                                                    */
/*      目前支持特殊點數(繼續完善中):                                                              */
/*  _M8000_,_M8001_,_M8002_,_M8003_,_M8004_,_M8011_,_M8012_,_M8013_,_M8014_,                 */
/*  _M8020_,_M8021_,_M8022_;                                                                       */
/*                                                                                                    */
/*      目前支持下列基本指令和擴展指令(繼續完善中):                                                */
/*  _LD,_LDI,_AND,_ANI,_OR,_ORI,_INV,_OUT(_OUT_T,_OUT_C),_SET,_RST,_ANB,_ORB,_LDP,_LDF,_ANDP,_ANDF,   */
/*  _ORP,_ORF,_PLS,_PLF,_MPS,_MRD,_MPP,_NOP,END,_ADD,_SUB,_MUL,_DIV,_INC,_DEC,_WAND,_WOR,_WXOR,       */
/*  _NEG,_ALT,_MOV,_CML,_XCH,_BCD,_BIN,_CMP,_ZCP,_FMOV,_ROR,_ROL,_ZRST,_REF,_ASCI,_SWAP,_CJ,_CALL,    */
/*  _SRET,_FEND,_LD>=,_LD<=,_LD>,_LD<,_LD<>,_LD=,_AND>=,_AND<=,_AND>,_AND<,_AND<>,_AND=,_OR>=,_OR<=,  */
/*  _OR>,_OR<,_OR<>,_OR=;                                                                             */
/*                                                                                                    */
/*      由于 C語言無法識別下列符號,特用下列英文縮寫表示:                                            */
/*  大于等于(>=)  _GE,小于等于(<=)  _LE,大于(>)  _GT,小于(<)  _LT,不相等(<>)  _NE,相等(=)  _EQ;  */
/*  即指令集:_LD>=,_LD<=,_LD>,_LD<,_LD<>,_LD=,_AND>=,_AND<=,_AND>,_AND<,_AND<>,_AND=,                */
/*            _OR>=,_OR<=,_OR>,_OR<,_OR<>,_OR=;                                                       */
/*      用下列指令書寫方式替代。                                                                      */
/*  _LD_GE,_LD_LE,_LD_GT,_LD_LT,_LD_NE,_LD_EQ,_AND_GE,_AND_LE,_AND_GT,_AND_LT,_AND_NE,_AND_EQ,        */
/*  _OR_GE,_OR_LE,_OR_GT,_OR_LT,_OR_NE,_OR_EQ;                                                        */
/*                                                                                                    */
/*                                                                                                    */
/*   C P U : MPC82G516A(51系列)單片機                                                                 */
/*   晶  振: 11.0592MHz                                                                               */
/*   作  者: 許意義                                                                                   */
/*   版  本: V1.1.5                                                                                   */
/*   日  期: 2009.10.10                                                                                */
/*   版  權: ourDEV.cn                                                                                */
/*                                                                                                    */
/*----------------------------------------------------------------------------------------------------*/
/*   歷次修改記錄:                                                                                   */
/*----------------------------------------------------------------------------------------------------*/
/*   版  本: V1.1.5                                                                                   */
/*   修改人: 許意義			 	    		                                                          */
/*   日  期: 2009.10.10								                                                  */
/*   備  注: 修改了網友 winmcu 查出的 BUG , PLS 和 PLF指令運行異常現象, 已修正。                      */
/*                                                                                                    */
/*----------------------------------------------------------------------------------------------------*/
/*   版  本: V1.1.4                                                                                   */
/*   修改人: 許意義			 	    		                                                          */
/*   日  期: 2009.10.9								                                                  */
/*   備  注: 修改了網友 oste 查出的 BUG , ALT指令運行異常現象, 已修正。                               */
/*           并增加了PLC程序缺少END指令及運行錯誤指令會馬上停止報錯。  							      */
/*                                                                                                    */
/*----------------------------------------------------------------------------------------------------*/
/*   版  本: V1.1.3                                                                                   */
/*   修改人: 許意義			 	    		                                                          */
/*   日  期: 2009.10.9								                                                  */
/*   備  注: 修改了網友 oste 查出的 BUG , CMP指令,ZCP指令運行異常現象, 已修正。                       */
/*                                                                                                    */
/*----------------------------------------------------------------------------------------------------*/
/*   版  本: V1.1.2                                                                                   */
/*   修改人: 許意義			 	    		                                                          */
/*   日  期: 2009.10.8								                                                  */
/*   備  注: 修改了網友 oste 和 winmcu 查出的 BUG , KnMx類變量 x非4的倍數出錯,M801x時鐘變量脈沖類    */
/*           指令出錯,AND類指令出錯,均已修正。											          */
/*                                                                                                    */
/*----------------------------------------------------------------------------------------------------*/
/*   版  本: V1.1.1                                                                                   */
/*   修改人: 許意義			 	    		                                                          */
/*   日  期: 2009.10.8								                                                  */
/*   備  注: 修改了網友 oste 查出的 BUG , 計數器在每次接通時的上升沿才應該計數(加1),已修正。       */
/*                                                                                                    */
/*----------------------------------------------------------------------------------------------------*/
/*   版  本: V1.1.0                                                                                   */
/*   修改人: 許意義			 	    		                                                          */
/*   日  期: 2009.10.3								                                                  */
/*   備  注: 增加了對KnX,KnY,KnM,KnS變量的支持, 增加了對CJ,CALL等指令的支持。                         */
/*                                                                                                    */
/*----------------------------------------------------------------------------------------------------*/
/*   版  本: V1.0.9                                                                                   */
/*   修改人: 許意義			 	    		                                                          */
/*   日  期: 2009.10.1								                                                  */
/*   備  注: 修改了網友 houjingqing 和 winmcu 查出的 BUG , 部分變量 初始化不正確,已修正。            */
/*                                                                                                    */
/*----------------------------------------------------------------------------------------------------*/
/*   版  本: V1.0.8                                                                                   */
/*   修改人: 許意義			 	    		                                                          */
/*   日  期: 2009.09.30								                                                  */
/*   備  注: 修改了網友 oste 查出的 BUG , 下載完剛運行時,時間繼電器的時基會變小,定時值很快就到了,  */
/*           已修正。                                                                                 */
/*                                                                                                    */
/*----------------------------------------------------------------------------------------------------*/
/*   版  本: V1.0.7                                                                                   */
/*   修改人: 許意義			 	    		                                                          */
/*   日  期: 2009.09.30								                                                  */
/*   備  注: 修改了網友 houjingqing 和 oste 查出的 BUG , 數據比較類 指令錯誤,已修正。                */
/*                                                                                                    */
/*----------------------------------------------------------------------------------------------------*/
/*   版  本: V1.0.6                                                                                   */
/*   修改人: 許意義			 	    		                                                          */
/*   日  期: 2009.09.26								                                                  */
/*   備  注: 修改了網友 oste 查出的 BUG , OUT  T0 D30 指令錯誤,已修正。                              */
/*                                                                                                    */
/*----------------------------------------------------------------------------------------------------*/
/*   版  本: V1.0.5                                                                                   */
/*   修改人: 許意義			 	    		                                                          */
/*   日  期: 2009.09.25								                                                  */
/*   備  注: 將“簡易PLC 梯型圖(指令編碼)轉 51  C 程序示范程序”和“仿三菱 FX1N PLC 下載通訊協議	  */
/*            C Code示范程序”合并,使之真正成為直接兼容 三菱FXGPWIN 軟件 的 開源PLC。                */
/*                                                                                                    */
/*----------------------------------------------------------------------------------------------------*/


//-----------------------------------------------------------------------------------------//
//								                                                           //
//							    	FNC 指令編程格式描述                                   //
//								                                                           //
//    函數名稱:   FNC_xxx                                                                  //
//    函數類型:   void FNC_xxx(void)                                                       //
//								                                                           //
//    功能描述:  執行 FNC 擴展命令                                                        //
//								                                                           //
//    入口參數:  無                                                                       //
//								                                                           //
//    出口參數:  無                                                                       //
//								                                                           //
//    全局變量:   addr0   (addr0x.WORD        )   // 數據位第一字地址/數據緩沖區         //
//                addr0L  (addr0x.BYTES.BYTEL )   // 數據位第一字地址/數據低位           //
//                addr0H  (addr0x.BYTES.BYTEH )   // 數據位第一字地址/數據高位           //
//                addr1   (addr1x.WORD        )   // 數據位第二字地址緩沖區	           //
//                addr1L  (addr1x.BYTES.BYTEL )   // 數據位第二字地址低位		           //
//                addr1H  (addr1x.BYTES.BYTEH )   // 數據位第二字地址高位		           //
//                addr2   (addr2x.WORD        )   // 數據位第三字地址緩沖區		       //
//                addr2L  (addr2x.BYTES.BYTEL )   // 數據位第三字地址低位                //
//                addr2H  (addr2x.BYTES.BYTEH )   // 數據位第三字地址高位			       //
//                addr3   (addr3x.WORD        )   // 數據位第四字地址緩沖區		       //
//                addr3L  (addr3x.BYTES.BYTEL )   // 數據位第四字地址低位			       //
//                addr3H  (addr3x.BYTES.BYTEH )   // 數據位第四字地址高位                //
//                addr4   (addr4x.WORD        )   // 數據位第五字地址緩沖區	           //
//                addr4L  (addr4x.BYTES.BYTEL )   // 數據位第五字地址低位                //
//                addr4H  (addr4x.BYTES.BYTEH )   // 數據位第五字地址高位                //
//								                                                           //
//								                                                           //
//-----------------------------------------------------------------------------------------//
//    調用模塊:  void RD_ADDR(int a, unsigned char c)                                     //
//                                                                                         //
//    注    釋:  從 PLC 指定的點地址讀入數據                                              //
//                                                                                         //
//    入口參數:  int a            點地址                                                  //
//                unsigned char c  地址格式 m=(c&0xe0)>>4, n=(c&0x1f);                     //
//                                                                                         //
//    出口參數:  int              讀入的數據                                              //
//-----------------------------------------------------------------------------------------//
//    調用模塊:   void WR_ADDR(int a, int b, unsigned char c)                              //
//                                                                                         //
//    注    釋:  將數據寫入 PLC 指定的點地址                                              //
//                                                                                         //
//    入口參數:  int a            點地址                                                  //
//                int b            寫入的數據                                              //
//                unsigned char c  地址格式 m=(c&0xe0)>>4, n=(c&0x1f);                     //
//                                                                                         //
//    出口參數:  無                                                                       //
//-----------------------------------------------------------------------------------------//
//								                                                           //
//    模塊描述:                                                                           //
//                                                                                         //
//								                                                           //
//    作   者:   許意義		   			                                               //
//    日   期:   2009年9月26日 			                                               //
//    備    注:  								                                           //
//-----------------------------------------------------------------------------------------//
//    修 改 人:					 			                                               //
//    日   期:								                                               //
//    備    注: 								                                           //
//-----------------------------------------------------------------------------------------//

#include "SYSTEM.h"
#include "REG_MPC82G516.H"
#include "PLC51x_TYPE.H"
#include "PLC51x_SYS.H"
#include "PLC51x.H"
#include "PLC51x_FNC.H"

/******************************************************************************************************/ 

code (*key_list[16])();
code (*key_list_1[12][2])();
code (*key_list_2[14][2])();
code (*key_list_3[256])();
int RD_ADDR(unsigned int a, unsigned char c);

#define   CSP_Pn_MAX    8
#define   CALL_SP_MAX   2
volatile unsigned char        CALL_SP_i;
volatile unsigned char code  *CALL_SP[CALL_SP_MAX];
volatile unsigned char code  *CSP_Pn[CSP_Pn_MAX+1];

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产入口在线| 99久久国产综合精品女不卡| 日韩一区二区三区高清免费看看| 亚洲va国产va欧美va观看| 欧美视频在线不卡| 日韩成人一区二区三区在线观看| 69堂成人精品免费视频| 蜜臀av性久久久久蜜臀aⅴ流畅| 欧美一级淫片007| 精品中文字幕一区二区小辣椒| 精品国产乱码久久久久久牛牛| 国产精品亚洲第一| 国产精品福利一区| 欧美在线啊v一区| 日韩成人dvd| 久久精品亚洲乱码伦伦中文 | 欧美亚州韩日在线看免费版国语版| 亚洲另类在线一区| 91精品国产综合久久福利软件 | 成人激情视频网站| 亚洲综合色区另类av| 欧美肥妇bbw| 国产精品66部| 一区二区免费在线| 日韩一区二区三区精品视频| 成人午夜av在线| 亚洲国产精品欧美一二99 | 欧美精品一区二区三区蜜桃视频| 福利一区福利二区| 亚洲国产精品久久艾草纯爱| 亚洲精品在线观| 91久久免费观看| 韩国午夜理伦三级不卡影院| 亚洲人午夜精品天堂一二香蕉| 7777女厕盗摄久久久| 国产成人免费网站| 亚洲大型综合色站| 国产清纯白嫩初高生在线观看91 | 日韩成人一区二区三区在线观看| 国产亚洲欧美中文| 欧美在线观看18| 懂色av一区二区夜夜嗨| 国产裸体歌舞团一区二区| 亚洲综合成人网| 国产精品理论片在线观看| 5566中文字幕一区二区电影| 99久久综合99久久综合网站| 精品一区免费av| 三级精品在线观看| 亚洲欧美二区三区| 国产欧美日韩麻豆91| 日韩视频一区二区在线观看| 在线观看免费成人| 成人av在线一区二区| 激情综合色综合久久综合| 亚洲一区二区欧美日韩| 亚洲欧洲精品天堂一级| 久久久91精品国产一区二区精品 | 国产乱理伦片在线观看夜一区| 亚洲成在人线免费| 亚洲免费看黄网站| 久久久久久久久蜜桃| 精品国产一区二区三区不卡| 51午夜精品国产| 91久久久免费一区二区| 一本久久综合亚洲鲁鲁五月天 | 亚洲成av人片www| 国产精品久久久久久久午夜片| 久久综合色之久久综合| 欧美一级欧美一级在线播放| 欧美日韩久久一区| 在线视频一区二区免费| 91在线云播放| 一本大道av伊人久久综合| www.日韩大片| 成人avav在线| 91在线国内视频| 色综合久久综合网97色综合| 91在线视频在线| 一本久久a久久精品亚洲| 色网综合在线观看| 色婷婷亚洲一区二区三区| 97精品久久久午夜一区二区三区| 波多野结衣91| 一本一道综合狠狠老| 欧美亚洲国产一区二区三区| 欧美久久一二区| 精品日韩一区二区三区免费视频| 精品日韩99亚洲| 久久精品一区八戒影视| 中文字幕精品综合| 亚洲日本一区二区| 一区二区三区欧美日韩| 亚洲成人自拍一区| 97精品电影院| 欧美日韩亚洲综合一区二区三区| 7777精品伊人久久久大香线蕉完整版 | 精品一区二区三区免费观看| 韩国在线一区二区| 白白色 亚洲乱淫| 欧美揉bbbbb揉bbbbb| 欧美电影免费观看高清完整版在线| 久久蜜桃香蕉精品一区二区三区| 欧美极品少妇xxxxⅹ高跟鞋| 亚洲精品国产第一综合99久久 | 久久精品久久久精品美女| 国模一区二区三区白浆| k8久久久一区二区三区| 欧美日韩国产中文| 久久久噜噜噜久久人人看| 136国产福利精品导航| 亚洲高清免费在线| 精品中文字幕一区二区小辣椒| 成人激情综合网站| 欧美日韩国产色站一区二区三区| 日韩三级中文字幕| 亚洲欧洲99久久| 蜜乳av一区二区| www.成人在线| 欧美videossexotv100| 自拍偷拍亚洲激情| 另类小说综合欧美亚洲| 99精品国产视频| 精品国产乱码久久久久久免费| 亚洲日本青草视频在线怡红院| 首页国产欧美日韩丝袜| 成人性生交大合| 欧美一区二区国产| 国产精品久久影院| 蜜桃av一区二区在线观看 | 国产白丝精品91爽爽久久| 欧美性生活大片视频| 中文字幕欧美区| 久久狠狠亚洲综合| 日本国产一区二区| 久久精品一区二区三区四区| 水野朝阳av一区二区三区| 成年人午夜久久久| 欧美xxxxx牲另类人与| 亚洲高清免费观看| 97国产一区二区| 国产肉丝袜一区二区| 美女视频网站黄色亚洲| 在线观看国产日韩| 1000部国产精品成人观看| 精东粉嫩av免费一区二区三区 | 精品欧美一区二区久久| 亚洲国产成人高清精品| 99久久久久久| 欧美aaaaaa午夜精品| 在线观看av不卡| 国产精品传媒在线| 国产精品资源网| 久久午夜色播影院免费高清| 久久国产精品99精品国产| 这里只有精品视频在线观看| 亚洲高清久久久| 欧美日韩三级一区二区| 亚洲男人天堂av网| 色综合久久六月婷婷中文字幕| 日韩一区在线播放| 懂色av一区二区三区蜜臀| 国产三级精品在线| 成人免费va视频| 中文字幕日本不卡| 91论坛在线播放| 亚洲欧美日韩一区二区三区在线观看| 成人精品一区二区三区四区| 国产精品视频第一区| 成人动漫在线一区| 自拍偷自拍亚洲精品播放| 99视频在线精品| 亚洲免费大片在线观看| 色婷婷av一区二区三区gif| 一区二区在线观看免费视频播放| 欧美在线色视频| 日韩电影在线观看电影| 日韩欧美你懂的| 国产乱码精品一区二区三| 国产日韩欧美一区二区三区综合| 成人在线视频一区二区| 国产精品久久久久久久蜜臀| 91精品1区2区| 日本午夜一本久久久综合| 欧美xxxxxxxx| 懂色av噜噜一区二区三区av| 亚洲欧美区自拍先锋| 精品视频在线看| 狠狠色综合日日| 中文字幕制服丝袜一区二区三区| 91蜜桃在线观看| 日韩成人dvd| 欧美激情一区二区三区| 色国产综合视频| 久久精品噜噜噜成人av农村| 中文字幕不卡一区| 欧美视频中文字幕| 国产美女精品在线| 亚洲女同一区二区| 日韩午夜中文字幕|