اطلاعیه

Collapse
No announcement yet.

ارسال یک کلمه از یک میکرو به میکروی دیگه با usart ؟

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

    ارسال یک کلمه از یک میکرو به میکروی دیگه با usart ؟

    سلام وققتون بخیر چطوری یک کلمه رو از میکروی شماره 1 به میکروی شما انتقال بدم با USART برنامشو نوشتم هم فرستنده و هم گیرنده اما جواب نمیده :
    فرستنده :
    #include <mega16.h>
    #include <stdio.h>

    void main(void)
    {

    char Data[20] ;

    // USART initialization
    // Communication Parameters: 8 Data, 1 Stop, No Parity
    // USART Receiver: Off
    // USART Transmitter: On
    // USART Mode: Asynchronous
    // USART Baud Rate: 9600
    UCSRA=(0<<RXC) | (0<<TXC) | (0<<UDRE) | (0<<FE) | (0<<DOR) | (0<<UPE) | (0<<U2X) | (0<<MPCM);
    UCSRB=(0<<RXCIE) | (0<<TXCIE) | (0<<UDRIE) | (0<<RXEN) | (1<<TXEN) | (0<<UCSZ2) | (0<<RXB8) | (0<<TXB8);
    UCSRC=(1<<URSEL) | (0<<UMSEL) | (0<<UPM1) | (0<<UPM0) | (0<<USBS) | (1<<UCSZ1) | (1<<UCSZ0) | (0<<UCPOL);
    UBRRH=0x00;
    UBRRL=0x33;


    while (1)
    {

    printf("%S",Data);

    }
    }

    گیرنده :
    #include <mega16.h>

    // Alphanumeric LCD functions
    #include <alcd.h>

    #include <stdlib.h>
    #include <stdio.h>



    void main(void)
    {
    char Data[20];




    // USART initialization
    // Communication Parameters: 8 Data, 1 Stop, No Parity
    // USART Receiver: On
    // USART Transmitter: Off
    // USART Mode: Asynchronous
    // USART Baud Rate: 9600
    UCSRA=(0<<RXC) | (0<<TXC) | (0<<UDRE) | (0<<FE) | (0<<DOR) | (0<<UPE) | (0<<U2X) | (0<<MPCM);
    UCSRB=(0<<RXCIE) | (0<<TXCIE) | (0<<UDRIE) | (1<<RXEN) | (0<<TXEN) | (0<<UCSZ2) | (0<<RXB8) | (0<<TXB8);
    UCSRC=(1<<URSEL) | (0<<UMSEL) | (0<<UPM1) | (0<<UPM0) | (0<<USBS) | (1<<UCSZ1) | (1<<UCSZ0) | (0<<UCPOL);
    UBRRH=0x00;
    UBRRL=0x33;



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

    while (1)
    {
    lcd_gotoxy(0,0);
    lcd_puts(Data);
    }
    }

    #2
    پاسخ : ارسال یک کلمه از یک میکرو به میکروی دیگه با usart ؟

    سلام

    گام اول سعی کنید مدار فرستنده رو راه اندازی کنید. الان دیتا کجا مقدار می گیره؟؟؟؟؟
    حواستون رو بیشتر جمع کنید. قرار نیست کدویزارد کد مورد نظر شما رو تمام و کمال بهتون بده.
    بعد از نوشتن کد فرستنده اون رو با ترمینال سیستمتون چک کنید و اگر دیتا رو دریافت کردین برین سراغ گیرنده.

    فرستنده رو حل کنید تا توضیحات گیرنده رو هم خدمتتون عرض کنم.
    چرا ناراحتی پاتریک!
    + امروز ی بچه دیدم سرچهارراه گل میفروخت
    - از دیدنش ناراحت شدی؟
    + نه
    پس چی ناراحتت کرده
    + اینکه دیدن اینجور بچه ها انقدر واسم عادی شده که دیگه ناراحتم نمیکنه
    ------------------------------------------------------------------------------------------------------
    تاحالا فکر کردی بیسواد کیه؟- بی سواد یعنی کسی که نمیتونه ذهنیاتش رو عملی کنه!
    ------------------------------------------------------------------------------------------------------
    محصولات

    دیدگاه


      #3
      پاسخ : ارسال یک کلمه از یک میکرو به میکروی دیگه با usart ؟

      سلام من براشون دیتا گذاشتم حالا چطور اون رو با ترمینال سیستم چک کنم ؟
      #include <mega16.h>
      #include <stdio.h>

      void main(void)
      {

      char Data[20]="HELLO WORD" ;

      // USART initialization
      // Communication Parameters: 8 Data, 1 Stop, No Parity
      // USART Receiver: Off
      // USART Transmitter: On
      // USART Mode: Asynchronous
      // USART Baud Rate: 9600
      UCSRA=(0<<RXC) | (0<<TXC) | (0<<UDRE) | (0<<FE) | (0<<DOR) | (0<<UPE) | (0<<U2X) | (0<<MPCM);
      UCSRB=(0<<RXCIE) | (0<<TXCIE) | (0<<UDRIE) | (0<<RXEN) | (1<<TXEN) | (0<<UCSZ2) | (0<<RXB8) | (0<<TXB8);
      UCSRC=(1<<URSEL) | (0<<UMSEL) | (0<<UPM1) | (0<<UPM0) | (0<<USBS) | (1<<UCSZ1) | (1<<UCSZ0) | (0<<UCPOL);
      UBRRH=0x00;
      UBRRL=0x33;


      while (1)
      {

      printf("%S",Data);

      }
      }
      خدایا یکی بزرگترین آرزویهایم در این دنیا این است که همه مردم حالشان خوب باشد و احساس خوشبختی داشته باشند....

      دیدگاه


        #4
        پاسخ : ارسال یک کلمه از یک میکرو به میکروی دیگه با usart ؟

        سلام
        %s رو با حرف کوچیک بنویسید
        تو شبیه سازی هم از virtual terminal استفاده کنید به راحتی میتونید نتیجه رو ببینید.
        [آموزشی] کنترل رله با پیامک توسط sim800l
        [آموزشی] راه اندازی سنسورهای DHT11 و DHT22 با کدویژن
        [آموزشی] مدار عملی اتصال میکروفن خازنی به میکروکنترلر
        [آموزشی] آموزش نحوه راه اندازی میکروهای fmd
        صفحه اینستاگرام : ecdco_ir

        دیدگاه


          #5
          پاسخ : ارسال یک کلمه از یک میکرو به میکروی دیگه با usart ؟

          راستی دوستان گرامی برای خوانا تر شدن کد های ارسالی بعد از انتخاب کل متن کد از منوی بالا علامت هشتک رو بزنید تا خوب نمایش داده بشه.
          ممنون
          [آموزشی] کنترل رله با پیامک توسط sim800l
          [آموزشی] راه اندازی سنسورهای DHT11 و DHT22 با کدویژن
          [آموزشی] مدار عملی اتصال میکروفن خازنی به میکروکنترلر
          [آموزشی] آموزش نحوه راه اندازی میکروهای fmd
          صفحه اینستاگرام : ecdco_ir

          دیدگاه


            #6
            پاسخ : ارسال یک کلمه از یک میکرو به میکروی دیگه با usart ؟

            در virtual terminal نرم افزار پروتئوس فقط مینویسه CCCCCCCCCCCCCCCCCCCCCCC و کلمه Hello word رو نمینویسه و به خود گیرنده هم ارسال نشد ! مشکل کجاست ؟
            جدیدترین ویرایش توسط Nahid63; ۱۲:۳۰ ۱۳۹۶/۰۷/۳۰.

            دیدگاه


              #7
              پاسخ : ارسال یک کلمه از یک میکرو به میکروی دیگه با usart ؟

              نوشته اصلی توسط Nahid63 نمایش پست ها
              در virtual terminal نرم افزار پروتئوس فقط مینویسه CCCCCCCCCCCCCCCCCCCCCCC و کلمه Hello word رو نمینویسه و به خود گیرنده هم ارسال نشد ! مشکل کجاست ؟
              سلام
              من همین برنامه رو قرار دادم و درست HELLO WORD رو نمایش میده.(فقط به جای s بزرگ s کوچیک تو printf قرار دادم)
              البته چون تو while نوشتید خیلی سریع مینویسه و نمیتونید بخونید.یا قبل از حلقه while بنویسیدو یا از delay استفاده کنید.
              [آموزشی] کنترل رله با پیامک توسط sim800l
              [آموزشی] راه اندازی سنسورهای DHT11 و DHT22 با کدویژن
              [آموزشی] مدار عملی اتصال میکروفن خازنی به میکروکنترلر
              [آموزشی] آموزش نحوه راه اندازی میکروهای fmd
              صفحه اینستاگرام : ecdco_ir

              دیدگاه


                #8
                پاسخ : ارسال یک کلمه از یک میکرو به میکروی دیگه با usart ؟

                اینم برنامه نشد !!
                #include <mega16.h>
                #include <stdio.h>
                #include <delay.h>

                void main(void)
                {

                char Data[69]="hello word" ;

                // USART initialization
                // Communication Parameters: 8 Data, 1 Stop, No Parity
                // USART Receiver: Off
                // USART Transmitter: On
                // USART Mode: Asynchronous
                // USART Baud Rate: 9600
                UCSRA=(0<<RXC) | (0<<TXC) | (0<<UDRE) | (0<<FE) | (0<<DOR) | (0<<UPE) | (0<<U2X) | (0<<MPCM);
                UCSRB=(0<<RXCIE) | (0<<TXCIE) | (0<<UDRIE) | (0<<RXEN) | (1<<TXEN) | (0<<UCSZ2) | (0<<RXB8) | (0<<TXB8);
                UCSRC=(1<<URSEL) | (0<<UMSEL) | (0<<UPM1) | (0<<UPM0) | (0<<USBS) | (1<<UCSZ1) | (1<<UCSZ0) | (0<<UCPOL);
                UBRRH=0x00;
                UBRRL=0x33;


                while (1){

                printf("%s",Data);
                delay_ms(300);

                }

                }

                دیدگاه


                  #9
                  پاسخ : ارسال یک کلمه از یک میکرو به میکروی دیگه با usart ؟

                  نوشته اصلی توسط Nahid63 نمایش پست ها
                  اینم برنامه نشد !!
                  #include <mega16.h>
                  #include <stdio.h>
                  #include <delay.h>

                  void main(void)
                  {

                  char Data[69]="hello word" ;

                  // USART initialization
                  // Communication Parameters: 8 Data, 1 Stop, No Parity
                  // USART Receiver: Off
                  // USART Transmitter: On
                  // USART Mode: Asynchronous
                  // USART Baud Rate: 9600
                  UCSRA=(0<<RXC) | (0<<TXC) | (0<<UDRE) | (0<<FE) | (0<<DOR) | (0<<UPE) | (0<<U2X) | (0<<MPCM);
                  UCSRB=(0<<RXCIE) | (0<<TXCIE) | (0<<UDRIE) | (0<<RXEN) | (1<<TXEN) | (0<<UCSZ2) | (0<<RXB8) | (0<<TXB8);
                  UCSRC=(1<<URSEL) | (0<<UMSEL) | (0<<UPM1) | (0<<UPM0) | (0<<USBS) | (1<<UCSZ1) | (1<<UCSZ0) | (0<<UCPOL);
                  UBRRH=0x00;
                  UBRRL=0x33;


                  while (1){

                  printf("%s",Data);
                  delay_ms(300);

                  }

                  }
                  فایل شبیه سازی و کدویژن


                  دلیل: ادغام دو پست برای جلوگیری از اسپم

                  لطفاً همونطور که قبلاً توضیح دادم کد ها رو در قالب کد بفرستید.
                  کد:
                  [URL="https://www.eca.ir/forums/usertag.php?do=list&action=hash&hash=include"]#include[/URL]  <mega16.h>
                   [URL="https://www.eca.ir/forums/usertag.php?do=list&action=hash&hash=include"]#include[/URL]  <stdio.h>
                   [URL="https://www.eca.ir/forums/usertag.php?do=list&action=hash&hash=include"]#include[/URL]  <delay.h>
                   
                  void main(void)
                  {
                   
                  char Data[69]="hello word" ;
                   
                  // USART initialization
                  // Communication Parameters: 8 Data, 1 Stop, No Parity
                  // USART Receiver: Off
                  // USART Transmitter: On
                  // USART Mode: Asynchronous
                  // USART Baud Rate: 9600
                  UCSRA=(0<<RXC) | (0<<TXC) | (0<<UDRE) | (0<<FE) |  (0<<DOR) | (0<<UPE) | (0<<U2X) | (0<<MPCM);
                  UCSRB=(0<<RXCIE) | (0<<TXCIE) | (0<<UDRIE) |  (0<<RXEN) | (1<<TXEN) | (0<<UCSZ2) | (0<<RXB8) |  (0<<TXB8);
                  UCSRC=(1<<URSEL) | (0<<UMSEL) | (0<<UPM1) |  (0<<UPM0) | (0<<USBS) | (1<<UCSZ1) | (1<<UCSZ0) |  (0<<UCPOL);
                  UBRRH=0x00;
                  UBRRL=0x33;
                   
                   
                  while (1){
                   
                  printf("%s",Data);
                  delay_ms(300);
                   
                  }
                   
                  }
                  [آموزشی] کنترل رله با پیامک توسط sim800l
                  [آموزشی] راه اندازی سنسورهای DHT11 و DHT22 با کدویژن
                  [آموزشی] مدار عملی اتصال میکروفن خازنی به میکروکنترلر
                  [آموزشی] آموزش نحوه راه اندازی میکروهای fmd
                  صفحه اینستاگرام : ecdco_ir

                  دیدگاه


                    #10
                    پاسخ : ارسال یک کلمه از یک میکرو به میکروی دیگه با usart ؟

                    ممنون آقای مهندس باباتبار مشکل مال خودم پروتئوس بود که حلش کردم ،حالا با virtual جواب گرفتم حاالا چرا به گیرنده ارسال نمیشه و در گیرنده نمایش داده نمیشه ؟
                    این برنامه گیرنده :
                    کد:
                    [URL="https://www.eca.ir/forums/usertag.php?do=list&action=hash&hash=include"]#include[/URL]  <mega16.h>
                    
                    // Alphanumeric LCD functions
                    [URL="https://www.eca.ir/forums/usertag.php?do=list&action=hash&hash=include"]#include[/URL]  <alcd.h>
                    
                    [URL="https://www.eca.ir/forums/usertag.php?do=list&action=hash&hash=include"]#include[/URL]  <stdlib.h>
                    [URL="https://www.eca.ir/forums/usertag.php?do=list&action=hash&hash=include"]#include[/URL]  <stdio.h>
                    
                    
                    
                    void main(void)
                    {
                    char Data[20];
                    
                    
                    
                    
                    // USART initialization
                    // Communication Parameters: 8 Data, 1 Stop, No Parity
                    // USART Receiver: On
                    // USART Transmitter: Off
                    // USART Mode: Asynchronous
                    // USART Baud Rate: 9600
                    UCSRA=(0<<RXC) | (0<<TXC) | (0<<UDRE) | (0<<FE) | (0<<DOR) | (0<<UPE) | (0<<U2X) | (0<<MPCM);
                    UCSRB=(0<<RXCIE) | (0<<TXCIE) | (0<<UDRIE) | (1<<RXEN) | (0<<TXEN) | (0<<UCSZ2) | (0<<RXB8) | (0<<TXB8);
                    UCSRC=(1<<URSEL) | (0<<UMSEL) | (0<<UPM1) | (0<<UPM0) | (0<<USBS) | (1<<UCSZ1) | (1<<UCSZ0) | (0<<UCPOL);
                    UBRRH=0x00;
                    UBRRL=0x33;
                    
                    
                    
                    // Alphanumeric LCD initialization
                    // Connections are specified in the
                    // Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:
                    // RS - PORTA Bit 0
                    // RD - PORTA Bit 1
                    // EN - PORTA Bit 2
                    // D4 - PORTA Bit 4
                    // D5 - PORTA Bit 5
                    // D6 - PORTA Bit 6
                    // D7 - PORTA Bit 7
                    // Characters/line: 16
                    lcd_init(16);
                    
                    while (1)
                          {
                    lcd_gotoxy(0,0);
                    lcd_puts(Data);
                          }
                    }

                    دیدگاه


                      #11
                      پاسخ : ارسال یک کلمه از یک میکرو به میکروی دیگه با usart ؟

                      نوشته اصلی توسط Nahid63 نمایش پست ها
                      ممنون آقای مهندس باباتبار مشکل مال خودم پروتئوس بود که حلش کردم ،حالا با virtual جواب گرفتم حاالا چرا به گیرنده ارسال نمیشه و در گیرنده نمایش داده نمیشه ؟

                      [/CODE]
                      دقت کنید شما فقط بافر دریافت رو معرفی کردید،همین.پس نباید چیزی هم نمایش بده.
                      شما باید کاراکتر های دریافتی رو بریزید تو این بافر که به دو روش اصلی امکان پذیره.اولیش با استفاده از وقفه دریافت یوزارت و دومی هم با توابعی مثل scanf
                      من کد زیر رو برای فرستنده و گیرنده نوشتم،همینطور فایل های مربوطه به همراه شبیه سازی رو قرار دادم.
                      درضمن این نکته رو هم بگم که scanf با رسیدن به اولین space از تابع خارج میشه.
                      کد:
                      #include <mega16.h>
                      #include <stdio.h>
                      #include <delay.h>
                      
                      void main(void)
                      {
                      
                      char Data[]="HELLOWORD" ;
                      
                      // USART initialization
                      // Communication Parameters: 8 Data, 1 Stop, No Parity
                      // USART Receiver: Off
                      // USART Transmitter: On
                      // USART Mode: Asynchronous
                      // USART Baud Rate: 9600
                      UCSRA=(0<<RXC) | (0<<TXC) | (0<<UDRE) | (0<<FE) | (0<<DOR) | (0<<UPE) | (0<<U2X) | (0<<MPCM);
                      UCSRB=(0<<RXCIE) | (0<<TXCIE) | (0<<UDRIE) | (0<<RXEN) | (1<<TXEN) | (0<<UCSZ2) | (0<<RXB8) | (0<<TXB8);
                      UCSRC=(1<<URSEL) | (0<<UMSEL) | (0<<UPM1) | (0<<UPM0) | (0<<USBS) | (1<<UCSZ1) | (1<<UCSZ0) | (0<<UCPOL);
                      UBRRH=0x00;
                      UBRRL=0x33;
                      
                      delay_ms(1000);
                      printf("%s ",Data);
                      
                      while (1)
                      {
                      
                      
                      }
                      }
                      کد:
                      #include  <mega16.h>
                      
                      // Alphanumeric LCD functions
                      #include  <alcd.h>
                      #include  <stdio.h>
                      #include <delay.h>
                      
                      char Data[20];
                      
                      void main(void)
                      {
                      PORTD.0=1; //pull the RX up
                      
                      
                      
                      
                      // USART initialization
                      // Communication Parameters: 8 Data, 1 Stop, No Parity
                      // USART Receiver: On
                      // USART Transmitter: Off
                      // USART Mode: Asynchronous
                      // USART Baud Rate: 9600
                      UCSRA=(0<<RXC) | (0<<TXC) | (0<<UDRE) | (0<<FE) | (0<<DOR) | (0<<UPE) | (0<<U2X) | (0<<MPCM);
                      UCSRB=(0<<RXCIE) | (0<<TXCIE) | (0<<UDRIE) | (1<<RXEN) | (0<<TXEN) | (0<<UCSZ2) | (0<<RXB8) | (0<<TXB8);
                      UCSRC=(1<<URSEL) | (0<<UMSEL) | (0<<UPM1) | (0<<UPM0) | (0<<USBS) | (1<<UCSZ1) | (1<<UCSZ0) | (0<<UCPOL);
                      UBRRH=0x00;
                      UBRRL=0x33;
                      
                      
                      
                      // Alphanumeric LCD initialization
                      // Connections are specified in the
                      // Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:
                      // RS - PORTA Bit 0
                      // RD - PORTA Bit 1
                      // EN - PORTA Bit 2
                      // D4 - PORTA Bit 4
                      // D5 - PORTA Bit 5
                      // D6 - PORTA Bit 6
                      // D7 - PORTA Bit 7
                      // Characters/line: 16
                      lcd_init(16);
                      scanf("%s ",&Data);
                      lcd_clear();
                      lcd_gotoxy(0,0);
                      lcd_puts(Data);
                      while (1)
                            {
                            
                            }
                      }
                      اینم فایل های برنامه
                      [آموزشی] کنترل رله با پیامک توسط sim800l
                      [آموزشی] راه اندازی سنسورهای DHT11 و DHT22 با کدویژن
                      [آموزشی] مدار عملی اتصال میکروفن خازنی به میکروکنترلر
                      [آموزشی] آموزش نحوه راه اندازی میکروهای fmd
                      صفحه اینستاگرام : ecdco_ir

                      دیدگاه


                        #12
                        پاسخ : ارسال یک کلمه از یک میکرو به میکروی دیگه با usart ؟

                        آقای مهندس حلقه while رو باید حذف کنید و این من تست کردم فقط کلمه Hello رو نمایش میده :
                        کد:
                        #include <mega16.h>
                        
                        // Alphanumeric LCD functions
                        #include <alcd.h>
                        
                        #include <stdlib.h>
                        #include <stdio.h>
                        #include <delay.h>
                        
                        
                        void main(void)
                        {
                        char Data[20];
                        PORTD.0=1;  //pull up Rx
                        
                        
                        // USART initialization
                        // Communication Parameters: 8 Data, 1 Stop, No Parity
                        // USART Receiver: On
                        // USART Transmitter: Off
                        // USART Mode: Asynchronous
                        // USART Baud Rate: 9600
                        UCSRA=(0<<RXC) | (0<<TXC) | (0<<UDRE) | (0<<FE) | (0<<DOR) | (0<<UPE) | (0<<U2X) | (0<<MPCM);
                        UCSRB=(0<<RXCIE) | (0<<TXCIE) | (0<<UDRIE) | (1<<RXEN) | (0<<TXEN) | (0<<UCSZ2) | (0<<RXB8) | (0<<TXB8);
                        UCSRC=(1<<URSEL) | (0<<UMSEL) | (0<<UPM1) | (0<<UPM0) | (0<<USBS) | (1<<UCSZ1) | (1<<UCSZ0) | (0<<UCPOL);
                        UBRRH=0x00;
                        UBRRL=0x33;
                        
                        
                        
                        // Alphanumeric LCD initialization
                        // Connections are specified in the
                        // Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:
                        // RS - PORTA Bit 0
                        // RD - PORTA Bit 1
                        // EN - PORTA Bit 2
                        // D4 - PORTA Bit 4
                        // D5 - PORTA Bit 5
                        // D6 - PORTA Bit 6
                        // D7 - PORTA Bit 7
                        // Characters/line: 16
                        lcd_init(16);
                        scanf("%s ",&Data);
                        lcd_clear();
                        lcd_gotoxy(0,0);
                        lcd_puts(Data);
                        
                        while (1);
                             
                        }

                        دیدگاه


                          #13
                          پاسخ : ارسال یک کلمه از یک میکرو به میکروی دیگه با usart ؟

                          نوشته اصلی توسط Nahid63 نمایش پست ها
                          آقای مهندس حلقه while رو باید حذف کنید و این من تست کردم فقط کلمه Hello رو نمایش میده :
                          کد:
                          #include <mega16.h>
                          
                          // Alphanumeric LCD functions
                          #include <alcd.h>
                          
                          #include <stdlib.h>
                          #include <stdio.h>
                          #include <delay.h>
                          
                          
                          void main(void)
                          {
                          char Data[20];
                          PORTD.0=1;  //pull up Rx
                          
                          
                          // USART initialization
                          // Communication Parameters: 8 Data, 1 Stop, No Parity
                          // USART Receiver: On
                          // USART Transmitter: Off
                          // USART Mode: Asynchronous
                          // USART Baud Rate: 9600
                          UCSRA=(0<<RXC) | (0<<TXC) | (0<<UDRE) | (0<<FE) | (0<<DOR) | (0<<UPE) | (0<<U2X) | (0<<MPCM);
                          UCSRB=(0<<RXCIE) | (0<<TXCIE) | (0<<UDRIE) | (1<<RXEN) | (0<<TXEN) | (0<<UCSZ2) | (0<<RXB8) | (0<<TXB8);
                          UCSRC=(1<<URSEL) | (0<<UMSEL) | (0<<UPM1) | (0<<UPM0) | (0<<USBS) | (1<<UCSZ1) | (1<<UCSZ0) | (0<<UCPOL);
                          UBRRH=0x00;
                          UBRRL=0x33;
                          
                          
                          
                          // Alphanumeric LCD initialization
                          // Connections are specified in the
                          // Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:
                          // RS - PORTA Bit 0
                          // RD - PORTA Bit 1
                          // EN - PORTA Bit 2
                          // D4 - PORTA Bit 4
                          // D5 - PORTA Bit 5
                          // D6 - PORTA Bit 6
                          // D7 - PORTA Bit 7
                          // Characters/line: 16
                          lcd_init(16);
                          scanf("%s ",&Data);
                          lcd_clear();
                          lcd_gotoxy(0,0);
                          lcd_puts(Data);
                          
                          while (1);
                               
                          }
                          من نخواستم تو حلقه قرار بدم،چون فقط تسته و یکبار نمایش کافیه.
                          گفتم که تو مد ارسال رشته scanf با رسیدن به اولین space از تابع خارج میشه.که البته به روش هایی میشه فاصله رو قرار داد که الان یادم نیست.چون بعد hello فاصله قرار داره از تابع خارج میشه.
                          [آموزشی] کنترل رله با پیامک توسط sim800l
                          [آموزشی] راه اندازی سنسورهای DHT11 و DHT22 با کدویژن
                          [آموزشی] مدار عملی اتصال میکروفن خازنی به میکروکنترلر
                          [آموزشی] آموزش نحوه راه اندازی میکروهای fmd
                          صفحه اینستاگرام : ecdco_ir

                          دیدگاه


                            #14
                            پاسخ : ارسال یک کلمه از یک میکرو به میکروی دیگه با usart ؟

                            چه روش هایی برای اینکه بتونیم با فاصله دو کلمه رو بفرستیم ؟!!
                            جدیدترین ویرایش توسط Nahid63; ۱۰:۲۴ ۱۳۹۶/۰۸/۰۶.

                            دیدگاه

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