اطلاعیه

Collapse
No announcement yet.

دریافت اینتراپتی (با وقفه پروتکل uart)

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

    دریافت اینتراپتی (با وقفه پروتکل uart)

    سلام دوستان
    می خوام با ارتباط uart بفرسم و بگیرم برای دریافت با اینتراپتی
    1.مشکل اینجاست که برای چی باید از return استفاده کنم ؟
    2.اگر برنامه که پرش کنه به برچسب یعنی on urxc label0 فقط یک بار برنامه بخونه بعد دیگه اصلا به این خط نیاد بازم به وقتش پرش می کنه ؟
    3.اگر خواستم از 4 تا اینتراپتی استفاه کنم باید چی کار کنم ؟

    #2
    پاسخ : دریافت اینتراپتی (با وقفه پروتکل uart)

    فدات شم میخوای از مد uart استفاده کنی یا uzart.

    اگه از کامپایلر CodeVision استفاده میکنی برنامه ای که تو زیر روال وقفه برای دریافت داده نوشته شده اون دستور

    return فقط یه کاراکتر رو بر میگردونه اما با هر بار برگردوندن یه واحد به یه متغییری در همون زیر روال وقفه اضافه

    میکنه که اینا باعث میشه وقتی میخوای یه رشته رو دریافت کنی کاراکترها یکی یکی کنار هم دیگه قرار بگیرن.

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

    من از سوالتون اینو متوجه شدم شرمنده اگه چیزی دیگه جواب دادم.
    [glow=red,2,300]گرد هم آمدن شروع است.با هم ماندن پيشرفت است.با هم کار کردن موفقيت است.[/glow]
    [img width=98 height=100]http://s3.picofile.com/file/7407857311/icon3.png[/img]

    دیدگاه


      #3
      پاسخ : دریافت اینتراپتی (با وقفه پروتکل uart)

      1. کدوم return کدتو بزار
      2.اگه منطورت اینتراپته بله همیشه جمپ میکنه مگر وقفه سراسری رو غیر فعال کنی
      3.Null
      هرچه سعی کنیم لایه های نرم افزاری زیاد کرده و از سخت افزار دور کنیم مشکلات(باگ ها) کمتر خواهد شد(امنیت بیشتری خواهید داشت)
      بهترین جواب دهنده برای سوال شما، خود شما هستید البته بعد تلاش،پشتکار و مطالعه بیشتر
      میدونی مشکل ما کجاست؟سرمایه و مغز ها رو نمیتونیم یکجا جمع کنیم...

      تعدادی ماژول GPS GP5MX1513F1 با بالاتریت حساسیت -170db به قیمت خرید بفروش میرسد

      دیدگاه


        #4
        پاسخ : دریافت اینتراپتی (با وقفه پروتکل uart)

        با تشکر از پاسختون
        این برنامهم هست اگر از return استفاده کنم دستور print چند بار ارسال میشه ؟
        $regfile = "m32def.dat"
        $crystal = 8000000
        Config Lcdpin = Pin , Db4 = Porta.3 , Db5 = Porta.2 , Db6 = Porta.1 , Db7 = Porta.0 , E = Porta.4 , Rs = Porta.5
        Config Lcd = 16 * 2
        Baud = 9600
        Config Portb = Output
        Dim R As Byte
        Dim S As Byte
        Set Portb.1
        S = &H01
        Print S
        Enable Interrupts
        Enable Urxc
        On Urxc Ch
        Do
        Set Porta.0
        Reset Porta.0
        Loop
        Ch:
        R = Udr
        Lcd R ; "ERFAN"
        Set Portb.0
        Return

        دیدگاه


          #5
          پاسخ : دریافت اینتراپتی (با وقفه پروتکل uart)

          یکی از دوستان زحمت میکشه که چه جوری باید باود رو تنظیم کنم برای ای سی ch376 صحفه 7
          متن دیتاشیت
          The command is used to set up the serial port communication baud-rate of CH376.CH376 works on
          serial communication mode, the default communication baud-rate of CH375 is composed of BZ/D4,SCK/D5
          and SDI/D6 (consult the 6.4 of the DataSheet) after reset. And these pins are suspend in default means the
          baud-rate is 9600bps. Through the order adjusts serial communication baud-rate dynamically if the MCU
          supports upper communication speed. The command needs to input baud-rate detach frequency coefficient
          and detach frequency const.
          Many detach frequency coefficient and detach frequency constant corresponding serial communication
          baud-rate is given below.

          دیدگاه

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