اطلاعیه

Collapse
No announcement yet.

ارتباط UART با میکرو برای ارسال 32 بیت داده در کد ویژن

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

    ارتباط UART با میکرو برای ارسال 32 بیت داده در کد ویژن

    سلام دوستان

    من یک ماژول دارم که از طریق UART ارتباط برقرار میکنه. برای اتصالش به میکرو از واحد USART استفاده کردم که مدش رو روی اسنکرون قرار دادم.
    حالا سوال اینه چه طوری و با چه تابعی میشه 32 بیت (مثلا 0xaa005522) رو باهاش فرستاد؟ آیا برای ارسال و دریافت بیش از 8 بیت تابع خاصی وجود داره؟
    در مورد دریافت بیش از 8 بیت چه طور ؟ آیا تابع خاصی وجود داره؟

    پیشاپیش تشکر

    #2
    پاسخ : ارتباط UART با میکرو برای ارسال 32 بیت داده در کد ویژن

    میکروی AVR رجیسترهاش 8 بیتی هستند. پس همه کارهاشو 8 بیتی انجام میده. در مورد ارسال با USART هم رجستر دریافت و ارسال 8 بیتی هستند. یعنی شما برای ارسال عدد 32 بیتی باید 4 تا 8 بیتی بفرستیدش. برای دریافت هم همین قصه برقراره.
    البته می تونید 9 بیتی هم ارسال داشته باشید. اما ارسال 9 بیتی برای وقتی هست که بخوان آدرس بفرستند. همون 8 بیتی برای ارسال دیتا بهتره.
    ---------
    .
    .
    ...........

    دیدگاه


      #3
      پاسخ : ارتباط UART با میکرو برای ارسال 32 بیت داده &#1583

      نوشته اصلی توسط tahmasb2007
      سلام دوستان

      من یک ماژول دارم که از طریق UART ارتباط برقرار میکنه. برای اتصالش به میکرو از واحد USART استفاده کردم که مدش رو روی اسنکرون قرار دادم.
      حالا سوال اینه چه طوری و با چه تابعی میشه 32 بیت (مثلا 0xaa005522) رو باهاش فرستاد؟ آیا برای ارسال و دریافت بیش از 8 بیت تابع خاصی وجود داره؟
      در مورد دریافت بیش از 8 بیت چه طور ؟ آیا تابع خاصی وجود داره؟

      پیشاپیش تشکر
      با سلام

      شما داده را به کاراکتر تبدیل کنید وبا printf ارسال کنید

      [code=c]
      Code = 0x22;
      Card_Number = "123456789";
      Charge_Mony = 25;
      printf("%d%d%d",Code,Card_Number,Charge_ Mony);[/code]

      دیدگاه

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