• info@ehsansanatpasargad.com
ESPESPESPESP
            No results See all results
            فارسی
            • English
            • Arabic
            • Russian
            • Turkish
            • صفحه اصلی
            • فروشگاه
            • تماس با ما
            • درباره ما
            • راهکارهای ESP
              • ESM STUDIO
              • کارخانه هوشمند
              • روشنایی هوشمند مجتمع های بزرگ
              • معرفی کارتهای ورودی/خروجی ریموت مبتنی بر MODBUS TCP
            • راهنما
              • زبان STL برای ESP
              • دایره المعارف STL
            • رسانه تصویری
              • آموزش زبان برنامه نویسی ST
              • دوره آموزش STL
            • بلاگ
            • دانلود
              • ESP Builder
              • STM32cubeIDE
            • گالری ESP
            ✕
                      No results See all results

                      for

                      • Home
                      • for

                      محیط برنامه نویسی

                      1
                      • ایجاد پروژه جدید برای پی ال سی ایرانی ESP-0806

                      برنامه نویسی ST

                      24
                      • ورودی / خروجی پی ال سی
                        • رله های داخلی M
                        • خروجی دیجیتال Q
                        • ورودی دیجیتال I
                      • کنترل روند برنامه
                        • return
                        • goto
                        • switch
                        • continue
                        • break
                        • for
                        • do-while
                        • while
                        • if
                      • دستورات کنترل بیت
                        • ToggleRelay
                        • ToggleQ
                        • Reset
                        • Set
                        • ResetQ
                        • SetQ
                        • OutQ
                      • تایمر و شمارنده
                        • Delay
                        • espGetCurrentTime
                        • espElapsedTime
                        • Timer
                      • بیت های کنترلی
                        • پالسهای آماده

                      برنامه نویسی C

                      5
                      • فایلهای Header
                      • Declarations اعلان ها
                        • اعداد حقیقی
                        • اعداد صحیح
                        • include
                        • extern
                      مشاهده دسته‌ها
                      • صفحه اصلی
                      • مستندات ESP
                      • STL
                      • برنامه نویسی ST
                      • کنترل روند برنامه
                      • for

                      مدت زمان تقریبی مطالعه این متن: 1 حداقل زمان مورد نیاز

                      1. اسکن کردن تمام ورودی‌ها

                      // بررسی تمام ورودی‌ها و تنظیم خروجی‌های متناظر
                      for (int i = 0; i < 8; i++) {
                          espRun();
                          if (I0[i].Value) {
                              if (i < 6) {  // فقط ۶ خروجی داریم
                                  SetQ(0, i);
                              }
                          } else {
                              if (i < 6) {
                                  ResetQ(0, i);
                              }
                          }
                          HAL_Delay(10);
                      }
                      

                      2. تنظیم رله‌های داخلی

                      // تنظیم رله‌های داخلی بر اساس ورودی‌ها
                      for (int i = 0; i < 8; i++) {
                          espRun();
                          M[i].Value = I0[i].Value;  // کپی کردن وضعیت ورودی به رله
                          HAL_Delay(5);
                      }
                      

                      3. کنترل تایمرها

                      // تنظیم و فعال کردن چندین تایمر
                      for (int i = 0; i < 5; i++) {
                          T[i].SetValue = (i + 1) * 10;  // 10, 20, 30, 40, 50
                          T[i].TimeUnit = TIME_01S;
                          T[i].Mode = OnDelay;
                          T[i].IN = I0[i].Value;
                          EnableTimer(&T[i]);
                          espRun();
                          HAL_Delay(10);
                      }
                      

                      4. پالس‌های متوالی

                      // تولید پالس‌های متوالی روی خروجی‌ها
                      for (int i = 0; i < 6; i++) {
                          SetQ(0, i);
                          espRun();
                          HAL_Delay(200);
                          ResetQ(0, i);
                          espRun();
                          HAL_Delay(200);
                      }
                      

                      5. خواندن داده Modbus

                      //Modbus خواندن چندین رجیستر 
                      for (int i = 0; i < 10; i++) {
                          if (ReadModbusData(1, 1, 3, i, 1)) {  // خواندن holding register
                              espRun();
                              HAL_Delay(100);
                          }
                      }
                      
                      C programming, ESP-0806-B, ESP-0806-C, ESP-0806-D, ESP-0806-E

                      احساس شما چیست

                      • خوشحال
                      • معمولی
                      • غمگین
                      این مقاله را به اشتراک بگذارید:
                      • Facebook
                      • X
                      • LinkedIn
                      • Pinterest
                      breakdo-while

                      دیدگاهتان را بنویسید لغو پاسخ

                      نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

                      لینک های مفید

                      • تماس با ما
                      • درباره ما
                      • وبلاگ ما

                      ساعت کار

                      تهران, حکیمیه, پردیس فنی شهید عباسپور, پارک علم و فناوری, طبقه اول, واحد 16

                      شنبه تا چهارشنبه
                      9 صبح الی 5 بعد ازظهر

                      Ehsansanatpasargad @2024
                      0

                      0﷼

                      فارسی
                                No results See all results
                                • English
                                • فارسی
                                • Arabic
                                • Russian
                                • Turkish
                                ✕

                                ورود

                                گذرواژه خود را فراموش کرده اید؟

                                ✕

                                سبد خرید

                                سبد خرید شما در حال حاضر خالی است.

                                جمع جزء: 0﷼
                                مجموع: 0﷼
                                ادامه جهت تسویه حساب مشاهده سبد خرید
                                • فروشگاه
                                • حساب کاربری من
                                • 0 سبد خرید
                                • فارسی