نمایش نتایج: از 1 به 5 از 5
Like Tree1 لایک
  • 1 Post By magmagmary

موضوع: مشکل در ساخت منو

  1. #1
    Junior Member
    تاریخ عضویت
    Nov 2016
    نوشته ها
    23

    مشکل در ساخت منو

    با عرض ادب
    من میخوام منویی به صورت زیر داشته باشم لطفا رهنمایی نمایید
    صفحه اصلی
    شامل منو ها با قابلیت اسکرول
    منو 1:
    start
    بعد از انتخاب:
    نمایش وزن و مقدار وزن مورد نیاز جهت وصل کردن رله
    و کلید برگشت
    منو 2
    SELECT W
    بعد از انتخاب :
    افزایش و کاهش مقدار وزن مورد نیاز به صورت کلید شمارشی
    و کلید برگشت

    از نمونه کد زیر استفاده کردم متاسفانه بعد از انتخاب منو عملیات مورد نیاز انجام نمیشه و همه چی ثابت هستش از حلقه ویل هم استفاده کردم . متن ها چشمک میزنند

    باتشکر از تمامی دوستان
    ویرایش توسط canopus : 12-26-2016 در ساعت 11:44 AM

  2. #2
    مدیر گروه
    تاریخ عضویت
    Nov 2013
    محل سکونت
    ایران
    نوشته ها
    3,940
    من یه پروژه ساده ساخته بودم با nokia 5110
    منو سه صفحه ای داشت و یه کانتر رو توی سه صفحه می شد مقادیرش رو با کلید دوم تغییر داد

    میتونید از این کد الهام بگیرید و پیش برید :
    کد:
    #include <LCD_GFX.h>
    #include <NOKIA5110.h>
    
    
    NOKIA5110 display = NOKIA5110(7, 6, 5, 4, 3);
    
    
    int mpage = 0;
    int flag8 = 0;
    int counter=0;
    void setup()   {
      Serial.begin(9600);
      display.begin();
      display.setContrast(60);
      display.display(); // show splashscreen
      delay(2000);
      display.clearDisplay();   // clears the screen and buffer
      pinMode(8, INPUT_PULLUP);
      pinMode(9, INPUT_PULLUP);
      Serial.println("End of setup");
    }
    
    
    
    
    void loop() {
      keyAction();
    }
    
    
    void showData(String data) {
      display.println(data);   //Write a Text
      display.setTextSize(1);
      display.display();
      display.clearDisplay();
      display.setCursor(0,15);
       display.println("Counter=");   //Write a Text
      display.setTextSize(1);
      display.display();
      display.clearDisplay();
      display.setCursor(50,15);
      display.println(counter);   //Write a Text
      display.setTextSize(1);
      display.display();
      display.clearDisplay();
    }
    
    
    void keyAction()
    {
      if ( digitalRead(8) == LOW  ) {
        flag8++;
        Serial.println(flag8);
        delay(200);
      }
      if ( digitalRead(9) == LOW  ) {
        counter++;
        Serial.println(counter);
        delay(200);
      }
      menuProcess() ;
    }
    
    
    void menuProcess() {
      if ( flag8 == 0)  {
        Serial.println("first");
        showData("Main menu");
      }
      if ( flag8 == 1)  {
        Serial.println("second");
        showData("submenu1");
      }
      if ( flag8 == 2) {
     
        Serial.println("Third");
        showData("submenu2");
      }
      if ( flag8 == 3) {
        flag8 = 0;
      }
    }
    لایک کردن

  3. #3
    Junior Member
    تاریخ عضویت
    Nov 2016
    نوشته ها
    23
    نقل قول نوشته اصلی توسط magmagmary نمایش پست ها
    من یه پروژه ساده ساخته بودم با nokia 5110
    منو سه صفحه ای داشت و یه کانتر رو توی سه صفحه می شد مقادیرش رو با کلید دوم تغییر داد

    میتونید از این کد الهام بگیرید و پیش برید :
    کد:
    #include <LCD_GFX.h>
    #include <NOKIA5110.h>
    
    
    NOKIA5110 display = NOKIA5110(7, 6, 5, 4, 3);
    
    
    int mpage = 0;
    int flag8 = 0;
    int counter=0;
    void setup()   {
      Serial.begin(9600);
      display.begin();
      display.setContrast(60);
      display.display(); // show splashscreen
      delay(2000);
      display.clearDisplay();   // clears the screen and buffer
      pinMode(8, INPUT_PULLUP);
      pinMode(9, INPUT_PULLUP);
      Serial.println("End of setup");
    }
    
    
    
    
    void loop() {
      keyAction();
    }
    
    
    void showData(String data) {
      display.println(data);   //Write a Text
      display.setTextSize(1);
      display.display();
      display.clearDisplay();
      display.setCursor(0,15);
       display.println("Counter=");   //Write a Text
      display.setTextSize(1);
      display.display();
      display.clearDisplay();
      display.setCursor(50,15);
      display.println(counter);   //Write a Text
      display.setTextSize(1);
      display.display();
      display.clearDisplay();
    }
    
    
    void keyAction()
    {
      if ( digitalRead(8) == LOW  ) {
        flag8++;
        Serial.println(flag8);
        delay(200);
      }
      if ( digitalRead(9) == LOW  ) {
        counter++;
        Serial.println(counter);
        delay(200);
      }
      menuProcess() ;
    }
    
    
    void menuProcess() {
      if ( flag8 == 0)  {
        Serial.println("first");
        showData("Main menu");
      }
      if ( flag8 == 1)  {
        Serial.println("second");
        showData("submenu1");
      }
      if ( flag8 == 2) {
     
        Serial.println("Third");
        showData("submenu2");
      }
      if ( flag8 == 3) {
        flag8 = 0;
      }
    }
    ممنون . مشکل حل شد . دستور lcd.clear رو از حلقه ها حذف کردم درست شد/

  4. #4
    Junior Member
    تاریخ عضویت
    Nov 2016
    نوشته ها
    23
    به زودی سورس کد و آموزش ساخت ترازوی دیجیتال با قابلیت قطع کن رو قرار میدم

  5. #5
    Junior Member
    تاریخ عضویت
    Nov 2016
    نوشته ها
    23
    جناب magmagmary لطفا موضوع رو " بسته " کنید
    با احترام

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •  

SEO by vBSEO