اطلاعیه

Collapse
No announcement yet.

بررسی اشکال ارتباط uart بین دو میکروکنترلرavr

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

    بررسی اشکال ارتباط uart بین دو میکروکنترلرavr

    نوشته اصلی توسط af-2012
    با سلام و خسته نباشید
    نمی دانم اشکال از کجاست که بین دو میکرو avr از طریق TXD,RXD اطلاعات ارسال یا دریافت نمیشه.در پروتیوس جواب میده ولی در عمل جواب نمیده خواهشا اشکال چی میتونه باشه.شماتیک مدار رو قرار دادم
    تصویر زیر شماتیک مدار می باشد


    برنامه فرستنده :

    /************************************************** ***
    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 : 10/13/2012
    Author : NeVaDa
    Company :
    Comments:


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

    #include <mega32.h>
    #include <stdio.h>

    void main(void)
    {
    PORTA=0x00;
    DDRA=0x00;
    PORTB=0x00;
    DDRB=0x00;
    PORTC=0x00;
    DDRC=0x00;
    PORTD=0x00;
    DDRD=0x02;
    TCCR0=0x00;
    TCNT0=0x00;
    OCR0=0x00;
    TCCR1A=0x00;
    TCCR1B=0x00;
    TCNT1H=0x00;
    TCNT1L=0x00;
    ICR1H=0x00;
    ICR1L=0x00;
    OCR1AH=0x00;
    OCR1AL=0x00;
    OCR1BH=0x00;
    OCR1BL=0x00;
    ASSR=0x00;
    TCCR2=0x00;
    TCNT2=0x00;
    OCR2=0x00;
    MCUCR=0x00;
    MCUCSR=0x00;
    TIMSK=0x00;
    // USART initialization
    // Communication Parameters: 8 Data, 1 Stop, No Parity
    // USART Receiver: Off
    // USART Transmitter: On
    // USART Mode: Asynchronous
    // USART Baud Rate: 4800
    UCSRA=0x00;
    UCSRB=0x08;
    UCSRC=0x86;
    UBRRH=0x00;
    UBRRL=0x9B;
    ACSR=0x80;
    SFIOR=0x00;
    ADCSRA=0x00;
    SPCR=0x00;

    TWCR=0x00;

    while (1)
    {
    puts("A"
    }
    }

    برنامه گیرنده :
    /************************************************** ***
    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 : 10/4/2012
    Author : NeVaDa
    Company :
    Comments:


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

    #include <mega32.h>

    #include <alcd.h>
    #include <delay.h>
    #include <stdio.h>

    void main(void)
    {unsigned char a,buff[32];
    PORTA=0x00;
    DDRA=0x00;
    PORTB=0x00;
    DDRB=0x00;
    PORTC=0x00;
    DDRC=0x00;
    PORTD=0x00;
    DDRD=0x00;
    TCCR0=0x00;
    TCNT0=0x00;
    OCR0=0x00;
    TCCR1A=0x00;
    TCCR1B=0x00;
    TCNT1H=0x00;
    TCNT1L=0x00;
    ICR1H=0x00;
    ICR1L=0x00;
    OCR1AH=0x00;
    OCR1AL=0x00;
    OCR1BH=0x00;
    OCR1BL=0x00;
    ASSR=0x00;
    TCCR2=0x00;
    TCNT2=0x00;
    OCR2=0x00;
    MCUCR=0x00;
    MCUCSR=0x00;
    TIMSK=0x00;

    // USART initialization
    // Communication Parameters: 8 Data, 1 Stop, No Parity
    // USART Receiver: On
    // USART Transmitter: Off
    // USART Mode: Asynchronous
    // USART Baud Rate: 4800
    UCSRA=0x00;
    UCSRB=0x10;
    UCSRC=0x86;
    UBRRH=0x00;
    UBRRL=0x9B;
    ACSR=0x80;
    SFIOR=0x00;
    ADCSRA=0x00;
    SPCR=0x00;
    TWCR=0x00;
    lcd_init(16);
    lcd_puts("In The Name Of God"
    delay_ms(900);
    lcd_clear();
    while(1){
    lcd_gotoxy(0,0);
    lcd_puts("A = "
    a=getchar();
    lcd_gotoxy(4,0);
    sprintf(buff,"%u",a);
    lcd_puts(buff);
    }
    }

    :applause:
    با سپاس فراوان
    خدایا توانایی خدمت به ملت شریف ایران را در وجودم قرار ده.
    جان ، مال ، زندگی ، نسلم فدای بانوی دوعالم حضرت صدیقه طاهره(س)
    اللهم صل علی فاطمه و آله

    #2
    پاسخ : بررسی اشکال ارتباط uart بین دو میکروکنترلرavr

    درود
    اگه سخت افزاری مشکل داره، می تونه از باود ریت باشه.
    سعی کن کریستال استفاده کنی (که به نظر میرسه استفاده کردی) و سعی کن مقدارش عددی باشه که به 115200 بخش پذیره. مثل 7372800.

    چون باور ریت شما 4800 هست و خیلی زیاد نیست، مشکل احتمالا از عدم هماهنگی جزئی فرکانس کلاک نیست.
    احتمالا کلاک میکرو ها با هم خیلی فرق داره.
    ممکنه یکی رو کریستال تنظیم شده باشه و یکی روی اسیلاتور داخلی. فیوز بیت های هر دو رو روی یک حالت قرار بده. ترجیحا کریستال خارجی.
    مـن هیچ ندانم که مرا آن که سرشت
    از اهل بهشت کرد یا دوزخ زشت
    جامی و بتی و بربطی بر لب کشت
    این هر سه مرا نقد و تو را نسیه بهشت

    دیدگاه


      #3
      پاسخ : بررسی اشکال ارتباط uart بین دو میکروکنترلرavr

      با سلام و قدردانی از دوستان گرامی
      من از کریستال 11.0592 مگاهرتز و باود 4800 استفاده کردم
      برای استفاده از کریستال خارجی به غیر از فیوز بیت های CKSEL3..1,CKOPT آیا فیوز بیت دیگری نیز لازم هست تنظیم شود.
      من CKSEL3..1 = 111 و CKPOT = 0 (رو حداکثر فرکانس)
      لطفا جواب دهید ممنونم ...
      خدایا توانایی خدمت به ملت شریف ایران را در وجودم قرار ده.
      جان ، مال ، زندگی ، نسلم فدای بانوی دوعالم حضرت صدیقه طاهره(س)
      اللهم صل علی فاطمه و آله

      دیدگاه


        #4
        پاسخ : بررسی اشکال ارتباط uart بین دو میکروکنترلرavr

        نوشته اصلی توسط af-2012

        با سلام و قدردانی از دوستان گرامی
        من از کریستال 11.0592 مگاهرتز و باود 4800 استفاده کردم
        برای استفاده از کریستال خارجی به غیر از فیوز بیت های CKSEL3..1,CKOPT آیا فیوز بیت دیگری نیز لازم هست تنظیم شود.
        من CKSEL3..1 = 111 و CKPOT = 0 (رو حداکثر فرکانس)
        لطفا جواب دهید ممنونم ...

        خدایا توانایی خدمت به ملت شریف ایران را در وجودم قرار ده.
        جان ، مال ، زندگی ، نسلم فدای بانوی دوعالم حضرت صدیقه طاهره(س)
        اللهم صل علی فاطمه و آله

        دیدگاه


          #5
          پاسخ : بررسی اشکال ارتباط uart بین دو میکروکنترلرavr

          سلام
          به خاطر تاخیری که داشتم عذر می خوام.
          دوست عزیز من یه برنامه نمونه برات می زارم که با دوحالت استفاده از اینتراپت و بدون اون نوشته شده!!
          از اینا استفاده کن و تست کن. جواب گرفتی بگو تا برنامه رو مطابق با میلیت تغییر بدیم .
          موفق باشید
          http://eca.ir/sharing/uploads/13505084731.rar
          چرا ناراحتی پاتریک!
          + امروز ی بچه دیدم سرچهارراه گل میفروخت
          - از دیدنش ناراحت شدی؟
          + نه
          پس چی ناراحتت کرده
          + اینکه دیدن اینجور بچه ها انقدر واسم عادی شده که دیگه ناراحتم نمیکنه
          ------------------------------------------------------------------------------------------------------
          تاحالا فکر کردی بیسواد کیه؟- بی سواد یعنی کسی که نمیتونه ذهنیاتش رو عملی کنه!
          ------------------------------------------------------------------------------------------------------
          محصولات

          دیدگاه

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