ورود به حساب ثبت نام جدید فراموشی کلمه عبور
برای ورود به حساب کاربری خود، نام کاربری و کلمه عبورتان را در زیر وارد کرده و روی «ورود به سایت» کلیک کنید.





اگر فرم ورود برای شما نمایش داده نمیشود، اینجا را کلیک کنید.









اگر فرم ثبت نام برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.









اگر فرم بازیابی کلمه عبور برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.






جهت تبلیغ در وب سایت ECA کلیک کنید.

کاربران برچسب زده شده

نمایش نتایج: از 1 به 5 از 5
  1. #1
    2008/03/11
    8par<->Tehran
    165
    6

    وقفه در تبادل سریال usart

    سلام خدمت دوستان
    راستش سوالی در رابطه با وقفه در تبادل سریال usart داشتم
    همونطور که میدونید وقتی تو کدویزارد میکرو رو در حالت گیرنده و با وقفه تنظیم میکنیم ، کد ویزارد خودش به طور خودکار متغیر rx_buffer رو برای ذخیره داده های ورودی بصورت آرایه ی
    char rx_buffer[RX_BUFFER_SIZE];
    تعریف میکنه که مثلا اگه بافر 8 بیتی باشه یه آرایه 8 عضوی و اگه 16 تایی باشه یه آرایه 16 تایی تعریف میشه
    حالا سوال من اینجاست که اگه بافر 8 بیتی باشه ، یه متغیر نوع char برای ذخیره کافیه ، پس چرا یه آرایه 8 تایی تعریف میشه؟
    و دیگه اینکه ما بخوایم این 8 بییت ورودی رو بخونیم و تو یه متغیر دیگه ذخیره کنیم از کدوم عضو این آرایه باید دیتا رو بخونیم یا اگه طور دیگه ای هستش لطفا توضیح بدین
    ممنون
    زندگي آن چه که زيسته ايم نيست ، بلکه آن چيزي است که از گذشته به خاطر داريم ...گابريل گارسيا مارکز
  2. #2
    2007/12/31
    783
    8

    پاسخ : وقفه در تبادل سریال usart

    سلام دوست عزیز
    با تعریف یه char نمیشه اطلاعاتی که تکه تکه میاد رو یه جا ذخیره کرد. (نه که نمیشه! سخته)
    اما ما یه آرایه تعریف میکنم تا هر وقت دیتا اومد توی آخرین اندیس ذخیره بشه.
    مثلا× فرض من کلمه Hello Word بخواد بیاد
    چون توی 2 قسمت توسط سریال ارسال میشه راحت ترین راه ریختن او توی یه آرایه هست تا یه char.

    حالا اگه بخوای کاراکترا رو بخونی باید آرایه رو پردازش کنی.
    تشکر لازم نیست!
  3. #3
    2009/10/21
    تهران
    2,508
    214

    پاسخ : وقفه در تبادل سریال usart

    اون بافر آرایه ای تشکیل یه صف حلقوی رو میده که اگه برنامه شما وقت نکرد داده های رسیده رو با تابع مثلا getchar بخونه ، داده ها از بین نرن و توی این آرایه ذخیره بشن تا اینکه برنامه شما اونها رو سر فرصت بخونه
  4. #4
    2007/11/22
    ایران - تهران
    352
    2
    mrh

    پاسخ : وقفه در تبادل سریال usart

    نقل قول نوشته اصلی توسط mojalan
    اون بافر آرایه ای تشکیل یه صف حلقوی رو میده که اگه برنامه شما وقت نکرد داده های رسیده رو با تابع مثلا getchar بخونه ، داده ها از بین نرن و توی این آرایه ذخیره بشن تا اینکه برنامه شما اونها رو سر فرصت بخونه
    با اجازه جناب mojalan
    در تائید گفته های ایشون، شما فقط میبایست داده ها را با تابع get_char دریافت و با put_char ارسال کنید. شما در قید و بند کد مورد استفاده نباشید و فقط از این دو تابع استفاده کنید.
    بگذارعشق خاصیت تو باشد نه رابطه خاص تو باکسی
    موفقيت پيش رفتن است نه به نقطه ي پايان رسيدن
    نلسون ماندلا
  5. #5
    2008/03/11
    8par<->Tehran
    165
    6

    پاسخ : وقفه در تبادل سریال usart

    سلام و ممنون از همه دوستان
    فقط یه سوال دیگه دارم ومیخوام اگه میشه تو همین تاپیک ارسال کنم اونم اینه که در میشه ماژولهای hmt و hmr باود ریت رو مثل ماژولهای hmtr تغییر داد یا نه ؟
    بازم ممنون :nerd:
    زندگي آن چه که زيسته ايم نيست ، بلکه آن چيزي است که از گذشته به خاطر داريم ...گابريل گارسيا مارکز
نمایش نتایج: از 1 به 5 از 5

موضوعات مشابه

  1. کار با وقفه USART
    توسط ahmp در انجمن میکروکنترلرهای AVR
    پاسخ: 12
    آخرين نوشته: 2019/08/28, 19:57
  2. دریافت کاراکتر از وقفه usart و ارسال ش با وقفه spi
    توسط davoud.arabee در انجمن برنامه نويسي و اينترفيس
    پاسخ: 5
    آخرين نوشته: 2016/04/01, 22:42
  3. تداخل وقفه سریال با وقفه تایمر در بیسکام
    توسط حامد رحیمی در انجمن میکروکنترلرهای AVR
    پاسخ: 11
    آخرين نوشته: 2015/03/25, 20:41
  4. پاسخ: 1
    آخرين نوشته: 2009/08/30, 09:30
  5. استفاده از MAX232 درAVR برای تبادل سریال
    توسط hafez2007 در انجمن میکروکنترلرهای AVR
    پاسخ: 15
    آخرين نوشته: 2008/03/31, 19:25

کلمات کلیدی این موضوع

علاقه مندي ها (Bookmarks)

علاقه مندي ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •