اطلاعیه

Collapse
No announcement yet.

3 میکرو یک ال سی دی؟؟

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

    3 میکرو یک ال سی دی؟؟

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

    #2
    پاسخ : 3 میکرو یک ال سی دی؟؟

    نباید میکرو ها همزمان برای ال سی دی دیتا ارسال کنند یا فرمانی به پایه های کنترلی بدن. باید مثلا از طریق spi (یا ارتباط موازی بین پین و پورت) سه میکرو در ارتباط باشند که وقتی یکی از میکرو ها میخواد ارسالی به lcd داشته باشه اونا ارتباطشون با lcd رو قطع کنند.
    راه دوم و اصولیش اینه که فقط یک میکرو با ال سی دی در ارتباط باشه و بقیه اگه بخوان اطلاعاتشون رو روی ال سی دی بفرستند به میکرویی که ال سی دی داره ارسال کنند تا نمایش داده بشه.
    www.gam-co.blogsky.com

    دیدگاه


      #3
      پاسخ : 3 میکرو یک ال سی دی؟؟

      نوشته اصلی توسط vahidabedi
      نباید میکرو ها همزمان برای ال سی دی دیتا ارسال کنند یا فرمانی به پایه های کنترلی بدن. باید مثلا از طریق spi (یا ارتباط موازی بین پین و پورت) سه میکرو در ارتباط باشند که وقتی یکی از میکرو ها میخواد ارسالی به lcd داشته باشه اونا ارتباطشون با lcd رو قطع کنند.
      راه دوم و اصولیش اینه که فقط یک میکرو با ال سی دی در ارتباط باشه و بقیه اگه بخوان اطلاعاتشون رو روی ال سی دی بفرستند به میکرویی که ال سی دی داره ارسال کنند تا نمایش داده بشه.
      مشکل منم همون دیگه چجوری اون دوتا قطع کنم؟؟با اسپیای 4 تا میکرو یکی کردم (3تا اسلیو و 1مستر) وقتی دیتا میفرستم هرسه تاشون دیتا میفرستن ال سی دی نمیتونم قطعشون کنم!!
      من با دانش و آکاهی ام تمام جهالت ها رو به زانو در خواهم اورد.

      دیدگاه


        #4
        پاسخ : 3 میکرو یک ال سی دی؟؟

        یک راهش اینه که فقط یک میکرو به LCD وصل باشه و از طریق usart یا spi اطلاعات را از میکرو های دیگه بگیره و به ال سی دی بفرسته
        یه راه ساده دیگه هم اینه که یکی از پایه های میکروها(اگر پایه خالی هست) به عنوان نشانه استفاده بشه.به اینصورت که مثلا پایه PORTB.0 را پول پ کنید.برنامه رو طوری تغییر بدید که موقع ارسال دیتا به ال سی دی این پایه صفر باشه و موقع آزاد بود ال سی دی این پایه یک باشه. یعنی هر میکرو قبل از ارسال دیتا چک کنه اگر پایه یک بود دیتا بفرسته و پایه رو تا انتهای کار صفر نگه داره بعد از پایان کار هم پایه رو یک کنه. اما اگر پایه صفر بود صبر کنه تا پایه یک بشه
        امیدوارم منظورم رو رسونده باشم

        دیدگاه


          #5
          پاسخ : 3 میکرو یک ال سی دی؟؟

          نوشته اصلی توسط hamy89
          یک راهش اینه که فقط یک میکرو به LCD وصل باشه و از طریق usart یا spi اطلاعات را از میکرو های دیگه بگیره و به ال سی دی بفرسته
          یه راه ساده دیگه هم اینه که یکی از پایه های میکروها(اگر پایه خالی هست) به عنوان نشانه استفاده بشه.به اینصورت که مثلا پایه PORTB.0 را پول پ کنید.برنامه رو طوری تغییر بدید که موقع ارسال دیتا به ال سی دی این پایه صفر باشه و موقع آزاد بود ال سی دی این پایه یک باشه. یعنی هر میکرو قبل از ارسال دیتا چک کنه اگر پایه یک بود دیتا بفرسته و پایه رو تا انتهای کار صفر نگه داره بعد از پایان کار هم پایه رو یک کنه. اما اگر پایه صفر بود صبر کنه تا پایه یک بشه
          امیدوارم منظورم رو رسونده باشم
          برنامه spii هستش خیلی انعطاف نداره مشکل منم اینکه میخام سه تا اسلیو با یه ال سی دی نشون بدم
          من با دانش و آکاهی ام تمام جهالت ها رو به زانو در خواهم اورد.

          دیدگاه


            #6
            پاسخ : 3 میکرو یک ال سی دی؟؟

            شکل مدار رو میتونی بذاری؟

            دیدگاه


              #7
              پاسخ : 3 میکرو یک ال سی دی؟؟

              نوشته اصلی توسط hamy89
              شکل مدار رو میتونی بذاری؟
              عکس و فایل پروتیوس گذاشتم

              http://s3.picofile.com/file/8204023526/final.rar.html

              البته بیشتر پورت های ورودی ال سی دی(d7 d6 d5 d4) اتصال کوتاه میشن
              من با دانش و آکاهی ام تمام جهالت ها رو به زانو در خواهم اورد.

              دیدگاه


                #8
                پاسخ : 3 میکرو یک ال سی دی؟؟

                توی این حالت بهتر بود lcd رو به مستر وصل میکردی
                اما بازم میشه با همین شکل مشکلو رفع کرد.
                توی برنامه 3تا میکرو یه تغییر باید بدی
                به اینطور که هر میکرویی که نیاز به ارسال دیتا به lcd داره، PORTA را خروجی کنه و هر وقت کارش تموم شد ورودیش کنه.
                چون اگر هر3تا میکرو پورتهاشون رو خروجی کنن اونوقت وضعیت خطها نا مشخص میشه

                دیدگاه


                  #9
                  پاسخ : 3 میکرو یک ال سی دی؟؟

                  نوشته اصلی توسط hamy89
                  توی این حالت بهتر بود lcd رو به مستر وصل میکردی
                  اما بازم میشه با همین شکل مشکلو رفع کرد.
                  توی برنامه 3تا میکرو یه تغییر باید بدی
                  به اینطور که هر میکرویی که نیاز به ارسال دیتا به lcd داره، PORTA را خروجی کنه و هر وقت کارش تموم شد ورودیش کنه.
                  چون اگر هر3تا میکرو پورتهاشون رو خروجی کنن اونوقت وضعیت خطها نا مشخص میشه
                  چجوری بلافاصله ورودیش کنم؟؟
                  کد:
                  a=spi(0); 
                      lcd_gotoxy(0,0);
                      lcd_puts("NUMB : "); 
                      itoa(a,lcd_buffer);
                      lcd_puts(lcd_buffer);
                      delay_ms(250);
                      lcd_clear();
                  این کد منه این چ جوری تغییر بدم
                  من با دانش و آکاهی ام تمام جهالت ها رو به زانو در خواهم اورد.

                  دیدگاه


                    #10
                    پاسخ : 3 میکرو یک ال سی دی؟؟

                    اینطوری
                    کد:
                    a=spi(0); 
                    DDRA=0xFF;
                        lcd_gotoxy(0,0);
                        lcd_puts("NUMB : "); 
                        itoa(a,lcd_buffer);
                        lcd_puts(lcd_buffer);
                        delay_ms(250);
                        lcd_clear();
                    DDRA=0x00;

                    دیدگاه


                      #11
                      پاسخ : 3 میکرو یک ال سی دی؟؟

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

                      دیدگاه


                        #12
                        پاسخ : 3 میکرو یک ال سی دی؟؟

                        آقا شهاب ببخشید ولی اینطوری باز ورودی لچ اتصال کوتاه میشه.مگر اینکه از 3تا بافر مجزا استفاده بشه و میکروی مستر هر بار فقط یکی از بافرهارو enable کنه

                        دیدگاه


                          #13
                          پاسخ : 3 میکرو یک ال سی دی؟؟

                          نوشته اصلی توسط hamy89
                          اینطوری
                          کد:
                          a=spi(0); 
                          DDRA=0xFF;
                              lcd_gotoxy(0,0);
                              lcd_puts("NUMB : "); 
                              itoa(a,lcd_buffer);
                              lcd_puts(lcd_buffer);
                              delay_ms(250);
                              lcd_clear();
                          DDRA=0x00;
                          اقا دستت درد نکنه 90 درصد کارم راه افتاد
                          من با دانش و آکاهی ام تمام جهالت ها رو به زانو در خواهم اورد.

                          دیدگاه


                            #14
                            پاسخ : 3 میکرو یک ال سی دی؟؟

                            سلام
                            دوست عزیز hamy89 من منظورم استفاده از 3 لچ که خروجی هاشون به هم وصل میشن بود.
                            ولی نظرم تغییر کرد، SPI بهتره. توی حالت لچ مدار پیچیده میشه ولی سرعت اجرا بالاتره که شاید محسوس نباشه ولی در SPI شما یه برنامه اضافه برای میکرو دارید.
                            آره من نظر موافقم تغییر کرد.
                            شبنم از سعی به سرچشمه خورشید رسید صائب تبریزی

                            دیدگاه


                              #15
                              پاسخ : 3 میکرو یک ال سی دی؟؟

                              نوشته اصلی توسط milad brave
                              اقا دستت درد نکنه 90 درصد کارم راه افتاد
                              خواهش میکنم. 10 درصد باقیشم مشکل بود بگو شاید بتونیم کمک کنیم

                              دیدگاه

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