13-11-2014، 09:14 AM
فرض رو بر این بگیرید که از یک کانتر در برنامه پی ال سی Delta استفاده می کنید ، مثلا اگر مقدار کانتر به عدد 10 رسید ، کانتر شما خروجی می دهد .
CNT C0 K10
حال فرض کنید که اگر کانتر شما به عدد 5 رسید قصد دارید ، یک کاری انجام شود . پس اینجا شما نمی توانید از خروجی خود کانتر استفاده کنید چون خروجی کانتر وقتی به عدد 10 می رسد خروجی خواهد داد . پس باید چه کار کنیم .
شما می توانید از دستور مقایسه یا CMP استفاده کنید .
این دستور به صورت کلی زیر نوشاه می شود
CMP S1 S2 D
نوشته می شود .
در برنامه ما این دستور به صورت زیر در میآید .
CMP C0 K5 M2
این خطی که ما نوشتیم به این معنی است که هر لحظه مقدار کانتر را با عدد 5 مقایسه می کند ، اگر برابر بود ، مموری M2 را فعال می کند .
حال شما می توانید به جای M2 ، یک خروجی و یا هر حافظه ای که تمایل دارید را قرار دهید .
به مثالی که در این زمینه در فایل پیوست قرار داده شده است ، توجه بفرمایید .
CNT C0 K10
حال فرض کنید که اگر کانتر شما به عدد 5 رسید قصد دارید ، یک کاری انجام شود . پس اینجا شما نمی توانید از خروجی خود کانتر استفاده کنید چون خروجی کانتر وقتی به عدد 10 می رسد خروجی خواهد داد . پس باید چه کار کنیم .
شما می توانید از دستور مقایسه یا CMP استفاده کنید .
این دستور به صورت کلی زیر نوشاه می شود
CMP S1 S2 D
نوشته می شود .
در برنامه ما این دستور به صورت زیر در میآید .
CMP C0 K5 M2
این خطی که ما نوشتیم به این معنی است که هر لحظه مقدار کانتر را با عدد 5 مقایسه می کند ، اگر برابر بود ، مموری M2 را فعال می کند .
حال شما می توانید به جای M2 ، یک خروجی و یا هر حافظه ای که تمایل دارید را قرار دهید .
به مثالی که در این زمینه در فایل پیوست قرار داده شده است ، توجه بفرمایید .