اطلاعیه

Collapse
No announcement yet.

استفاده ازuart در بیسکام

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

    استفاده ازuart در بیسکام

    سلام :nerd:
    1سوال داشتم از بچه های بیسکامی.
    این uart سخت افزاری و نرم افزاری تفاوتشون چیه؟
    من میخوام یه برنامه بنویسم که داده رو از 1میکرو m128 بصورت 8بیتی و با 1بیت توقف و بدون پریتی داخل m32توسط وقفه uart دریافت کنم.
    البته تو قسمت فرستنده از کدویژن استفاده کردم.
    اما دریافتم باید با بیسکام باشه.
    چجوری تو بیسکام با وقفه uart میشه داده از rxd دریافت کرد یا اصلا فرستاد؟
    انقدر احمق نیستم که فکر کنم کارم تموم شده

    #2
    پاسخ : استفاده ازuart در بیسکام

    ببینم یعنی هیچ کس با uart بسکام کار نکرده؟ :cry2: :cry: :cry2: :angry: :angry:
    انقدر احمق نیستم که فکر کنم کارم تموم شده

    دیدگاه


      #3
      پاسخ : استفاده ازuart در بیسکام

      سلام دوست عزیز :rolleyes:
      فرق بین ارتباط سریال نرم افزاری و سخت افزاری در اینه که:
      در حالت سخت افزاری شما دیتا رو داخل بافر سریال میزاری و دستور ارسال به کار می بری و بقیه کارها توسط سخت افزار انجام میشن مثل بیت شروع، توقف، پریتی و ...
      ولی در حالت نرم افزاری مجبوری تمام این کارها رو خودت انجام بدی(بیت به بیت ارسال کنی)
      اما در محیط بیسکام شما از هر دوی اینها به راحتی استفاده می کنی چون حالت نرم افزاری اش رو هم خودش شبیه سازی میکنه فقط بزرگترین مزیت استفاده از حالت سخت افزاری اینه که میتونی از وقفه ارسال و دریافت استفاده کنی که در حالت نرم افزاری این امر ممکن نیست
      برای دریافت در حالت سخت افزاری به همراه وقفه می تونی از دستورات زیر استفاده کنی:

      $baud=9600
      enable interrupts
      enable urxc
      on urxc serial_int
      dim a as byte
      serial_int:
      input a
      return

      موفق باشی
      زندگي را تو بساز ،
      نه بدان ساز که سازند و پذيري بي حرف ،
      زندگي يعني جنگ ، تو بجنگ ،
      زندگي يعني عشق ، تو بدان عشق بورز.

      دیدگاه


        #4
        پاسخ : استفاده ازuart در بیسکام

        print"a"
        print h
        این دستور برای ارسال به خروجی یوزارت هستش
        [move][img width=133 height=100]http://bargiri.persiangig.com/aks/0.306310001356499787_taknaz_ir.gif[/img][/move]

        دیدگاه


          #5
          پاسخ : استفاده ازuart در بیسکام

          پس کجاش میشه تعیین کرد دیتایی که میاد یا میفرستیم پریتی داره یا چند تا بیت توقف داریم؟
          اینتراپتش چجوری کار میکنه؟
          وقتی دیتا بیاد میره تو روتین اینتراپت؟
          انقدر احمق نیستم که فکر کنم کارم تموم شده

          دیدگاه


            #6
            پاسخ : استفاده ازuart در بیسکام

            $regfile = "m48def.dat"

            $crystal = 4000000

            $baud = 19200

            Config Com1 = Dummy , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0

            تو هلپ help بیسکام بگرد هست :agree:
            [move][img width=133 height=100]http://bargiri.persiangig.com/aks/0.306310001356499787_taknaz_ir.gif[/img][/move]

            دیدگاه


              #7
              پاسخ : استفاده ازuart در بیسکام

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

              دیدگاه


                #8
                پاسخ : استفاده ازuart در بیسکام

                دوستان پس این دستور استفادش چیه؟
                Config Serialin = Buffered , Size = 20 , Bytematch = All

                انقدر احمق نیستم که فکر کنم کارم تموم شده

                دیدگاه


                  #9
                  پاسخ : استفاده ازuart در بیسکام

                  نوشته اصلی توسط microware
                  سلام دوست عزیز :rolleyes:
                  فرق بین ارتباط سریال نرم افزاری و سخت افزاری در اینه که:
                  در حالت سخت افزاری شما دیتا رو داخل بافر سریال میزاری و دستور ارسال به کار می بری و بقیه کارها توسط سخت افزار انجام میشن مثل بیت شروع، توقف، پریتی و ...
                  ولی در حالت نرم افزاری مجبوری تمام این کارها رو خودت انجام بدی(بیت به بیت ارسال کنی)
                  اما در محیط بیسکام شما از هر دوی اینها به راحتی استفاده می کنی چون حالت نرم افزاری اش رو هم خودش شبیه سازی میکنه فقط بزرگترین مزیت استفاده از حالت سخت افزاری اینه که میتونی از وقفه ارسال و دریافت استفاده کنی که در حالت نرم افزاری این امر ممکن نیست
                  برای دریافت در حالت سخت افزاری به همراه وقفه می تونی از دستورات زیر استفاده کنی:

                  $baud=9600
                  enable interrupts
                  enable urxc
                  on urxc serial_int
                  dim a as byte
                  serial_int:
                  input a
                  return

                  موفق باشی
                  سلام دوست عزیز.... از راهنماییاتون متشکرم... ولی من وقتی برنامه رو مینویسم و میخوام کامپایل کنم از خط on urxc labelارور error 249 میگیره.... به نظرتون مشکل چیه؟ ممکنه از بیسکامم باشه؟؟؟ بازم ممنون
                  Try not to become a man of success but rather try to become a man of value.... Albert Einstein

                  دیدگاه


                    #10
                    پاسخ : استفاده ازuart در بیسکام

                    میخوام بدونم این error 249 برای چی هست که در بالا اشاره شده است

                    دیدگاه


                      #11
                      پاسخ : استفاده ازuart در بیسکام

                      با توجه به چند خط نوشته شده این ارور می تونه برای این باشه که همیشه باید زیربرنامه وقفه زیر END آخر برنامه باشه ولی تو این جا این طور نیست

                      دوست عزیز برای همه ی روش ها و دستور ها بهترین راه چک کردن و استفاده از نمونه های داخل نرم افزار بسکام هست
                      همانطور كه مايل نيستم بنده كسي باشم، حاضر نيستم آقاي كسي باشم. كساني كه مخالف آزادي ديگرانند، خود لياقت آزادي را ندارند.((آبراهام لينكن))

                      قدرت شگفت انگيز نيروهاي خلاق و استعدادهاي نهفته آدمي هنگامي آشكار مي شود كه نيازي حياتي، تواناييهاي او را به فعاليت وادارد و كشش آرزويي، سراپاي وجودش را به جنب و جوش درآورد.((آبراهام لينكن))

                      [img width=343 height=100]http://www.elecdesigner.com/uploads/PRO-DESIGNER-GROUP.jpg[/img]

                      دیدگاه


                        #12
                        پاسخ : استفاده ازuart در بیسکام

                        Config Serialin = Buffered , Size = 50

                        من به این نتیجه رسیدم که این دستور باعث این پیغام شده است

                        دیدگاه


                          #13
                          پاسخ : استفاده ازuart در بیسکام

                          اگر اشتباه نکنم این دستور تو مد اینتراپتی آخرین دیتا های ورودی رو که اندازه بافر تعداد اونها رو مشخص می کنه تو خودش نگه می داره و اگر باز شما اینتراپت رو فعال کنی ممکنه موجب ارور بشه
                          همانطور كه مايل نيستم بنده كسي باشم، حاضر نيستم آقاي كسي باشم. كساني كه مخالف آزادي ديگرانند، خود لياقت آزادي را ندارند.((آبراهام لينكن))

                          قدرت شگفت انگيز نيروهاي خلاق و استعدادهاي نهفته آدمي هنگامي آشكار مي شود كه نيازي حياتي، تواناييهاي او را به فعاليت وادارد و كشش آرزويي، سراپاي وجودش را به جنب و جوش درآورد.((آبراهام لينكن))

                          [img width=343 height=100]http://www.elecdesigner.com/uploads/PRO-DESIGNER-GROUP.jpg[/img]

                          دیدگاه

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