اطلاعیه

Collapse
No announcement yet.

ارتباط lcd با atmega8

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

    ارتباط lcd با atmega8

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


    برنامه هم بصورت زیره:
    $regfile = "m8def.dat"
    $crystal = 8000000
    '------------------------
    Config Lcd = 16 * 2
    Config Portd = Output
    Config Lcdpin = Pin , Db4 = Pind.4 , Db5 = Pind.5 , Db6 = Pind.6 , Db7 = Pind.7 , Rs = Pind.2 , E = Pind.3

    Initlcd
    Cursor On
    Cls
    Locate 1 , 1
    Cursor Blink
    Lcd "LCD TEST"
    Locate 2 , 1
    Lcd "www.ECA.ir"
    Waitms 500
    End 'end program

    لطفا اگه برنامه ایرادی داره بهم بگید.
    lcd هیچی نمایش نمیده فقط روشن میشه

    #2
    پاسخ : ارتباط lcd با atmega8

    برنامه ی شما مشکلی ندارد.
    من آن را در پروتئوس تست کردم و کاملا جواب داد.
    احتمالا سخت افزار مشکل دارد.

    دیدگاه


      #3
      پاسخ : ارتباط lcd با atmega8

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

      دیدگاه


        #4
        پاسخ : ارتباط lcd با atmega8

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

        دیدگاه


          #5
          پاسخ : ارتباط lcd با atmega8

          نوشته اصلی توسط JAAFARI
          با سلام
          دوستان من واسه روشن کردن lcd و نمایش نوشته روی اون مشکل دارم


          برنامه هم بصورت زیره:
          $regfile = "m8def.dat"
          $crystal = 8000000
          '------------------------
          Config Lcd = 16 * 2
          Config Portd = Output
          Config Lcdpin = Pin , Db4 = Pind.4 , Db5 = Pind.5 , Db6 = Pind.6 , Db7 = Pind.7 , Rs = Pind.2 , E = Pind.3

          Initlcd
          Cursor On
          Cls
          Locate 1 , 1
          Cursor Blink
          Lcd "LCD TEST"
          Locate 2 , 1
          Lcd "www.ECA.ir"
          Waitms 500
          End 'end program

          لطفا اگه برنامه ایرادی داره بهم بگید.
          lcd هیچی نمایش نمیده فقط روشن میشه
          سلام
          فکر کنم شما باید برنامه رو توی do loop بزاری تا برنامه یکباره تموم نشه . البته دوستمون گفتند که توی پروتئوس امتحان کردن نمیدونم حالا !!

          راستی شما تو عمل تست کردید ؟

          :job: "لطفا وقتی میخوایید برنامه بنویسید برای اینکه درست دیده بشه کل برنامه رو انتخواب کنید و از نوار ابزار بالا چپ چین رو انتخاب کنید" :job:

          نوشته اصلی توسط venoos6772
          سلام.من میخوام تو بسکام یه برنامه ی بنویسم که اگه یه پایه ورودی اگه تغییر حالت داد یعنی چه از صفر به یک یا از یک به صفر تغییر کرد مثلا فلان پایه خروجی رو ست کنه.آیا امکانش هست.
          بله میتونید
          do
          bitwait pinb.0 , reset
          دستورات لازمه تغییر از 1 به صفر رو مینویسی
          bitwait pinb.0 , set
          دستورات لازمه تغییر از صفر به 1 رو مینویسی
          loop

          با این دستور تا زمانی که pinb.0 مقدارش 0 نشده برنامه به خط بعد نمیرود و همچنین در دستور دوم تا زمانی که مقدارش 1 نشده به خط بعد نمیره
          الکترونیک همه کاره دنیا

          دیدگاه


            #6
            پاسخ : ارتباط lcd با atmega8

            با سلام.درتکمیل بحث دوستان ،شما میتونی به پایه های میکروت که به lcd وصل میشه یه تست بزنی ببینی که آیا اطلاعات به lcd فرستاده میشه یا نه. روش کار هم با یه led و مقاومت هستش بیشتر اوقات این تست شما رو به جواب نهایی و این که مشکل از کجاست میرسونه....
            یا حق.
            هیچ چیز در طبیعت برای خود زندگی نمیکند.رودخانه ها آب خود را مصرف نمیکنند درختان میوه خود را نمی خورند خورشید گرمای خود را استفاده نمیکند گل، عطرش را برای خود گسترش نمی دهد...نتیجه: زندگی برای دیگران،قانون و سنت الهی است...

            دیدگاه


              #7
              پاسخ : ارتباط lcd با atmega8

              سلام config lcdpinخودش تنظیمات رو انجام میده نیازی به تعریف پورت بصورت خروجی نیست این دستو رو حذف کن احتمالا خطای تداخل وجود داره یعنی این دو دستور با هم تداخل میکنن یه امتحان بکن برنامه اشکال نداره
              MEHRENIA1366@GMAIL.COM
              مغز انسان خیلی پیچیده است و بخاطر همین همیشه دنبال راه حلهای پیچیده میگرده با کمی تامل میشه راه حلهای ساده تری رو پیدا کرد.همیشه پیچدگی وحجم بالا نشانه داشتن علم زیاد نیست.

              دیدگاه


                #8
                پاسخ : ارتباط lcd با atmega8

                برنامه رو یکم تغییر دادم:
                $regfile = "m8def.dat"
                $crystal = 8000000
                '------------------------
                Config Lcd = 16 * 2

                Config Lcdpin = Pin , Rs = Portd.4 , E = Portd.5 , Db4 = Portd.0 , Db5 = Portd.1 , Db6 =Portd.2 , Db7 = Portd.3

                Initlcd
                Cursor On
                Cls
                Locate 1 , 1
                Cursor Blink
                Lcd "LCD TEST"
                Locate 2 , 1
                Lcd "www.ECA.ir"
                Waitms 500
                End 'end program
                بازم فقط lcd روشن میشه ولی هیچی نمایش داده نمیشه. :cry:
                چیکار کنم؟؟؟؟؟؟؟

                led و مقاومت به کدوم پایه های میکرو یا lcd وصل کنم؟

                دیدگاه


                  #9
                  پاسخ : ارتباط lcd با atmega8

                  امکان دارد میکروکنترلر مشکل داشته باشد.(خراب باشد یا اصل نباشد)
                  اگر میتوانید با یک میکروی دیگر تست کتید.


                  دیدگاه


                    #10
                    پاسخ : ارتباط lcd با atmega8

                    در مورد این دستور
                    Initlcd
                    این یه نوع ریست برای LCD هستش
                    وقتی LCD یه جاهایی کم میاره مثه WD برای LCD عمل میکنه

                    دیدگاه


                      #11
                      پاسخ : ارتباط lcd با atmega8

                      نوشته اصلی توسط PLASMA
                      امکان دارد میکروکنترلر مشکل داشته باشد.(خراب باشد یا اصل نباشد)
                      اگر میتوانید با یک میکروی دیگر تست کتید.
                      پایه شماره 3 ال سی دی رو با پتانسیومتر به تغذیه وصل کردی؟
                      تولید کننده انواع تابلو فرمان آسانسور با تکنولوژی روز دنیا

                      دیدگاه


                        #12
                        پاسخ : ارتباط lcd با atmega8

                        پایه شما ره 3 به گفته دوستمون با یه پتانسیومتر به منفی تغذیه دادی؟ پایه های 7-8-9-10- رو چطور ؟به منفی دادی؟ بقیه پایه ها 1 گرند-2 تغذیه 5ولت مثبت -3 رو گفتم -4 بستگی به برنامه نویسی داره -5 رو باید بدی به گرند -6بستگی به برنامه نویسی داره - 7-8-9-10 میره به گرند -11 -12-13-14 مربوط به برنامه هست خودت باید بگی کدوم پین به کدوم باید وصل بشه -15و16 هم مربوط میشه به نور ضمینه ال سی دی
                        همیشه اول راه اندازی ال سی دی همه همین مشکل رو دارن موفق باشی
                        معلولیت محدودیت نیست

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

                        دیدگاه


                          #13
                          پاسخ : ارتباط lcd با atmega8

                          میکرو سالمه.اتصالات lcd هم به این صورته:



                          دیدگاه


                            #14
                            پاسخ : ارتباط lcd با atmega8

                            جواب گرفتم. :wow:
                            از همگی ممنونم :smile:
                            پایه 4 و 6 lcd رو طبق برنامه ای که نوشته بودم اتصال نداده بودم :redface:

                            دیدگاه


                              #15
                              پاسخ : ارتباط lcd با atmega8

                              نوشته اصلی توسط JAAFARI
                              جواب گرفتم. :wow:
                              از همگی ممنونم :smile:
                              پایه 4 و 6 lcd رو طبق برنامه ای که نوشته بودم اتصال نداده بودم :redface:
                              اگه همون اول با روشی که گفتم (led و مقامت ) پایه های میکرو رو تست میکردی میدیدی که رو کدوم پایه ها سیگنال داری و این همه تو دردسر نمی افتادی...
                              هیچ چیز در طبیعت برای خود زندگی نمیکند.رودخانه ها آب خود را مصرف نمیکنند درختان میوه خود را نمی خورند خورشید گرمای خود را استفاده نمیکند گل، عطرش را برای خود گسترش نمی دهد...نتیجه: زندگی برای دیگران،قانون و سنت الهی است...

                              دیدگاه

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