اطلاعیه

Collapse
No announcement yet.

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

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

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

    این هم برنامه ؛

    $lib "glcdks108.lbx"
    $regfile = "m32def.dat"
    $crystal = 8000000
    $baud = 9600

    $hwstack = 400 '32

    $swstack = 200

    $framesize = 400


    '============================================ =============================='
    Config Adc = Single , Prescaler = Auto , Reference = Avcc
    Config Graphlcd = 128 * 64sed , Dataport = Portb , Controlport = Portc , _
    Ce = 0 , Ce2 = 1 , Cd = 3 , Rd = 4 , Reset = 2 , Enable = 5
    '"""""""&q uot;"""""""&quo t;""''
    Dim X As Word
    Dim Y As Word
    Declare Sub Touch
    Setfont Font8x8
    Wait 1
    Glcdcmd &H3E , 1 : Glcdcmd &H3E , 2 ' both displays off
    Wait 1
    Glcdcmd &H3F , 1 : Glcdcmd &H3F , 2 'both on

    '"""""""&q uot;"""""""&quo t;"""""""" """""
    Showpic 1 , 1 , Pic1
    Wait 5
    Cls
    Main:
    Cls
    Showpic 1 , 1 , Main_pic
    Call Touch
    If X > 100 And X < 200 And Y > 100 And Y < 200 Then
    Goto Menu1
    Elseif X > 500 And X < 600 And Y > 500 And Y < 600 Then
    Goto Menu2
    Else
    Goto Main
    End If

    Menu1:
    Showpic 1 , 1 , Menu1_pic
    Call Touch
    If X > 100 And X < 200 And Y > 100 And Y < 200 Then
    Goto Menu1_1
    Elseif X > 500 And X < 600 And Y > 500 And Y < 600 Then
    Goto Menu1_2
    Elseif X > 700 And X < 800 And Y > 700 And Y < 800 Then
    Goto Menu1_3
    Elseif X > 900 And X < 1000 And Y > 900 And Y < 1000 Then
    Goto Main
    Else
    Goto Menu1
    End If

    Menu1_1:
    Cls
    Lcdat 1 , 10 , "Menu 1-1"
    Lcdat 3 , 10 , "press pen"
    Lcdat 5 , 10 , "to back"
    Call Touch
    If X < 1023 And Y < 1023 Then Goto Menu1

    Menu1_2:
    Cls
    Lcdat 1 , 10 , "Menu 1-2"
    Lcdat 3 , 10 , "press pen"
    Lcdat 5 , 10 , "to back"
    Call Touch
    If X < 1023 And Y < 1023 Then Goto Menu1

    Menu1_3:
    Cls
    Lcdat 1 , 10 , "Menu 1-3"
    Lcdat 3 , 10 , "press pen"
    Lcdat 5 , 10 , "to back"
    Call Touch
    If X < 1023 And Y < 1023 Then Goto Menu1





    Menu2:
    Showpic 1 , 1 , Menu2_pic
    Call Touch
    If X > 100 And X < 200 And Y > 100 And Y < 200 Then
    Goto Menu2_1
    Elseif X > 500 And X < 600 And Y > 500 And Y < 600 Then
    Goto Menu2_2
    Elseif X > 700 And X < 800 And Y > 700 And Y < 800 Then
    Goto Menu2_3
    Elseif X > 900 And X < 1000 And Y > 900 And Y < 1000 Then
    Goto Main
    Else
    Goto Menu2
    End If

    Menu2_1:
    Cls
    Lcdat 1 , 10 , "Menu 2-1"
    Lcdat 3 , 10 , "press pen"
    Lcdat 5 , 10 , "to back"
    Call Touch
    If X < 1023 And Y < 1023 Then Goto Menu2

    Menu2_2:
    Cls
    Lcdat 1 , 10 , "Menu 2-2"
    Lcdat 3 , 10 , "press pen"
    Lcdat 5 , 10 , "to back"
    Call Touch
    If X < 1023 And Y < 1023 Then Goto Menu2

    Menu2_3:
    Cls
    Lcdat 1 , 10 , "Menu 2-3"
    Lcdat 3 , 10 , "press pen"
    Lcdat 5 , 10 , "to back"
    Call Touch
    If X < 1023 And Y < 1023 Then Goto Menu2





    End

    Pic1:
    $bgf "pic1.bgf"
    Main_pic:
    $bgf "main_pic.bgf"
    Menu1_pic: 'sms
    $bgf "Menu1_pic.bgf"
    Menu2_pic:
    $bgf "Menu2_pic.bgf"
    Menu2_1_pic:
    $bgf "Menu2_1.bgf"
    Menu2_2.pic:
    $bgf "Menu2_2.bgf"
    Menu2_3.pic:
    $bgf "Menu2_3.bgf"
    Menu1_1.pic:
    $bgf "Menu1_1.bgf"
    Menu1_2.pic:
    $bgf "Menu1_2.bgf"
    Menu1_3.pic:
    $bgf "Menu1_3.bgf"

    '"""""""&q uot;""""""'&#03 9;' ""
    Sub Touch
    Do
    Stop Adc
    Start Adc
    Config Porta.0 = Output
    Config Porta.1 = Input
    Config Porta.2 = Output
    Config Porta.3 = Input
    Set Porta.0
    Reset Porta.1
    Reset Porta.2
    Reset Porta.3
    X = Getadc(1)
    Waitms 10
    Config Porta.0 = Input
    Config Porta.1 = Output
    Config Porta.2 = Input
    Config Porta.3 = Output
    Reset Porta.0
    Set Porta.1
    Reset Porta.2
    Reset Porta.3
    Y = Getadc(2)
    If X > 12 Or Y > 15 Then
    Exit Do
    End If
    Loop
    End Sub

    $include "font8x8.font"
    http://www.ecapic.ir/image/ECA-090927112544.png

    دیدگاه


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

      برنامه که مشکلی نداره...

      ولی یه پیشنهاد دارم...
      همیشه اینطور موارد که پروژه جواب نمیده .. برنامه رو تکه تکه تست کنید.مثلا اول یک برنامه ساده بنویسید و ببینید که LCD تون سالمه یا نه.. بعد روی بقیه قسمت ها وقت بگذارید...

      اتصالات - پیکربندی LCD - کنتراست - تغذیه - ولتاژ منفی . همگی رو تست کنید...
      www.icesi.ir

      دیدگاه


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

        ال سی دی گرافیکی با چیپ ks108 در پروتئوس راه اندازی میشود اما با شرایط زیر :
        1/ مقدارکریستال (داخلی یا خارجی) باید معلوم باشد
        2/ کلاک میکرو باید حداقل 1.5 یا 2 برابر مقدار کریستال باشد که درغیر اینصورت ( اگر کلاک میکرو تنظیم نشود) برنامه در پروتئوس جواب نمیدهد.

        سوال من اینجاست که با چیپ توشیبا 6963 چنین مشکلی نیست و نیازی به تنظیم کلاک میکرو نمیباشد ، ولی چرا با سری 108 باید کلاک برای میکرو تنظیم کرد . و چه گونه این کار را در روی سخت افزار باید انجام داد .
        اصللا کلاک فقط در پروتئوس باید تنظیم شود یا موقع بستن مدار هم باید رعایت گردد ؟ چه گونه؟ یا این کلاک مربوط به تغییر فیوز بیتها است ؟

        برنامه در باسکام است .

        '******************************************** *****************************************
        $regfile = "m16def.dat"
        $crystal = 4000000

        $lib "glcdKS108.lbx"
        $include "font8x8.font"

        Config Graphlcd = 128 * 64sed , Dataport = Portc , Controlport = Porta , Ce = _
        4 , Ce2 = 3 , Cd = 7 , Rd = 6 , Reset = 2 , Enable = 5

        Setfont Font8x8
        Do
        Cls
        Lcdat 1 , 1 , "SALAM :"

        Lcdat 2 , 2 , "salam:"
        Wait 2

        Loop
        End

        دیدگاه


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

          نوشته اصلی توسط hamed_avr
          من زیاد درمورد glcd اطلاعات ندارم
          زبان برنامه بیسیک
          نوع lcd هم 64*128
          میخوام یه پروژه درست کنم برای طلا فروشی ها که اول قیمت طلا رو از کاربر بگیره بعدش هم با فونت بزرگ نمایش بده ضمنا کاربر بتونه قیمت ها رو عوض کنه
          باسکام مشکلی که با ks108 داره اینه که لایبش در این مورد ال سی دی ها کامل نیست و ال سی دی های با چیپ 6963 را فقط ساپورت میکنه و قابلیت راه اندازی داره . خودتون را با سری ks108 در باسکام خسته نکنید .
          برای این هم میتونید به help باسکام بروید . البته هلپش را در اینترنت میتوانید ببینید در سایت مربوط به باسکام

          دیدگاه


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

            نوشته اصلی توسط hamed_avr
            سلام مشکل این برنامه چیه
            تو پروتئوس جواب نمیده
            $regfile = "M32def.dat"
            $crystal = 8000000
            $lib "glcdKS108.LBX"
            $include "font8x8.font"
            Config Graphlcd = 128 * 64sed , Dataport = Portd , Controlport = Portb , _
            Ce = 1 , Ce2 = 0 , Cd = 2 , Rd = 3 , Reset = 4 , Enable = 5
            Setfont Font8x8
            Cls
            Lcdat 1 , 1 , "www.eca.ir"
            Do
            Loop
            End
            فرکانس کریستالت چنده؟
            چون باسکام با راه اندازی چیپهای ks108 مشکل در لایب داره بیخیال راهاندازی این سری از ال سی دی ها با باسکام شو و از کد ویژن استفاده کن اگر با سی هم مینویسی .
            به هلپ باسکام سری بزنی میبینی که این نرم افزار فقط چیپهای سری t6963 را کاملا ساپورت میکنه .

            ضمنا برای اینکه برنامت را بتونی راه اندازی کنی ؛ در پروتئوس اول راست کلیک کن و هگز برنامتو روی آی سی در پروتئوس کامپایل کن و بعد دوباره روی آی سیت در پروتئوس کلیک راست کن و clock آی سیت را بیشتر از فرکانس داده شده در باسکام قرار بده .
            مثلا اگر فرکانسو در باسکام روی 1000000 گذاشتی ؛ در پروتئوس کلاک را روی 8000000 بگذار . البته این به دلیل عدم ساپورت کامل باسکام از این سری ال سی دیها است .
            با t6963 چنین مشکلاتی وجود ندارد .









            دیدگاه


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

              بیسکام خیلی خوب از سری KS108 پشتیبانی می کنه. تا حالا بالای 100 بار راه انداختمش
              اگه جواب نمیده :
              1- ورژن بیسکامتو چک کن .
              2- اتصالات سخت افزاری رو بررسی کن .
              3- بررسی کن فایل font8x8.font تو همون مسیری باشه که برنامه رو ذخیره کردی .

              دیدگاه


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

                نوشته اصلی توسط حامــد
                بیسکام خیلی خوب از سری KS108 پشتیبانی می کنه. تا حالا بالای 100 بار راه انداختمش
                اگه جواب نمیده :
                1- ورژن بیسکامتو چک کن .
                2- اتصالات سخت افزاری رو بررسی کن .
                3- بررسی کن فایل font8x8.font تو همون مسیری باشه که برنامه رو ذخیره کردی .

                help باسکام که چیز دیگری میگه .

                دیدگاه


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

                  میشه بگی کجای Help گفته ساپورت نمی کنه ؟
                  می خوام برم ببینم. ضمنا من از 1.11.9.0 استفاده می کنم.

                  دیدگاه


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

                    نوشته اصلی توسط حامــد
                    میشه بگی کجای Help گفته ساپورت نمی کنه ؟
                    می خوام برم ببینم. ضمنا من از 1.11.9.0 استفاده می کنم.
                    یک اتفاق عجیب (آ‌قابل توجه آقای حامدآ‌)آ‌

                    این فایل را (آ‌که شامل مثال باسکام و فایل Hex و مثال پروتئوس است) را از ebook آقای خلیلی پیدا کردم (آ‌با تشکر از ایشان)

                    لینک داونلود

                    http://www.megaupload.com/?d=8N17FTMT

                    جالب اینجاست که وقتی فایل hex ایشان را در پروتئوس میزارم اجرا میشه ولی وقتی برنامه بیسیک ایشان رو با باسکام 1.11.9.0 کامپایل میکنم ( فایل Hex درست میکنم ) ، فایل Hex درست شده در پروتئوس کار نمیکنه !!!!! :eek: :eek:

                    در ضمن وقتی فایل hex آقای خلیلی را با Hex خودم توسط برنامه Hex comparison مقایسه میکنم کلی اختلاف داره !!!
                    به نظر شما علت چی میتونه باشه ؟؟؟

                    دوستانی که باسکام دارند میتوند این را آزمایش کنند.

                    حداقل میفهمند که باسکامشون با KS108 مشکل داره یا نه .

                    دیدگاه


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

                      مجید جان امضات منو کشته .
                      من کلا با این مگاپلود مشکل دارم . میشه یه جا دیگه پ کنی؟
                      برام جالبه . می خوام یه بررسی بکنم.
                      ضمنا من با 1.11.9.0 و 1.11.8.7. و 1.11.8.3 و 1.11.8.1 این LCD ها رو راه اندازی کردم .

                      دیدگاه


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

                        نوشته اصلی توسط حامــد
                        مجید جان امضات منو کشته .
                        من کلا با این مگاپلود مشکل دارم . میشه یه جا دیگه پ کنی؟
                        برام جالبه . می خوام یه بررسی بکنم.
                        ضمنا من با 1.11.9.0 و 1.11.8.7. و 1.11.8.3 و 1.11.8.1 این LCD ها رو راه اندازی کردم .
                        بفرمایید

                        http://www.up.ma/images/lthjcwf0dqbj8iev4gmv.rar

                        دیدگاه


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

                          نوشته اصلی توسط حامــد
                          میشه بگی کجای Help گفته ساپورت نمی کنه ؟
                          می خوام برم ببینم. ضمنا من از 1.11.9.0 استفاده می کنم.
                          help کامل باسکام به حجم 16 مگ را از سایت خودش mscelec دانلود کنhttp://avrhelp.mcselec.com/index.html


                          GLCD.LIB (LBX) is a library for Graphic LCD’s based on the T6963C chip.



                          The library contains code for LOCATE, CLS, PSET, LINE, CIRCLE, SHOWPIC and SHOWPICE.




                          دیدگاه


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

                            مهران جان اون کتابخونه یقینا برای t6963 نوشته شده . ولی برای KS108 باید از این کتابخونه استفاده کنی :

                            $lib "glcdKS108.LBX"


                            اینی که من میگم دستور LCD نداره . جاش باید بنویسی LCDAT X, Y , TEXT

                            دیدگاه


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

                              نوشته اصلی توسط حامــد
                              مهران جان اون کتابخونه یقینا برای t6963 نوشته شده . ولی برای KS108 باید از این کتابخونه استفاده کنی :

                              $lib "glcdKS108.LBX"


                              اینی که من میگم دستور LCD نداره . جاش باید بنویسی LCDAT X, Y , TEXT
                              شما درست میفرمایید ولی باسکام این نوع چیپ را ساپورت نمیکند و فقط ملاک عمل یک فایل ناقص کتابخانه نمیباشد .
                              اگر شما در باسکام این نوع چیپ را راه اندازی کردی به من هم بگو.

                              دیدگاه


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

                                شاید تو پروتئوس جواب نده ولی من در عمل بارها جواب گرفتم...

                                شما تو عمل تست کردید؟یا ملاکتون پروتئوس هستش؟
                                www.icesi.ir

                                دیدگاه

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