اطلاعیه

Collapse
No announcement yet.

راهنمایی در مورد دریافت رشته با استفاده از وقفه سریال در atmel studio

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

    راهنمایی در مورد دریافت رشته با استفاده از وقفه سریال در atmel studio

    با سلام خدمت دوستان
    یه نمونه برنامه میخاستم در مورد دریافت با وقفه سریال در atmel studio

    #2
    پاسخ : راهنمایی در مورد دریافت رشته با استفاده از وقفه سریال در atmel studio

    نوشته اصلی توسط kargahelec نمایش پست ها
    با سلام خدمت دوستان
    یه نمونه برنامه میخاستم در مورد دریافت با وقفه سریال در atmel studio
    سلام
    این لینک توضیحات :

    اینم خود کتابخونه به همراه مثال:

    دیدگاه


      #3
      پاسخ : راهنمایی در مورد دریافت رشته با استفاده از وقفه سریال در atmel studio

      ممنون از پاسختون
      میشه توضیح بدین کجای برنامه از وقفه دریافت سریال استفاده شده؟

      دیدگاه


        #4
        پاسخ : راهنمایی در مورد دریافت رشته با استفاده از وقفه سریال در atmel studio

        نوشته اصلی توسط kargahelec نمایش پست ها
        ممنون از پاسختون
        میشه توضیح بدین کجای برنامه از وقفه دریافت سریال استفاده شده؟
        تو فایل uart.c یه تابع هست به اسم ISR (UART0_RECEIVE_INTERRUPT) که تو این تابع عمل دریافت انجام میشه و بایتهای دریافتی درون یه بافر ذخیره میشن

        دیدگاه


          #5
          پاسخ : راهنمایی در مورد دریافت رشته با استفاده از وقفه سریال در atmel studio

          میشه لطفا با یه مثال توضیح بدین چجوری مثلا میشه یه رشته رو توی وقفه دریافت و ارسال کرد؟

          دیدگاه


            #6
            پاسخ : راهنمایی در مورد دریافت رشته با استفاده از وقفه سریال در atmel studio

            نوشته اصلی توسط kargahelec نمایش پست ها
            میشه لطفا با یه مثال توضیح بدین چجوری مثلا میشه یه رشته رو توی وقفه دریافت و ارسال کرد؟
            مثالی که همراه پروژه هست دقیقا همین کار رو انجام میده
            کاراکتر دریافتی رو برمیگردونه

            دیدگاه


              #7
              پاسخ : راهنمایی در مورد دریافت رشته با استفاده از وقفه سریال در atmel studio

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

              دیدگاه


                #8
                پاسخ : راهنمایی در مورد دریافت رشته با استفاده از وقفه سریال در atmel studio

                نوشته اصلی توسط kargahelec نمایش پست ها
                بله.اما از یه تابع که در یه حلقه بی نهایت قرار گرفته استفاده شده
                واز وقفه در اون استفاده نشده....
                دوست عزیز همینطور که قبلا اشاره کردم تابع وقفه در فایل uart.c قرار داره و داده های دریافتی تا 32 بایت (قابل تغییر در فایل uart.h ) در یه بافر ذخیره میشه و شما هر وقت نیاز داشته باشین به دستور getc میتونید بایتها رو بخونید و این عمل باید تا زمانی ادامه پیدا کنه که مقدار دریافتی برابر 0 بشه یه چیزی تو این مایه ها:

                کد:
                unsigned char b,f1;
                while (   b = uart_getc() != 0  ) {
                        
                        temp[f1] =b;
                        f1++;
                        _delay_ms(2);
                    }
                  temp[f1]=0;

                دیدگاه


                  #9
                  پاسخ : راهنمایی در مورد دریافت رشته با استفاده از وقفه سریال در atmel studio

                  ممنون از کتابخونه هایی که گذاشتین.لطفا نحوه غیر فعال کردن وقفه رو توضیح بدین...

                  دیدگاه


                    #10
                    پاسخ : راهنمایی در مورد دریافت رشته با استفاده از وقفه سریال در atmel studio

                    نوشته اصلی توسط kargahelec نمایش پست ها
                    ممنون از کتابخونه هایی که گذاشتین.لطفا نحوه غیر فعال کردن وقفه رو توضیح بدین...
                    خواهش میکنم
                    واسه غیر فعال کردن وقفه سراسری دستور :
                    کد:
                    cli();
                    و واسه غیر فعال کردن وقفه uart دستور زیر :
                    کد:
                    UCSRB&=~(1<<7);
                    که در واقع بیت هفتم از رجیستر UCSRB که RXCIE هست مربوط به وقفه دریافت رو 0 میکنه

                    دیدگاه

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