اطلاعیه

Collapse
No announcement yet.

سوالات مربوط به LCD های کاراکتری و گرافیکی

Collapse
این موضوع بسته شده است.
X
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    پاسخ : سوالات مربوط به LCD های کاراکتری و گرافیکی

    نوشته اصلی توسط aivhl
    با سلام،

    خواهش میکنم برادر، خوشحالم که مشکل حل شد :mrgreen:
    و اما جواب سوالات :
    1 - اون آرایه طولش 20 هستش، چون خودت خواستی، اجباری نبوده، بکنش 15، طوری نمیشه! ولی دیگه بیشتر از 14 تا کاراکتر نمیتونی تووش بریزی، همین!
    2 - اینطوری :
    کد:
     while (1)
     {
      if(PIND.0==1)
      {
       lcd_gotoxy(x,0); 
       lcd_putsf("\xFF");
       if(x<15)   x=x+1; 
       while(PIND.0);
      } 
      
      if(PIND.1==1)
      {
       lcd_gotoxy(x,0); 
       lcd_putsf("\xFE");
       if(x>0)   x=x-1;
       while(PIND.1);
      }
      
      lcd_gotoxy(4,1);
      sprintf(str,"x:%4u",x);  
      lcd_puts(str); 
     }
    سلام
    آقا خیلی بحالی
    شرمنده بازم سوال :چرا اون دستور if تهش سیمیکالن نداره ؟ مگه نمیگن ته هر خط دستور سیمیکالن باید گذاشت :eek:
    چه یافت آنــکه تــو را گم کرد وچه گم کرد آنـکه تــو را یافت.

    دیدگاه


      پاسخ : سوالات مربوط به LCD های کاراکتری و گرافیکی

      نوشته اصلی توسط صادق ابراهیمی
      سلام
      آقا خیلی بحالی
      شرمنده بازم سوال :چرا اون دستور if تهش سیمیکالن نداره ؟ مگه نمیگن ته هر خط دستور سیمیکالن باید گذاشت :eek:
      با سلام،

      تشکر میکنم، با حالی از خودتون داداش :mrgreen:

      کدوم دستور if رو میگی؟!
      دستور if ممکنه که یک فرمان داشته باشه، مثل این که حتما باید در انتهاش سیمیکالن داشته باشه :

      کد PHP:
      if(condition)  statement


      و ممکنه که else هم داشته باشه، پس اینطوری میشه :
      کد PHP:
      if (condition)  statement1;
      else         
      statement2


      و ممکنه که چندین فرمان داشته باشه که اینطوری میشه :
      کد PHP:
      if(condition)
      {
       
      statement1;
       
      statement2;
       
      statement3;
      }
      else 
      {
       
      statement1;
       
      statement2;
       
      statement3;



      همونطور که میبینی، تعداد دستورات که بیشتر از یکی میشن، اونها رو در یک جفت آکولاد محصور میکنیم. و هر خط دستوری که داخل این آکولاد قرار داره، باید آخرش سیمیکالن داشته باشه.

      از اونجایی که سی یک زبان باحاله! دستورات اخیر رو میشه برای خوانا بودن، زیبایی و یا هر منظور دیگه ای، به این شکل هم نوشت :
      کد PHP:
      if(condition)   { statement1;  statement2;  statement3; }
      else         { 
      statement1;  statement2;  statement3; } 


      اینجا رو ببین : http://www.cplusplus.com/doc/tutorial/control/
      مادامی که از شخصی یاد میشود، او و افکارش زنده اند ....

      Sh_Nourbakhsh@Yahoo.com

      http://s2.picofile.com/file/7170362468/_Wall_e_.jp

      دیدگاه


        پاسخ : سوالات مربوط به LCD های کاراکتری و گرافیکی

        جناب بابابرقی، دیگه ما رو راهنمایی نکردینا !
        البته تا همینجاش هم ممنونم، اما اگه اول عیدی مشکلم حل می شد کلی کیف میکردم.
        به هر حال از شما اساتید زحمت کش سایت سپاسگزارم.

        دیدگاه


          پاسخ : سوالات مربوط به LCD های کاراکتری و گرافیکی

          نوشته اصلی توسط fhgb
          جناب بابابرقی، دیگه ما رو راهنمایی نکردینا !
          البته تا همینجاش هم ممنونم، اما اگه اول عیدی مشکلم حل می شد کلی کیف میکردم.
          به هر حال از شما اساتید زحمت کش سایت سپاسگزارم.
          نوشته اصلی توسط fhgb
          خسته نباشی استاد.
          ببخشید مزاحم اوقاتتون میشم.
          شکلشون که مثل هم هستش و ترتیب پایه ها هم همینه. اما من چندتا دیتاشیت که توی نت پیدا کرده بودم دقیقا با چیزی که شما قرار دادید یکیه و تنها فرقشون توی همین پایه 9 هست که بعنوان پایه VEE معرفی شده.
          توی دیتاشیتهایی که من دانلود کردم، از خصوصیات این ال-سی-دی نوشته Built-in Negative Voltage که معنیش رو نفهمیدم و بعضی جاها هم گفتن که پایه VEE دارای ولتاژ منفی هست اما توی ال-سی-دی من این پایه(9) هیچ ولتاژی نداره (ظاهرا).
          در ضمن اون سر پتانسیومتر را که به پایه 9 وصل کرده بودم، طبق فرمایش جنابعالی به +5 وصل کردم و تنها نتیجه ای که داشت این بود که در قسمت کوچکی از مسیر پتانسیومتر(نزدیک به پایه مثبت)، حالتی که قبلا با پروگرامر داشتم بوجو میآید و اگر خیلی به ال-سی-دی دقت کنی مربع های بزرگ مشکی را میتوانی ببینی.
          استاد، احتمال این وجود داره که برای تعیین مقدار کنتراست لازم باشه که ولتاژ منفی هم داشته باشیم؟
          یا احتمال داره که ولتاژ منفی ال-سی-دی من خراب شده باشه؟
          نکنه یه وقت ال-سی-دی کلا خراب شده باشه؟ :eek:
          سلام
          خیلی عذر میخوام بابت تاخیر زیاد
          قول میدم مشکلتون حل میشه، منتهی خودتون هم کمی باید همت کنید :smile:
          من lcdمشابه رو راه انداختم اما متاسفانه این مدل رو نه، دور و برم هم نبود که تست کنم، بنابراین تنها مرجعم اینترنته و سرچ و این که شما تست بفرمایید و نتیجه رو اعلام کنید.
          معنیش که میشه "ولتاژ منفی داخلی"، اما پایه هایی که من دیدم و VEE بودن برای تنظیم نور پس زمینه بودن که توسط پیانسیومتر تنظیم میشده.
          طبق فرمایش جنابعالی به +5 وصل کردم و تنها نتیجه ای که داشت این بود که در قسمت کوچکی از مسیر پتانسیومتر(نزدیک به پایه مثبت)، حالتی که قبلا با ...
          منظورتون از "در قسمتی نزدیک به پایه مثبت" چیه؟
          احتمال این وجود داره که برای تعیین مقدار کنتراست لازم باشه که ولتاژ منفی هم داشته باشیم؟
          نه، نیازی به تهیه ولتاژ منفی نیست
          نکنه یه وقت ال-سی-دی کلا خراب شده باشه؟
          نه اگر ولتاژ بالا به lcd نداده باشید خیلی بعیده lcd خراب شده باشه
          ببینید با توجه به توضیحاتی که شما دادید به احتمال خیلی بالا مشکل از همین قسمت پتانسیومتر و نور زمینه lcd هستش
          - پتانسومتر رو درست وصل کردید؟(پتانسومتر، ترجیحا "مولتی ترن" 10کیلواهم، یک سر به +5v و اون سرش به گراند، سر وسط به پایه9 از lcd)
          برای اطمینان از کارکرد مولتی ترن، با یک پتانسومتر ولتاژ سر وسطش رو اندازه بگیرید، با تعداد دور زیاد چرخوندن مولتی ترن ولتاژش باید از حدود 0ولت تا حدود 5ولت تغییر کنه.
          - تغذیتون درست و حسابیه؟ (میتونه حداقل 500میلی آمپر رو تامین کنه؟) مدارتون دیگه چی به غیر از lcd داره؟
          اونچیزی که در دانشگاه یاد میگیرید، "الفبایی" هست برای نوشتن یک "رمان" !!

          دیدگاه


            پاسخ : سوالات مربوط به LCD های کاراکتری و گرافیکی

            سلام
            ببخشید یه سوال داشتم

            با چه نرم افزاری یه عکس 256*256 رو کد کنم تا روی lcd به ابعاد 256*256 نشون بدم ؟

            و در نرم افزار کدویژن ال سی دی 256*256 وجود ندارد میتونم از 128*240 استفاده کنم ؟

            ممنون



            دیدگاه


              پاسخ : سوالات مربوط به LCD های کاراکتری و گرافیکی

              سلام دوستان کسی میدون چرا تو کدویژن برای lcd 2x16 این کد ( define_char) ارور میده ؟؟؟؟؟؟؟؟؟؟؟
              اینم تابعش
              void define_char{unsigned char flash *pc,unsigned char char_code}


              :cry2: :cry2: :cry2: :cry2: :cry2: :cry2: :cry2: :cry2: :cry2: :cry2: :cry2:

              دیدگاه


                پاسخ : سوالات مربوط به LCD های کاراکتری و گرافیکی

                نوشته اصلی توسط aawww
                سلام دوستان کسی میدون چرا تو کدویژن برای lcd 2x16 این کد ( define_char) ارور میده ؟؟؟؟؟؟؟؟؟؟؟
                اینم تابعش
                void define_char{unsigned char flash *pc,unsigned char char_code}


                :cry2: :cry2: :cry2: :cry2: :cry2: :cry2: :cry2: :cry2: :cry2: :cry2: :cry2:
                دوست عزیز شما هیچ تشریحی از برنامتون نگذاشتین،چطور میخاین بچه ها کمک کنن ؟
                چه یافت آنــکه تــو را گم کرد وچه گم کرد آنـکه تــو را یافت.

                دیدگاه


                  پاسخ : سوالات مربوط به LCD های کاراکتری و گرافیکی

                  نوشته اصلی توسط صادق ابراهیمی
                  دوست عزیز شما هیچ تشریحی از برنامتون نگذاشتین،چطور میخاین بچه ها کمک کنن ؟
                  [b][size=24pt][size=8pt]سلام رفیق[/size] :bye :bye :bye :bye :bye :bye :bye :bye :bye :bye
                  [size=8pt] تشریح میخوای اینم توصیح
                  من دربه در امدم یه روز روی السی دی کاراکتری 2×16 کاراکتر درست کنم تا بتونم فارسی بنویسم لذا امدم از نرم افزار lcd char استفاده کردم و بااون کدشو گذاشتم تو برنامم از اونجایی که این نو ناز به تابع داشت امدم واز این تابع ابتدا استفاده کردم
                  void define_char{unsigned char flash *pc,unsigned char char_code}
                  سپس برابر اون کد های که ساخته بودم اینا را قرار دادم
                  flash unsigned char char0[8]={0x4,0x4,0x4,0x4,0x4,0x4,0x4,0x0};
                  flash unsigned char char1[8]={0x1,0x2,0x4,0x0,0x4,0x8,0x16,0x0};
                  flash unsigned char char2[8]={0x0,0x0,0x0,0x1F,0x0,0x0,0x0,0x0};
                  flash unsigned char char3[8]={0x16,0x8,0x4,0x0,0x4,0x2,0x1,0x0};
                  و بعد این کد ها که بتونه روی ال سی دی بنویسه
                  define_char(char0,0};
                  define_char(char1,1};
                  define_char(char2,2};
                  define_char(char3,3};
                  تا این جا درست حالا وقتی کامپایل میکنم
                  همون تابعی که اول نوشتم ارور میده . اگه دیگه توضیح میخوای بفرما ین
                  البته شرمنده نمیدونستم که تا چه اندازه بزرگ شده ولی کل توضیحات همینه
                  تشکر
                  از جناب بابا برقی هم تشکر میکنم بابت تذکرشون .

                  دیدگاه


                    پاسخ : سوالات مربوط به LCD های کاراکتری و گرافیکی

                    دوستانی که با ال سی دی کا راکتری کار کردند میدونند چرا تو کد ویژن این تابع ارور میده ؟؟؟؟؟؟
                    _lcd_ready();


                    :angry: :angry: :angry: :angry: :angry: :angry: :angry: :angry: :angry:

                    دیدگاه


                      پاسخ : سوالات مربوط به LCD های کاراکتری و گرافیکی

                      نوشته اصلی توسط صادق ابراهیمی
                      دوست عزیز شما هیچ تشریحی از برنامتون نگذاشتین،چطور میخاین بچه ها کمک کنن ؟
                      سلام مهندس
                      اقا یه چند نگته را بگم که از دست ا دلخور نباشید تو پست بالا که قرار بود توضیح بدم
                      امدم شرح بدم که نمیدونم چرا سایز نوشته هام اینقدر بزرگ شدن و البته باید بهتر و با لحن بهتر براتون توضیح میدادم ولی چون خسته بودم این طوری نوشتم ولی از قصد این کار را نکردم وخدای نکرده قصد بی احترامی به شما نبوده همون هم که جوابمو دادین خودش خیلی بود . ولی امیدوارم که سوء برداشت نکنید که فکر کنید خواسته ام بی احترامی به شما بوده نه از شانس بد ما سایز و فونت نوشته ها را بزرگ زدیم که متوجه نبودم . و اگهاستاد بابا برقی نمیگفتن اصلا نمیدونستم چی نوشتم .. در کل ازتون بابت این نوع نوشته ولحن معذرت خواستم . ولی اصلش قصد بی احترامی نبوده .امیدوارم دیگه کدورتی ازما نداشته باشین :

                      دیدگاه


                        پاسخ : سوالات مربوط به LCD های کاراکتری و گرافیکی

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

                        http://www.mediafire.com/?4hy26i8g1k37mzc
                        چه یافت آنــکه تــو را گم کرد وچه گم کرد آنـکه تــو را یافت.

                        دیدگاه


                          پاسخ : سوالات مربوط به LCD های کاراکتری و گرافیکی

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

                          http://www.mediafire.com/?4hy26i8g1k37mzc
                          سلام
                          ممنون از توجه تون . دیروز روش کار کردم و تونستم مشکلمو پیدا کنم وحلش کنم . باز هم تشکر

                          دیدگاه


                            پاسخ : سوالات مربوط به LCD های کاراکتری و گرافیکی

                            سلام میخواستم بدونم آیا باید با سرعت خاصی روی lcd های کاراکتری نوشت؟؟؟
                            من هر 20 میلی ثانیه دارم اطلاعاتی برای نمایش روی ال سی دی میفرستم ولس یک سری چرت و پرت نشون میده

                            دیدگاه


                              پاسخ : سوالات مربوط به LCD های کاراکتری و گرافیکی

                              نوشته اصلی توسط تیبا
                              سلام میخواستم بدونم آیا باید با سرعت خاصی روی lcd های کاراکتری نوشت؟؟؟
                              من هر 20 میلی ثانیه دارم اطلاعاتی برای نمایش روی ال سی دی میفرستم ولس یک سری چرت و پرت نشون میده
                              برامنم همین مشکل گاهی اوقات پیش میاد.باید متغییرت رو آدرس بدی که کجا نمایش داده بشه مثلا:
                              کد:
                              ftoa(c,2,str3); 
                                 sprintf(str4,"var:%S ",str3);
                                 lcd_gotoxy(0,0);
                                 lcd_puts(str4);
                                 lcd_gotoxy(4,1); 
                                 lcd_puts(str3);
                              چه یافت آنــکه تــو را گم کرد وچه گم کرد آنـکه تــو را یافت.

                              دیدگاه


                                پاسخ : سوالات مربوط به LCD های کاراکتری و گرافیکی

                                نوشته اصلی توسط صادق ابراهیمی
                                برامنم همین مشکل گاهی اوقات پیش میاد.باید متغییرت رو آدرس بدی که کجا نمایش داده بشه مثلا:
                                کد:
                                ftoa(c,2,str3); 
                                   sprintf(str4,"var:%S ",str3);
                                   lcd_gotoxy(0,0);
                                   lcd_puts(str4);
                                   lcd_gotoxy(4,1); 
                                   lcd_puts(str3);
                                سلام
                                من با بیسیک مینویسم ولی
                                گفتم کجا بنویسه

                                دیدگاه

                                لطفا صبر کنید...
                                X