اطلاعیه

Collapse
No announcement yet.

راهنمایی در پیکربندی LCD گرافیکی 64*128 با کنترلر KS108 در بیسکام

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    راهنمایی در پیکربندی LCD گرافیکی 64*128 با کنترلر KS108 در بیسکام

    یه راهنمایی میخواستم در مورد شیوه پیکربندی LCD گرافیکی 128*64 با کنترلر KS108 تو بیسکام .من نسخه بیسکام که تو قسمت نرم افزار این سایت بود رو دانلود کردم و فایل glcdks108.lbx رو هم تو شاخه library داشت حالا در مورد شیوه تعریف پایه ها و اتصال اون میخواستم بدونم .

    راستی این برنامه ورزن 1.11.8.7 هستش در ضمن من برنامهای که تو این ادرس بو رو چک کردم ولی در اخرین خط erorr میده

    http://www.eca.ir/forum2/index.php/topic,5085.0.html

    برنامه:

    $regfile = "m323def.dat" ' specify the used micro
    $crystal = 8000000 ' used crystal frequency
    $baud = 19200 ' use baud rate
    $hwstack = 32 ' default use 32 for the hardware stack
    $swstack = 10 ' default use 10 for the SW stack
    $framesize = 40 ' default use 40 for the frame space


    'some routines to control the display are in the glcdKS108.lib file
    $lib "glcdKS108.lib"


    Wait 2

    Print "Config" ' printing will still work as only the receiver pin is disabled


    'First we define that we use a graphic LCD
    Config Graphlcd = 128 * 64sed , Dataport = Porta , Controlport = Portc , Ce = 0 , Ce2 = 1 , Cd = 4 , Rd = 3 , Reset = 2 , Enable = 5

    'The dataport is the portname that is connected to the data lines of the LCD
    'The controlport is the portname which pins are used to control the lcd
    'CE =CS1 Chip select
    'CE2=CS2 Chip select second chip
    'CD=Data/instruction
    'RD=Read
    'RESET = reset
    'ENABLE= Chip Enable



    'Dim variables (y not used)
    Dim X As Byte , Y As Byte



    Print "Cls"
    Cls

    Wait 1

    'specify the font we want to use
    Setfont Font8x8


    'You can use locate but the columns have a range from 1-128
    'When you want to show somthing on the LCD, use the LDAT command
    'LCDAT Y , COL, value
    Lcdat 1 , 1 , "123"

    'lcdat accepts an additional param for inversing the text
    Lcdat 2 , 1 , "123" , 1 ' will inverse the text

    'Now use a different font
    'Setfont Font8x8
    'since the 16*16 font uses 2 rows, show on row 3
    'Lcdat 1 , 1 , "2345"
    'Lcdat 2 , 56 , "2345656"
    Wait 1
    Line(0 , 0) -(127 , 64) , 1 'make line
    Wait 2
    Line(0 , 0) -(127 , 64) , 0 'remove line

    For Y = 1 To 20
    Circle(30 , 30) , Y , 1
    Waitms 100
    Next

    Wait 1
    Glcdcmd &H3E , 1 : Glcdcmd &H3E , 2 ' both displays off
    Wait 1
    Glcdcmd &H3F , 1 : Glcdcmd &H3F , 2 'both on
    'GLCDCMD accepts an additional param to select the chip
    'With multiple, GLCDCMD statements, it is best to specify the chip only the first time


    Showpic 0 , 0 , Plaatje 'show a comnpressed picture
    End 'end program


    'we need to include the font files
    'Notice that this is a testfont with only numbers defined !
    '$include "smallfont8x8.font"
    $include "font8x8.font"
    '$include "font16x16.font"


    Plaatje:
    'include the picture data
    bgf "ks108.bgf"$"

    تو این خط اخری فایل ks108.bgf رو از کجا پیدا کنم

    #2
    پاسخ : راهنمایی در پیکربندی LCD گرافیکی 64*128 با کنترلر KS108 در بیسکام

    وقتی برنامه رو نصب میکنین،توو دایرکتوریه SAMPLES\LCDGRAPH تمام فایل ها منجمله ks108.bgf موجود هست ...
    فقط بین فایلهای سومی که انلود کردین از دایرکتوریه 3-copy to dir UPDATE LIB and فایلهای داخل دایرکتوریه LIBآ‌رو توو دایرکتوریه LIBآ‌محل نصب کپی کنین تا glcdKS108.lib هم سر جاش بره :smile:

    مثالش مشکلی نداره ... کرک نسخه هم مشکلی نداره ...

    دیدگاه


      #3
      پاسخ : راهنمایی در پیکربندی LCD گرافیکی 64*128 با کنترلر KS108 در بیسکام

      کپی کردم مشکل erorr حل شد ولی lcd چیزی نشون نمیده . این برنامه زیر رو از ادرس :
      http://www.iranled.com/postx199-0-0.html
      پیدا کردم و اجرا کردم حالا lcd یه چیزایی قاطی پاطی نشون میده .
      در ضمن من پایه های تعریف شده تو config رو به این صورت به پایه های lcd وصل کردم:
      CONFIG................................LCD
      ENABLE............................ENABLE
      RD..................................R/W
      CE....................................CS1
      CE2...................................CS2
      RST...................................RST
      CD.....................................D/I
      این هم دیتاشیت lcd :
      http://i7.tinypic.com/2wcibub.jpg

      دیدگاه


        #4
        پاسخ : راهنمایی در پیکربندی LCD گرافیکی 64*128 با کنترلر KS108 در بیسکام

        Config Graphlcd = 128 * 64sed , Dataport = Porta , Controlport = Portc , Ce = 0 , Ce2 = 1 , Cd = 4 , Rd = 3 , Reset = 2 , Enable = 5
        'The dataport is the portname that is connected to the data lines of the LCD
        'The controlport is the portname which pins are used to control the lcd
        'CE =CS1 Chip select
        'CE2=CS2 Chip select second chip
        'CD=Data/instruction
        'RD=Read
        'RESET = reset
        'ENABLE= Chip Enable

        اول ببینین data port هارو درست تعریف کردین ؟
        بعد جهت DB0 تا DB7 آ‌رو یه نگاهی بندازین،پیش میاد برعکس می بندن ...
        برنامه مشکلی نداره،من خودم با 2-3 مدل راهش انداختم،هیچ وقت اشکال نداده،روو تعریف سرعت کریستال(که زیاد مهم نیست)آ‌و درست پایه ها یه توجهی کنین ... منظور از چیزهای قاطی پاتی چیه ؟آ‌ به چیزی که می خواین نزدیکه ؟

        دیدگاه


          #5
          پاسخ : راهنمایی در پیکربندی LCD گرافیکی 64*128 با کنترلر KS108 در بیسکام

          درسته چون وقتی دیدم اینجوری نمایش میده میکرو رو با یه فایل HEX اماده که مال یه مدار رسم نمودار بود پروگرام کردم و تست کردم LCD مشکلی نداشت (متاسفانه فقط فایل HEX بدون سورس ) ولی برای اجرا باید فیوزبیت ها رو به این شکل برنامه ریزی کنم:
          http://i3.tinypic.com/6h89wjn.gif
          البته برای تست برنامه شما تمام فیوزبیت ها رو پاک کردم.(شخصا از کار با فیوز بیت میترسم چون تا حالا سه تا میکرو رو به خواب ابدی فرستادم

          دیدگاه


            #6
            پاسخ : راهنمایی در پیکربندی LCD گرافیکی 64*128 با کنترلر KS108 در بیسکام

            یه چیز عجیب oo: اینبار که برای تست برنامه میکرو رو پروگرام کردم یادم رفت فیوزبت ها رو پاک کنم با تعجب شکل دایره کامل در اومد :nice:ولی نصف نوشته افتاده پایین oo: . چرا ؟

            http://i11.tinypic.com/67nwndi.jpg

            $regfile = "m32def.dat"
            $lib "glcdks108.lbx"
            $crystal = 16000000
            Config Graphlcd = 128 * 64sed , Dataport = Portc , Controlport = Portd , Ce = 3 , Ce2 = 1 , Cd = 0 , Rd = 6 , Enable = 7 , Reset = 2 , Mode = 8
            Setfont Font8x8
            $include "font8x8.font"
            Cls
            Locate 1 , 1 : Lcd "hello WORLD"
            Circle(40 , 40) , 15 , 255
            End

            دیدگاه


              #7
              پاسخ : راهنمایی در پیکربندی LCD گرافیکی 64*128 با کنترلر KS108 در بیسکام

              اگه پایه reset رو غیر فعال کنی میکرو نمی سوزه اما دوباره نمی تونی با ISP آ‌پروگرمش کنی ...باید روشهای دیگه رو به کار ببری
              اگه نوع کریستال رو روو مدلی بزاری که به کمیکرو وصل نیست دچار مشکل میشی ... مثلا فرکانس کم ... بعدش باید مثلا توو بیسکام یه برنامه بنویسی،کریستال ر. خیلی کم تعریف کنی و ...

              روو portcآ‌ اول باید JTAG رو غیر فعال کنی،2 پین رو از کار میندازه
              فیوز بیتها یک بار پاک شدنش کافیه ... هممون دفعه اولی ...

              ببخشید اما من این پست هارو توو همون سایت که دادی هم دیدم ... و این برنامه من نیست :smile: پس منتظر جواب همون شخص باشی بهرته

              دیدگاه


                #8
                پاسخ : راهنمایی در پیکربندی LCD گرافیکی 64*128 با کنترلر KS108 در بیسکام

                کار با این lcd های گرافیکی یه کم دنگ و فنگ داره فکر نکنم کسی برا بار اول بتونه کار رو یکسره کنه منم گفتم هر جا چیزی در موردش گفته شده یه سوالی بکنم و تمام جوابارو تست کنم بالاخره یکیش جواب میده .

                تو این تصویر فیوزبیتا پاک نشدن که داره نصفه نشون میده (من با ponyprog فیوزبیت ها رو خوندم مثل همونی بود که تو تصویر دیدید) اگه اونا رو پاک کنم که یه مشت خط و نقطه الکی رو lcd نشون میده . در ضمن من هیچی از فیوز بیت نمیدونم فقط تو یکی دو تا مدار مثلا گفته بود برای فعال کردن اوسیلاتور داخلی رو فلان فرکانس فیوز بیت فلان رو یک کنید ما هم همون کار رو کردیم و میکرو خلاص .دیگه نه پروگرامر شناختش نه شد کاری باهاش کرد .

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

                دیدگاه


                  #9
                  پاسخ : راهنمایی در پیکربندی LCD گرافیکی 64*128 با کنترلر KS108 در بیسکام

                  LCD های KS108 درایور های 64*64 دارن،مثلا برای 64*128 2 تا 64*64 هست!!آ‌CS1 برای انتخاب قسمت اول و CS2برای انتخاب قسمت دومه . باید ببینین توو CS2 آ‌چی میشه ؟ ...

                  دیدگاه


                    #10
                    پاسخ : راهنمایی در پیکربندی LCD گرافیکی 64*128 با کنترلر KS108 در بیسکام

                    جای پایه های CS1 و CS2 رو عوض کردم نصف دایره یه طرف و نصف دیگش طرف دیگه LCD نشون داد پس طریقه اتصال من درست بود .
                    دستورای LINE و CIRCLE و ...رو امتحان کردم تو دستورای گرافیکی مشکل نداره و هر چیزی رو سر جای خودش میکشه فقط تو دستورای متنی گیج میزنه البته 8 کلمه اول رو سر جاش مینوسه ولی از کلمه نهم میپره هفت هشت سطر پایینتر

                    دیدگاه


                      #11
                      پاسخ : راهنمایی در پیکربندی LCD گرافیکی 64*128 با کنترلر KS108 در بیسکام

                      من نگفتم جای اونها اشتباهه :sad: ،توضیحم دادم هر کدوم ماله یه طرفه64*64،مشخصا اگه برعکس بزنین جای نصف تصویر ها عوض میشه
                      من منظورم توو نیم سیکلی بود که ماله نیمه دومه ...
                      بگزریم
                      اگه خط و اینها درسته یعنی این مشکل دیگه از اونهاست :sad: ... از کجا اومده نمی دونم،اما مهم نیست،نیمه راست درسته،ببین توو نیمه چپ کلا بر عکسه یا چی؟
                      یعنی 8 خط زیر هم بنویس،ترتیب نمایش نیمه چپ رو پیدا من و بعد نصفه خط رو که نوشتین بقیه رو به اون ترتیب سر جاش بنویسین ..
                      الان خوابم میاد، فکرم کار نمی کنه ... اگه بعدا چیزی یادم اومد میگم ...
                      قرار بود فقط بخونم،اما دارم جواب هم میدم :cry2: ....

                      دیدگاه


                        #12
                        پاسخ : راهنمایی در پیکربندی LCD گرافیکی 64*128 با کنترلر KS108 در بیسکام

                        قربون دستت حالا که شروع کردی نیمه کاره ولش نکن :nice:.

                        اینو نگاه کن:
                        http://i5.tinypic.com/4m13c51.jpg
                        راستی اگه از فیوز بیت ها سر در میاری یه نگاهی به تنظیمات بکن و بگو من چکار کردم.ممکنه بخاطر فیوز بیت ها باشه ؟ راستش خواستم امتحانی یکی دو تا شو پاک کنم ببینم چی میشه (اگه همشو پاک کنی چیزی نشون نمیده یا در هم بر هم نشون میده) ترسیدم این میکرو رو هم به سرنوشت تلخ اون قبلیا گرفتار کنم .
                        راستی من برای اولین باره که از دستور locate استفاده میکنم شاید دستور اشتباه باشه چون همونطور که گفتم تو دستورات گرافیکی مشکلی نداره

                        دیدگاه


                          #13
                          پاسخ : راهنمایی در پیکربندی LCD گرافیکی 64*128 با کنترلر KS108 در بیسکام

                          :cry2: :cry2: :cry2: :cry2:
                          اخرش نتونستم جلوی خودمو بگیرم و شروع کردم به ور رفتن با فیوز بیت ها .تیک BOOTSZ0 و BOOTSZ1 رو برداشتم اتفاقی نیفتاد ولی چشمتون روز بد نبینه وقتی تیک CKSEL1 و CKSEL0 رو برداشتم نامرد حتی اجازه نداد برنامه رو تست کنم :angry:. بله میکرو شد خلاص و رفت وردست قبلیا :cry:.
                          http://i3.tinypic.com/6h89wjn.gif

                          دیدگاه


                            #14
                            پاسخ : راهنمایی در پیکربندی LCD گرافیکی 64*128 با کنترلر KS108 در بیسکام

                            سلام
                            میکروی شما از بین نرفته و فقط نوع کلاک ورودی تغییر پیدا کرده
                            ما زنده به آنیم که آرام نگیریم موجیم که آسودگی ما عدم ماست

                            وقتی یک ملت برای فرهنگ و نژاد و ملیت خویش ارزشی قائل نشد و حقی را که طبیعت برای نگاهداری نژاد پاکش به او ارزانی داشته بود پایمال ساخت و به بیگانگان روی آورد و تسلیم شد دیگر حق ندارد از شکست و بدبختی سیاسی که خودش باعث آن شده است شکایت کند .ادولف هیتلر

                            r.babazadeh@yahoo.com

                            دیدگاه


                              #15
                              پاسخ : راهنمایی در پیکربندی LCD گرافیکی 64*128 با کنترلر KS108 در بیسکام

                              من خوابیده بودم :sad: نمی شد تا صبح صبر می کردین ؟
                              BOOTSZ ها مال بوت لودر بودن ... مهم نیست
                              اما CKSEL ها مال تعیین نوع کریستال هستن،توو دیتا شیتش نوشته کدوم مدل مال کدومه ... احتمالا الان به مد External RC Oscillator رفته باید مثل دیتا شیت مقاومت خازن ببندین و به پروگرمر بزنین و به همون اسیلاتور داخلی برگردونین تا کارتون راحت بشه ...
                              والاه چیزی که عکس گزاشتین جل الخالق داره،یه کپی هم به سایت www.mcselec.com بفرستین بد نیست :mrgreen: ...
                              شب مدار رو توو خونه می بندم برای بار هزارم توو عمرم :cry2: دیگه از مدار بستن خسته شدم :cry2: کاشکه از این وضع در آم خبر میدم

                              دیدگاه

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