اطلاعیه

Collapse
No announcement yet.

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

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

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

    نوشته اصلی توسط majid.4206
    میشه برنامتو کامل بزاری ببینم چیکار کردی...
    ببین اگه از وقفه سریال استفاده کردی دیگه لازم نیست از تابع getchar استفاده کنی تو اون وقفه هر موقعه دیتا از pc بیاد میریزه تو buofer0 و خودش یکی بهش اضافه میکنه تا دیتای بعدی همینطور تا وقتی 8 تا بشه دوباره 0 میشه حالا شما کافیه همونو رو lcd نمایش بدی...

    برنامت ایراد داره ... بیا اینو امتحان کن ببین جواب میده

    char a[9];

    gets(a,9);
    lcd_clear();
    lcd_puts(a);

    اگه از تابع gets() استفاده کنی دیگه لازم نیست وقفه دریافت سریال رو فعال کنی خود تابع بصورت poling عمل میکنه و به اندازه اون عددی که الان 9 دیتا رو میگیره و بعد رو lcd نشون میده

    یه نسخه جدید کد ویژن زدم(CodeVisionAVR V2.04.4a
    حل شد مشکلش نسخه قدیمیترش یه متن ساده مثل
    lcd_gotoxy(0,0);
    lcd_putsf("salam);
    نمیتونست درست نشون بده .در هر صورت ممنون ازت
    زندگی شوق رسیدن به همان فردایی است که هرگز نخواهد امد تو نه در دیروزی نه در فردا

    دیدگاه


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

      من چندین توابع کتابخانه glcd را لازم دارم (در مورد خط کشیدن ،دایره ،و ...) هر چه گشتم پیدا نکردم
      (من با کدویژن کارم توسایتی یکی بود دانلود کردم اما این توابع موجود نبود ممنون میشم که کمکم کنید.)
      با سپاس فراوان

      دیدگاه


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

        مثل این که کسی جواب نمی ده
        تقاضا می کنم کمکم کنید.

        دیدگاه


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

          نوشته اصلی توسط jahromy
          سلام

          من قصد دارم در کنار چاپ واژه Hello Word! روی ال سی دی 2*16 از دو شکل ساختگی (به کمک LCD Designer خود بیسکام) که در اینجا فلشی به سمت چپ در مختصات 1،1 و فلش سمت راست در مختصات 1،16 هست را روی LCD نمایش دهم حالا مشکل اینه که فقط کلمه Hello Word! نمایش داده میشه و هیچکدام از شکل ها دیده نمیشود راه حل مشکل من چیه؟


          کد:
          $regfile = "m8def.dat"
          $crystal = 8000000
          
          Config Lcd = 16 * 2
          Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portb.3 , Rs = Portb.2
          Cursor Off
          
          
          Cls
          Locate 1 , 1
          Deflcdchar 0 , 3 , 7 , 15 , 31 , 31 , 15 , 7 , 3      ' replace ? with number (0-7)
          
          Locate 1 , 3
          Lcd "Hello World"
          
          Locate 1 , 16
          Deflcdchar 1 , 24 , 28 , 30 , 31 , 31 , 30 , 28 , 24    ' replace ? with number (0-7)
          
          
          End                             'end program

          به سوال من نگاهی بندازید ممنون میشم

          دیدگاه


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

            دوست عزیز شما نباید وقتی که میخوایین کارکتر دلخواه رو نشون بدین اونو تعریف کنید!
            شما اول اونو تعریف کنید بعد هروقت خواستین اونو نشون بدید از دستور lcd chr و بعدش اون شماره ای که برای کارکتر تعریف شده اختصاص دادید رو قرار بدید
            مثل این:

            Deflcdchar 1 , 225 , 227 , 226 , 226 , 226 , 242 , 234 , 228 ' replace ? with number (0-7)

            Deflcdchar 0 , 240 , 224 , 224 , 255 , 254 , 252 , 248 , 240 ' replace ? with number (0-7)

            Lcd Chr(0) ; Chr(1)
            پروردگارا: به من زیستنی عطا کن که در لحظه مرگ بر بی ثمری لحظه ای که برای زیستن گذشته است حسرت نخورم، و مردنی عطا کن که بر بیهودگیش سوگوار نباشم. بگذار تا آن را خود انتخاب کنم، اما آنچنان که تو دوست میداری

            دیدگاه


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

              نوشته اصلی توسط HAN-273
              من چندین توابع کتابخانه glcd را لازم دارم (در مورد خط کشیدن ،دایره ،و ...) هر چه گشتم پیدا نکردم
              (من با کدویژن کارم توسایتی یکی بود دانلود کردم اما این توابع موجود نبود ممنون میشم که کمکم کنید.)
              با سپاس فراوان
              آخر اینجا مشکل ما حل نشد.
              اما ممنون

              دیدگاه


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

                سلام

                من میخوام که با AVR یک LCD 64x128 رو راه اندازی کنم.
                تو جمهوری یک سری lcd با همین رزلوشن دیدم که نسبت به معمول کوچکتر بود.با توجه به اینکه در این پروژه جای کمی برای قطعات وجود داره تصمیم گرفتم که از این نوع LCD استفاده کنم.اما هنوز ابعاد دقیق اون رو برای جانمایی در جعبه ام نمیدونم و دیگر اینکه از دوستان کسی این تیپ LCD رو با winavr راه اندازی کرده ؟(مشکل و یا قلق خاصی که ان شاالله نداره؟).
                اگر از دوستان کسی فایل دیتاشیت اون رو داره برام بفرسته ممنون میشم.

                با تشکر

                دیدگاه


                  چند تا مشکل

                  آقا من یه ال سی دی گرافیکی TS240128D-1 خریدم که درایور ال سی دی T6963 هست و اونو با Atmega8 درایو کردم

                  حالا با کد زیر

                  $regfile = "m8def.dat"
                  $crystal = 1000000

                  Config Graphlcd = 240 * 128 , Dataport = Portd , Controlport = Portb , Ce = 2 , Cd = 3 , Wr = 0 , Rd = 1 , Reset = 4 , Fs = 5 , Mode = 8

                  Dim X As Byte , Y As Byte


                  Do
                  Cls
                  lcd "Baby"
                  Waitms 1000

                  Loop
                  end

                  کلمه baby رو نشون می ده
                  ولی وقتی فایل عکس های مختلف رو اضافه می کنم و با دستور زیر ادد می کنم برنامه ارور می ده

                  $regfile = "m8def.dat"
                  $crystal = 1000000

                  Config Graphlcd = 240 * 128 , Dataport = Portd , Controlport = Portb , Ce = 2 , Cd = 3 , Wr = 0 , Rd = 1 , Reset = 4 , Fs = 5 , Mode = 8

                  Dim X As Byte , Y As Byte

                  Do
                  Cls
                  Showpice 0 , 0 , baby
                  Waitms 1000

                  End

                  baby:
                  $bgf "33.bgf"Loop

                  ارور برنامه:

                  label not found[baby]
                  و وقتی هم کد رو اینجوری می نویسم

                  $regfile = "m8def.dat"
                  $crystal = 1000000

                  Config Graphlcd = 240 * 128 , Dataport = Portd , Controlport = Portb , Ce = 2 , Cd = 3 , Wr = 0 , Rd = 1 , Reset = 4 , Fs = 5 , Mode = 8

                  Dim X As Byte , Y As Byte


                  $eeprom
                  baby:
                  $bgf "33.bgf"
                  $data

                  Do
                  Cls
                  Showpice 0 , 0 ,baby
                  Waitms 1000

                  Loop
                  End


                  برنامه کامپایل می شه ولی یه مربع 40-40 برام می سازه که هیچی داخلش نیست!!!! برای همه عکس ها با سایز های متفاوت هم همون مربع رو نشون می ده؟؟؟؟؟


                  آقا یه سوال دیگه اگر بخوام روی این ال سی کارکترام به جای 8 که داخل مدش تعریف شده مثلا 20 قرار بدم باید چی کار کنم؟می خوام به جای اینکه کل کارکترهام داخل 8 پیکسل عمودی و افقی نشون بده داخل 20 پیکسل نشون بده...





                  اضافه شده در تاریخ :
                  ?
                  هیچ دانش آموزی نیست که به در خانۀ دانشمندی آمد و شد کند, مگر این که خداوند برای هر گامی که برمی دارد عبادت یک سال را برایش رقم زند.

                  دیدگاه


                    پاسخ : چند تا مشکل

                    نوشته اصلی توسط baby_1

                    [left]
                    $regfile = "m8def.dat"
                    $crystal = 1000000

                    Config Graphlcd = 240 * 128 , Dataport = Portd , Controlport = Portb , Ce = 2 , Cd = 3 , Wr = 0 , Rd = 1 , Reset = 4 , Fs = 5 , Mode = 8

                    Dim X As Byte , Y As Byte

                    Do
                    Cls
                    Showpice 0 , 0 , baby
                    Waitms 1000

                    End

                    baby:
                    $bgf "33.bgf"Loop

                    ارور برنامه:

                    label not found[baby]
                    کد شما مشکلی نداره فقط اون loopاونجا چیکار میکنه؟
                    فایل BGF هم تو مسیر برنامه حتما بذارید
                    درمورد فونت 20*20 باید این فونت رو طراحی کنید بسکام بطور پیش فرض فونت 8*8 و 16*16 رو داره
                    پروردگارا: به من زیستنی عطا کن که در لحظه مرگ بر بی ثمری لحظه ای که برای زیستن گذشته است حسرت نخورم، و مردنی عطا کن که بر بیهودگیش سوگوار نباشم. بگذار تا آن را خود انتخاب کنم، اما آنچنان که تو دوست میداری

                    دیدگاه


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

                      آقا من کد رو به این تغییر دادم

                      $regfile = "m8def.dat"
                      $crystal = 1000000

                      Config Graphlcd = 240 * 128 , Dataport = Portd , Controlport = Portb , Ce = 2 , Cd = 3 , Wr = 0 , Rd = 1 , Reset = 4 , Fs = 5 , Mode = 8


                      Do

                      Cls
                      Showpice 0 , 0 , Baby
                      Waitms 1000

                      Loop

                      Baby:
                      $bgf "baby.bgf"

                      End

                      اما باز ارور
                      label not found[baby]
                      رو بهم می ده

                      هم فایل bgf و هم خود سورس رو داخل درایور سی و حتی داخل و بیرون یه پوشه و کنار هم ذخیره کردم اما باز مشکل داره!
                      هیچ دانش آموزی نیست که به در خانۀ دانشمندی آمد و شد کند, مگر این که خداوند برای هر گامی که برمی دارد عبادت یک سال را برایش رقم زند.

                      دیدگاه


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

                        نوشته اصلی توسط mohras110
                        سلام
                        نمیدونم این سوال یا در خواستم به این جا ربط داره یا نه ولی چون عنوان در مورد LCD ها بود گفتم که اینجا بپرسم شاید جواب بگیرم .استاد ما یه پروژه خواسته که روی یک GLCD بدون هیچگونه آی سی یا مدار واسط خاصی فقط و فقط با استفاده از پورت LPT و با استفاده از از زبان ++C ال سی دی رو راه اندازی کنه و اسم خودمون رو نمایش بده ،من یه ال سی دی گرافیکی به نام TS-12864A-2تهیه کردم ولی هیچ ایده ای ندارم هر چی برنامه این جا هست یا تو اینترنت دیدم هم یا با مدار واسطه یا ال سی دی متنیه کسی راه حلی نداره یه ذره هم عجله دارم به دادم برسید با تشکر :sad:

                        تو avr که توابع آماده هستش و هرچی ر. که میخوای بایه تابع رو ال سی دی نشون میده . اگه قصد داری برنامه بنویسی مجبوری دیتا شیت lcd رو کامل بخونی و ببینی که چطور کار میکنه . بعد کد هاتو به LPT بفرستی . ولی چطور میخوای کد اون چیزی رو که قراره lcd نشون تولید کنی. فکر کنم باید از توابع گرافیکی ++C استفاد ه کنی oo:

                        دیدگاه


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

                          سلام
                          آقا اصلا با کدویژن میشه lcd کرافیکی راه اندازی کرد؟؟؟؟
                          10 روز دارم برنامه مینویسم :read:مدار میبندم oo: جواب نمیده که نمیده :angry: :angry: :angry: نکه اشکال از فیوز بیت :eek:من که نمیدونم کمک میکنید چه کار کنم ؟؟؟؟؟؟؟؟؟؟؟ :cry2:
                          خداوندا
                          از بچگی به من آموختندهمه را دوست بدار حال که بزرگ شده ام و کسی را دوست می*دارم می گویند:
                          فراموشش کن
                          دکتر علی شریعتی

                          دیدگاه


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

                            احتمال اشتباه بستن پایه ها هم هستش .
                            lcd تون اصلا کار نمی کنه . یا آت آشغال نشون میده یا اینکه تا نصف نشون میده .

                            تو کدویژن از چه توابعی استفاده میکنین ؟
                            من هفته پیش کار کردم . مشکل نداشت .
                            نمونه کدو بذارین اینجا خوب میشه .

                            دیدگاه


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

                              آقایون و خانم های مهندسین تو رو خدا یک فکری راجب این lcd گرافیکی با codevison بکن جواب نمی ده ؟ :NO:.

                              شاید من نمی تونم :cry2:
                              خداوندا
                              از بچگی به من آموختندهمه را دوست بدار حال که بزرگ شده ام و کسی را دوست می*دارم می گویند:
                              فراموشش کن
                              دکتر علی شریعتی

                              دیدگاه


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

                                منم موقع راه اندازی با کد ویژن مشکل داشتم .

                                1) اول از درست بستن پایه ها مطمئن شین .
                                2) تنظیم کانتراست یادتون نره .خیلی وقتا lcd کار میکنه . ولی چون کانتراستش تنظیم نیست آدم نمیفهمه .
                                3) این یه کد نمونه در کدویون هستش :

                                #include <ks0108.h>

                                glcd_Init();
                                glcd_Clear();
                                unsigned char str[] = "Temperature : ";

                                glcd_Printf(4,20,str);

                                یه کارم میگم . اینو حتما بکنین . برین تو کتابخونه ها KS0108.lib رو پیدا کنین .
                                تو خطهای آخر اون delay_us ها رو به میلی ثانیه تبدیل کنین .

                                دیدگاه

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