اطلاعیه

Collapse
No announcement yet.

مشکل با lcd

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

    مشکل با lcd

    سلام دوست عزیز
    داده های حاصل از تبدیل سیگنال آنالوگ به دیجیتال را میخوام تو lcd نمایش بدم
    توی proteus جواب میده ولی در عمل چیزی توی lcd نمایش داده نمیشه
    پایه سوم رو هم با پتانسیومتر 10k به زمین وصل کردم
    وقتی فایل hex را درست میکردم فیوز بیت های cksel3 ...cksel0 همه صفر بودن (نا کریستال حارجی استفاده کنم) ولی موقع پروقرم کردن atmega32 با یه نرم افزار دیگه cksel0 برابر 1 بود
    بار آخر که پروقرم کردم cksel0 را برابر 0 کردم ولی بازم جواب نمیده
    آیا فیوزبیت cksel0 عوض شده یا نه؟ :sad:
    لطفا زود کمکم کنید :sad: :cry: :cry2:

    #2
    پاسخ : مشکل با lcd

    پایه های 1 و 3 و 5 باید به - وصل بشن


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

    دیدگاه


      #3
      پاسخ : مشکل با lcd

      قبل از هر کار برای اینکه مطمئن بشی میکرو درست کار میکنه یه برنامه کوچیک بنویس که پورت B رو هر یک ثانیه یکبار صفر و یک بکنه. بعد ازاینکه مطمئن شدی میکرو داره درست کار میکنه حالا:
      1- چک کن اگه ال سی دی به پورت C وصل هست باید Jtag رو موقع پروگرم کردن غیر فعال کنی
      2- پتانسیومتر رو اونقدر بچرخون که خونه های ال سی دی نه روشن روشن باشه و نه خیلی تیره(چون تو هر دو حالت ال سی دی کار میکنه ولی چیزی دیده نمیشه)

      دیدگاه


        #4
        پاسخ : مشکل با lcd

        sسلام دوست عزیز
        Jtag رو موقع پروگرم کردن غیر فعال کردم
        فیوز بیت های cksel3 ...cksel0 رو موقع پروگرم کردن 1 کردم (تا کریستال حارجی استفاده کنم)
        پایه ی 1و3 از lcd را به سر وسط پتانسیومتر وصل کردم vcc را به سر اول پتانسیومتر وصل کردم و gnd رابه سر سوم پتانسیومتر وصل کردم( اگه vcc را به سر اول پتانسیومتر وصل نکنم بازم جواب نمیده)
        1)هرچی پتانسیومتر 10k را عوض میکنم lcd روشن و خاموش میشه ولی چیری نمایش داده نمیشه
        2)همچنین میکرو از فرکانس داخلی استفاده میکنه در حالی که من فیوز بیت های cksel3 ...cksel0 رو موقع پروگرم کردن 1 کردم و وقتی یکled توسط PORTB.0 روشن و خاموش میشه با بردشتن کریستال خارجی 11059200 از مدار ، روشن و خاموش شدن ادامه پیدا میکنه یعنی میکرو از فرکانس داخلی استفاده میکنه(من توی برنامه نویسی گفتم LED 1 ثانیه روشن و 1 ثانیه خاموش) ولی در عمل حدودا 8 ثانیه طول میکشه)
        3) ضمنا آیا پایه های 1و2 (از سمت راست ) LCD باید بدون اتصال باشن؟
        در صورت امکان شماره موبایل خودتان را بگزارید تا من خسته راحت تر این کرو تموم کنم

        دیدگاه


          #5
          پاسخ : مشکل با lcd

          لطفا کمکم کنید :cry: :cry: :cry: :cry: :cry:

          دیدگاه


            #6
            پاسخ : مشکل با lcd

            نوشته اصلی توسط mehdi8310021
            لطفا کمکم کنید :cry: :cry: :cry: :cry: :cry:
            با سلام برنامه ای که نوشتید رو بزارید تا بهتر بشه کمکتون کرد

            در ضمن چرا پایه های 1 و 3 رو به ولوم وصل کردی ؟
            اتصال صحیح اینه :


            AV Maziton 100
            Render By Artlantis Studio
            [img width=346 height=100]http://maziyar123.persiangig.com/View.jpg[/img]

            دیدگاه


              #7
              پاسخ : مشکل با lcd

              سلام
              اینا کد ها هستن
              /************************************************
              This program was produced by the
              CodeWizardAVR V2.05.0 Professional
              Automatic Program Generator
              © Copyright 1998-2010 Pavel Haiduc, HP InfoTech s.r.l.
              http://www.hpinfotech.com

              Project :
              Version :
              Date : 06/22/2011
              Author :
              Company :
              Comments:


              Chip type : ATmega32A
              Program type : Application
              AVR Core Clock frequency: 11.059200 MHz
              Memory model : Small
              External RAM size : 0
              Data Stack size : 512
              ************************************************** ***/

              #include <mega32a.h>

              #include <delay.h>

              // Standard Input/Output functions
              #include <stdio.h>

              #define ADC_VREF_TYPE 0x4B
              // Alphanumeric LCD Module functions
              #include <alcd.h>

              #asm
              .equ __lcd_port = 0x18
              #endasm
              // Read the AD conversion result
              char code[20];
              unsigned int data;
              unsigned int read_adc(unsigned char adc_input)
              {
              ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);
              // Delay needed for the stabilization of the ADC input voltage
              delay_us(10);
              // Start the AD conversion
              ADCSRA|=0x40;
              // Wait for the AD conversion to complete
              while ((ADCSRA & 0x10)==0);
              ADCSRA|=0x10;
              return ADCW;
              }

              // Declare your global variables here
              int a;
              void main(void)
              {
              // Declare your local variables here

              // Input/Output Ports initialization
              // Port A initialization
              // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
              // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
              PORTA=0x00;
              DDRA=0x00;

              // Port B initialization
              // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
              // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
              PORTB=0x00;
              DDRB=0x00;

              // Port C initialization
              // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
              // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
              PORTC=0x00;
              DDRC=0x00;

              // Port D initialization
              // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
              // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
              PORTD=0x00;
              DDRD=0x00;

              // Timer/Counter 0 initialization
              // Clock source: System Clock
              // Clock value: Timer 0 Stopped
              // Mode: Normal top=0xFF
              // OC0 output: Disconnected
              TCCR0=0x00;
              TCNT0=0x00;
              OCR0=0x00;

              // Timer/Counter 1 initialization
              // Clock source: System Clock
              // Clock value: Timer1 Stopped
              // Mode: Normal top=0xFFFF
              // OC1A output: Discon.
              // OC1B output: Discon.
              // Noise Canceler: Off
              // Input Capture on Falling Edge
              // Timer1 Overflow Interrupt: Off
              // Input Capture Interrupt: Off
              // Compare A Match Interrupt: Off
              // Compare B Match Interrupt: Off
              TCCR1A=0x00;
              TCCR1B=0x00;
              TCNT1H=0x00;
              TCNT1L=0x00;
              ICR1H=0x00;
              ICR1L=0x00;
              OCR1AH=0x00;
              OCR1AL=0x00;
              OCR1BH=0x00;
              OCR1BL=0x00;

              // Timer/Counter 2 initialization
              // Clock source: System Clock
              // Clock value: Timer2 Stopped
              // Mode: Normal top=0xFF
              // OC2 output: Disconnected
              ASSR=0x00;
              TCCR2=0x00;
              TCNT2=0x00;
              OCR2=0x00;

              // External Interrupt(s) initialization
              // INT0: Off
              // INT1: Off
              // INT2: Off
              MCUCR=0x00;
              MCUCSR=0x00;

              // Timer(s)/Counter(s) Interrupt(s) initialization
              TIMSK=0x00;

              // USART initialization
              // Communication Parameters: 8 Data, 1 Stop, No Parity
              // USART Receiver: On
              // USART Transmitter: On
              // USART Mode: Asynchronous
              // USART Baud Rate: 9600
              UCSRA=0x00;
              UCSRB=0x18;
              UCSRC=0x06;
              UBRRH=0x00;
              UBRRL=0x47;

              // Analog Comparator initialization
              // Analog Comparator: Off
              // Analog Comparator Input Capture by Timer/Counter 1: Off
              ACSR=0x80;
              SFIOR=0x00;

              // ADC initialization
              // ADC Clock frequency: 172.800 kHz
              // ADC Voltage Reference: AVCC pin
              ADMUX=ADC_VREF_TYPE & 0xff;
              ADCSRA=0x87;

              // SPI initialization
              // SPI disabled
              SPCR=0x00;

              // TWI initialization
              // TWI disabled
              TWCR=0x00;

              // Alphanumeric LCD initialization
              // Connections specified in the
              // Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:
              // RS - PORTC Bit 0
              // RD - PORTC Bit 1
              // EN - PORTC Bit 2
              // D4 - PORTC Bit 4
              // D5 - PORTC Bit 5
              // D6 - PORTC Bit 6
              // D7 - PORTC Bit 7
              // Characters/line: 16
              lcd_init(16);

              while (1)
              {
              // Place your code here

              data=ADCW ;
              lcd_clear();
              sprintf(code,"ADC=%d",data);
              lcd_puts(code);
              a=read_adc(0);
              printf("adcw=%d \n",a);
              delay_ms(1000);
              }
              }


              اگه آدرس الکترونیکی خودتان را قید کنید فایل پروتئوس را براتون میفرستم
              نمیدونم چطوری پلود کنم تا همه فایل پروتئوس را ببینند
              توی پروتئوس جواب میده
              [move]در عمل جواب نمیده[/move]

              با یه پروگرمر دیگه jtagen را disable کردم و فیوز بیت های cksel3 ...cksel0 رو موقع پروگرم کردن 1 کردم (تا کریستال حارجی استفاده کنم) ، این دفه از کریستال خارجی استفاده میکنه :biggrin:

              :-??
              بازم در عمل جواب نمیده<a href="http://&#91;img" target="_blank...img][/img]</a>
              بهم بگید چطوری پلود کنم تا همه فایل پروتئوس را ببینند
              خخخخخخخخیلی کلافه شدم
              کککککمککک



              دیدگاه


                #8
                پاسخ : مشکل با lcd

                سلام فایل پروتئوس رو زیپ کن بعد برو تو این سایت پلود کن :
                http://uploadtak.com

                بعد از پلود لینکشو همینجا بزار
                AV Maziton 100
                Render By Artlantis Studio
                [img width=346 height=100]http://maziyar123.persiangig.com/View.jpg[/img]

                دیدگاه


                  #9
                  پاسخ : مشکل با lcd

                  سلام خدمت تمامی جوانان کوشای ایرانی که صادقانه و مردانه به هموطناشون کمک میکنند تا کشورشون را آباد و پیشرفته و قدرتمند کنند :read:
                  مشکل اینجانب حل شد
                  مشکل این بود که شماره پایه های lcd را از طرف غلط نامگزاری کرده بودم
                  اینم فایل پروتئوس
                  http://uploadtak.com/images/g62okh8mpid1bg4cek.rar

                  دیدگاه


                    #10
                    پاسخ : مشکل با lcd

                    نوشته اصلی توسط mehdi8310021
                    سلام خدمت تمامی جوانان کوشای ایرانی که صادقانه و مردانه به هموطناشون کمک میکنند تا کشورشون را آباد و پیشرفته و قدرتمند کنند :read:
                    مشکل اینجانب حل شد
                    مشکل این بود که شماره پایه های lcd را از طرف غلط نامگزاری کرده بودم
                    اینم فایل پروتئوس
                    http://uploadtak.com/images/g62okh8mpid1bg4cek.rar
                    oo: oo: oo: oo: oo:

                    پس شانس آوردی lcd نسوخت

                    AV Maziton 100
                    Render By Artlantis Studio
                    [img width=346 height=100]http://maziyar123.persiangig.com/View.jpg[/img]

                    دیدگاه


                      #11
                      پاسخ : مشکل با lcd

                      نوشته اصلی توسط maziyar123
                      پس شانس آوردی lcd نسوخت
                      میگن تا ماشین چپ نکنی !! راننده نمیشی و تا وقتی ال سی دی نسوزونی مهندس!!

                      دیدگاه


                        #12
                        &quot;ارسال داده از میکرو به matlab&quot;

                        سلام دوباره به دوستان کوشا
                        داده هایی رو میخاستم با میکرو به پورت com کمپیوتر بفرستم
                        این هم فایل پروتئوس و برنامه codevision آن است
                        http://uploadtak.com/images/2gy92ot9lchijntgnatp.rar

                        توی پروتئوس جواب میده
                        میخواستم راهنمایی کنید که چه کارها و چه کدهایی باید توی matlab بنویسم تا داده ها رو دریافت کنم و اونارو بتونم پردازش بکنم :rolleyes:
                        و همچنین بدونم که داده ها ارسال میشن یا نه
                        خیلی ممنون

                        دیدگاه

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