اطلاعیه

Collapse
No announcement yet.

پاسخ : من چی و تو این برنامه در نظر نگرفتم؟و دستور print چجوری هست:confused:

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

    پاسخ : من چی و تو این برنامه در نظر نگرفتم؟و دستور print چجوری هست:confused:

    دوستان.من میخام تغییرات q میکرو دوم رو بفرستم به میکرو اول و اونو ال سی دی کنم.ولی هر کار میکنم نمیشه،اول عدد 2 رو نشون میده و بعد صفر رو.
    میتونید بگید مشکل کجاست :cry2:
    برنامه میکرو اول:
    $regfile = "m16def.dat" : $crystal = 1000000
    Config Lcdpin = Pin , Db4 = Portb.1 , Db5 = Portb.2 , Db6 = Portb.3 , Db7 = Portb.4 , E = Portb.5 , Rs = Portb.6
    Config Lcd = 16 * 2
    $baud = 9600
    Config Portc = Input : Config Porta = Output
    Dim A As Byte , Q As Byte
    Do
    Locate 1 , 1
    Input A
    Lcd A
    waitms 100
    Loop

    End
    برنامه میکرو دوم:
    $regfile = "m16def.dat" : $crystal = 1000000
    $baud = 9600
    Config Portc = Input : Config Porta = Output
    Dim A As Byte : Dim Q As Byte
    Q = 2
    Do
    Print Q
    Waitms 100
    Incr Q
    Loop

    End
    چیو دقت نکردم؟ :cry2: ب
    به سمت نور خورشید حرکت کن،تو میتونی تابش خورشید رو حس کنی ،حتی اگه کور باشی.
    (پیش به سوی هدف)

    #2
    پاسخ : من چی و تو این برنامه در نظر نگرفتم؟قاطی کردم

    با سلام
    به نظر من شما اول از دستور incrq استفاده کن بعدش printq بده
    فکر کنم درست بشه.

    دیدگاه


      #3
      پاسخ : من چی و تو این برنامه در نظر نگرفتم؟قاطی کردم

      نشد که
      به سمت نور خورشید حرکت کن،تو میتونی تابش خورشید رو حس کنی ،حتی اگه کور باشی.
      (پیش به سوی هدف)

      دیدگاه


        #4
        پاسخ : من چی و تو این برنامه در نظر نگرفتم؟و دستور print چجوری هست.:confused

        دوستان من تو برنامه اطلاعات یه متغییری را با دستور print میفرستم به یه میکرو ی دیگه.
        حالا نفهمیدم چجوری باید از این اطالاعات در میکرو ی دیگه استفاده کنم ،یا این اطلاعات فرستاده شده رو تو متغییر های میکرو دومی بریزم !! :cry2:
        مثلا مثالهایی که تو علی کاهه استفاده شد که بیشتر از دستور print استفاده شد حالا چجوری باید این اطلاعات فرستاده شده رو فراخانی کرد تو میکرو دومی.؟
        بیشتر دستورات رو میدونم ولی نمیدونم چجوری باید در فراخانی میکرو گیرنده اطلاعات استفاده کنم.امیدوارم که منظورمو گرفتید .
        حالا شما دوستان میتونید با ذکر مثالهای ساده یا توضیحاتی منو بفهمونید تا کار دستم بیاد؟
        در ضمن اطلاعات من در ضمینه rs232 خوبه فقط مشکلم نحوه ی استفاده از دستورات.
        ممنون :applause:
        به سمت نور خورشید حرکت کن،تو میتونی تابش خورشید رو حس کنی ،حتی اگه کور باشی.
        (پیش به سوی هدف)

        دیدگاه


          #5
          پاسخ : من چی و تو این برنامه در نظر نگرفتم؟و دستور print چجوری هست.:confused

          سلام حسین جان.
          فایل پروتئوستم بذار.
          ?Why not

          دیدگاه


            #6
            پاسخ : من چی و تو این برنامه در نظر نگرفتم؟و دž

            این دستور رو هم به جای input قرار بده شاید درست شد .
            کد:
            a=inkey()

            دیدگاه


              #7
              پاسخ : من چی و تو این برنامه در نظر نگرفتم؟و دستور print چجوری هست

              دوست عزیز فرکانس رو از 1000000 به 8000000 بگذارید
              نتیجه رو اعلام کنین

              دیدگاه


                #8
                پاسخ : پاسخ : من چی و تو این برنامه در نظر نگرفتم؟و دستور print چجوری هست

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

                دیدگاه


                  #9
                  پاسخ : من چی و تو این برنامه در نظر نگرفتم؟و دستور print چجوری هست

                  با فرکانس 1مگاهرتز نمیشه با باود ریت 9600 تبادل دیتا کرد، برای همین باید فرکانس رو ببری رو 8مگاهرتز و استفاده از کریستال هم توصیه میشه.
                  دستور print تا جایی که من باهاش کار کردم و اطلاع دارم رشته میفرسته و دستور input هم رشته میگیره
                  تو میکرو فرستندت مثلا بنویس:
                  کد:
                  Print "hi"
                  و تو میکرو گیرنده هم بنویس:
                  کد:
                  dim str as string*2
                  input str
                  LCD str
                  فرکانس هر دو میکرو گیرنده و فرستنده باید 8مگاهرتز بشه.
                  توصیه هم شده که زمین های 2میکرو باهم یکی باشن.
                  ;()((void (*)(void))0x0000))

                  دیدگاه


                    #10
                    پاسخ : پاسخ : من چی و تو این برنامه در نظر نگرفتم؟و دستور print چجوری هست

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

                    دیدگاه


                      #11
                      پاسخ : من چی و تو این برنامه در نظر نگرفتم؟و دستور print چجوری هست

                      با این ارتباط میشه دیتا (شامل: رشته، عدد) رو بین 2تا میکرو و یا میکرو و کامپیوتر و یا میکرو و ماژول رد و بدل کرد.
                      هر وقت نیاز به تبادل دیتا داشته باشی میتونی از اینا استفاده کنی.
                      مثلا یه میکرو گذاشتی یه جایی که یه سنسور دما رو مقدارشو میگیره و میخوای این مقدار گرفته شده رو یه جای دیگه نشون بدی (یه فاصله ای دور تر)
                      از این طریق مقدار رو میگیری تو میکرو اول و به میکرو دوم میفرسته و اون هم نشون میده.
                      محیط انتقالت هم میتونه سیمی باشه هم بیسیم.
                      ;()((void (*)(void))0x0000))

                      دیدگاه


                        #12
                        پاسخ : پاسخ : من چی و تو این برنامه در نظر نگرفتم؟و دستور print چجوری هست

                        در نوشتن دستورات ارتباطی باید به نکات خاصی توجه کرد؟
                        مثلا من با دستور print اطلاعات رو میفرستم ولی با input که بیشتر چیزها رو هم رعایت کردم ،اطلاعات غلطی دریافت میکنم.
                        البته همه این تست ها روی پرتیوس هست،هنوز رو برد نبردم.
                        به سمت نور خورشید حرکت کن،تو میتونی تابش خورشید رو حس کنی ،حتی اگه کور باشی.
                        (پیش به سوی هدف)

                        دیدگاه


                          #13
                          پاسخ : من چی و تو این برنامه در نظر نگرفتم؟و دستور print چجوری هست

                          سلام
                          بهترین حالت استفاده از روش انتراپت هست مثل کد زیر که هر دیتایی که با baudrate 9600 ارسال کنید رو lcd نشون میده. مسئله بعدی هم انتخاب مقدار مناسب کریستال هست و یه مورد دیگه دستوراتی مثل print sin tan و ... برای کارکردن درست نیاز به ram دارند که کاربر باید توسط دستورات hwstack و swstack و framesize یه مقدار از رم میکرو رو برای این کارها کنار بزاره

                          کد:
                          $regfile = "m16def.dat"
                          $crystal = 8000000
                          
                          $hwstack = 40
                          $swstack = 80
                          $framesize = 80
                          
                          
                          
                          
                          Config Lcdpin = Pin , Db7 = Porta.7 , Db6 = Porta.6 , Db5 = Porta.5 , _
                          Db4 = Porta.4 , E = Porta.1 , Rs = Porta.0
                          Config Lcd = 16 * 2
                          Cursor Off
                          
                          
                          Dim Udr_1 As Byte
                          Dim Buf_1_temp As String * 60
                          Dim Buf_1_recive As String * 60
                          
                          $baud = 9600
                          On Urxc Rec_isr
                          Enable Urxc
                          
                          Enable Interrupts
                          
                          
                          
                          
                          Do
                          
                          Home
                          Lcd Buf_1_recive ; "   "
                          
                          Loop
                          
                          
                          
                          
                          
                          
                          
                          End
                          
                          
                          Rec_isr:
                          
                            Udr_1 = Udr
                          
                            Select Case Udr_1
                          
                             Case 13:
                          
                               Buf_1_recive = Buf_1_temp
                               Buf_1_temp = ""
                          
                             Case 10:
                          
                             Case Else:
                          
                               Buf_1_temp = Buf_1_temp + Chr(udr_1)
                          
                          
                            End Select
                          
                          
                          Return

                          دیدگاه

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