اطلاعیه

Collapse
No announcement yet.

ts12864a LCD

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

    #46
    پاسخ : ts12864a LCD

    سلام
    ببین من همه چیز رو درست رو lcd میبینم اما مشکل اینجاست که پرش داره همین
    در ضمن adc برا یه کار دیگه هست اینجا و فعلا کاربردی نداره

    دیدگاه


      #47
      پاسخ : ts12864a LCD

      سلام.

      شرمنده چند روز نبودم.

      مهندس بذر افشان 1-شما دور موتور رو به چه صورت تبدیل به پالس مربعی کردی؟

      2- به نظر من دستور Lcdat 1 , 5 : Lcd Mor معتبر نیست. شما میگی داره کار میکنه ،تعجب کردم.

      www.icesi.ir

      دیدگاه


        #48
        پاسخ : ts12864a LCD

        منم با میلاد موافقم.
        اینو مطمئنم که با توجه به برنامه ای که گذاشتی :"=RPM" نمایش داده نمیشه(فقط قسمت از R دیده میشه). مگر اینکه یه چیز دیگه تو میکرو ریخته باشی.

        اما چون میگی پرش داره احتمالا از سخت افزار "اثر هال" باید باشه. اگه اسکوپ داری تست کن . حتما خروجیت 0 و 1 نیست.

        دیدگاه


          #49
          پاسخ : ts12864a LCD

          حامد جان من با این نوع lcd کار کردم.

          حرفت درسته آقای بذر افشان از این دستور درست استفاده نکرده.

          rpm نمایش داده نمیشه شاید به احتمال 90 درصد R رو نشون بده که اونم به طور کامل نشون داده نمیشه.


          این نوع lcd وقتی از از دستور lcdat استفاده میکنی باید یه مکان از 1 تا 128 را برای حروف مشخص بکنی.

          www.icesi.ir

          دیدگاه


            #50
            پاسخ : ts12864a LCD

            سلام
            ببینید من برا نوشتن حروف "RPM از دستور LOCATE 1,5:LCD "RPM" استفاده کردم و الان هم داره کار میکنه
            برای تغییر سرعت موتور هم از پالس PWM استفاده کردم که با یه دارلینگتون ولتاز موتور رو تغییر میده
            در مورد سنسور هال هم نمیتونم چیزی بگم چون اسکوپ ندارم اما یه بار دیگه مشکل رو توضیح میدم
            ببینید فرض کنید الان موتور من خاموش هست دقیقا این جمله رو LCD میاد
            RPM=0
            واین همون چیزی هست که میخواهیم

            حالا موتور یه کم سرعت میگیره رو LCD مینویسه
            RPM=3400
            واین هم مطلوب هست
            حالا سرعت ماکریمم میشه رو LCD میاد
            RPM=6400
            این هم درست
            حالا موتور رو خاموش میکنیم رو LCD میاد
            RPM=0400
            میبینید باگ در اصل اینجا رخ میده و انگار خوب REFRESH نمیشه
            یعنی عدد اخر رو LCD میمونه
            این که در بالا ذکر شد مشکل اصلی هست
            اما یه مشکل دیگه هم هست و اون هم این هست که
            مثلا سرعت که از 3400 به 5400 افزایش پیدا میکنه برای مدتی رو صفحه نمایش میاد
            3400
            5400
            34000
            5400
            و در نهایت رو 5400 ثابت میشه این پرش رو میشه با معدل گیری حل کرد اما در مورد مشکل بالا نمی دونم

            دیدگاه


              #51
              پاسخ : ts12864a LCD

              آهان منم همچین مشکلی رو داشتم.

              برای رفع این کار تو لوپی که برنامه رو نوشتی از cls هم استفاده کن یعنی lcd رو پاک کن.

              برنامه درسته وقتی ماکزیمم هستش 6400 رو نشون میده و وقتی مینیمم هست 0400 نشون میده در واقع وقتی lcd رو پاک کنی مشکلت رفع میشه.
              www.icesi.ir

              دیدگاه


                #52
                پاسخ : ts12864a LCD

                سلام
                نه دیگه نمی شه
                درست نمیشه

                دیدگاه


                  #53
                  پاسخ : ts12864a LCD

                  چی نمیشه؟
                  چرا درست نمیشه؟
                  کار نشد نداره؟

                  cls رو به کار بردی؟
                  www.icesi.ir

                  دیدگاه


                    #54
                    پاسخ : ts12864a LCD

                    من پیشنهادم اینه:
                    تو خط یک بنویس: " =RPM"
                    تو خط دو اول بنویس " " ( چند تا فاصله)
                    حالا تو همون خط دو بگو rpm رو نمایش بده.

                    دیدگاه


                      #55
                      پاسخ : ts12864a LCD

                      من با همین lcd یه کورنومتر درست کرده بودم و همین مشکل رو داشتم .

                      تا 59 می شمرد وقتی صفر میشد به این صورت میشد 09

                      قبل از هر با نمایش cls کردم درست شد.
                      www.icesi.ir

                      دیدگاه


                        #56
                        پاسخ : ts12864a LCD

                        کاری که منم گفتم شبیه همون CLS هست . فقط فرقش اینه که اگه CLS کنی اون کلمه RPM چشمک زن دیده میشه و لی اگه فقط قسمت مقدار رو پاک کنی مشکل برطرف میشه.

                        دیدگاه


                          #57
                          پاسخ : ts12864a LCD

                          سلام
                          ببینید اول اینکه من با دستور lcdat 1,1 "RPM" تونستم کلمه رو کامل رو صفحه نمایش بدم حالا جالب اینجاست که اگه برای نمایش دیتا بنویسم LCDAT1,5 ,MOR اون وقت دیتا میآد جای حروف میشینه وهمه چیز خراب میشه اما اگه برا نوشتن دیتا از دستور ..... LOCATAT استفاده کنم همه چیز درست کار میکنه ومثله الان جواب میده در مورد CLS هم اگر زمان رو کم انتخاب کنیم با صرفنظر کردن از اون چشمکی که میزنه قابل قبول هست اما نظر آقا حامد هم جالب هست باید تست کرد

                          دیدگاه


                            #58
                            پاسخ : ts12864a LCD

                            مهندس، شما برای نمایش دور موتور از دستور LCDAT1,5 ,MOR استفاده نکنن یعنی مقدار 5 رو به 25 تغییر بده بعد ببین درست میشه؟

                            در این نوع lcd وقتی بنویسی lcdat 1,5 نوشته رو در خط یک و در پیکسل 5 نمایش میده.

                            وقتی شما در خط 1 و پیکسل 1 کلمه RPM رو نمایش میدی.به طور طبیعی RPM از 5 پیکسل خیلی بیشتر هستش برای مثال به عکس زیر دقت کن،برای نمایش کلمه RPM حداقل 25 پیکسل باید خالی بگذاری.




                            lcdat 1 , 1 , "rpm"

                            lcdat 1 , 26 , mor

                            مثل بالا از چنین دستوراتی استفاده کن.

                            برای اون مشکلتم یه دستور if بنویس که هر موقع mor برابر صفر شد یه بار lcd رو پاک کنه بعد صفر رو نمایش بده.
                            www.icesi.ir

                            دیدگاه


                              #59
                              پاسخ : ts12864a LCD

                              سلام
                              من با lcd:lgm12864 مشکل دارم(درایورش بایدks0108 باشه).
                              وقتی compile می کنم error:lable not found[LCD_CONTROL]L میده. :sad:
                              دستورم اینه :
                              Config Graphlcd = 128 * 64sed , Dataport = Porta , Controlport = Portc , _
                              Ce = 0 , Ce2 = 1 , Cd = 2 , Rd = 3 , Reset = 4 , Enable = 5 , Mode = 8
                              دستور $include"font8x8.font" هم نمی دونم برای چیه؟
                              Be sure your sin will find you out

                              دیدگاه


                                #60
                                پاسخ : ts12864a LCD

                                $include"font8x8.font این دستور برای فراخونی فایل فونت های 8 در 8 انگلیسیه. این فایل باید حتما تو همون مسیری باشه که به نام اونجا ذخیره شده.
                                اونو می تونی از محل نصب Bascom پیدا کنی.

                                دیدگاه

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