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





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









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





صفحه 2 از 2 نخست 12
  1. #11
    2013/07/08
    اصفهان
    696
    566

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

    نقل قول نوشته اصلی توسط ehsan2774
    با تشکر از شما
    چطور میشه بافر را خالی کرد دستور خاصی دارد؟؟؟
    بله، برای خالی شدن بافر سریال، یک روش مثلا این زیر روال به نام Flushbuf است:

    کد:
    Sub Flushbuf() 
     
      Waitms 100                        'give some time to get data if it is there
    
     Do
      B = Inkey()                       'Clean entire flush buffer
     Loop Until B = 0
     
    End Sub
  2. #12
    2013/07/08
    اصفهان
    696
    566

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

    .
  3. #13
    2013/09/03
    1,992
    716

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

    فارسی ک جواب نمیگیرید
    اینو سرچ کنید:
    a library for uart in bascom avr using circular buffer
    تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

    Hidden Content


    Hidden Content
  4. #14
    2011/11/12
    276
    10

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

    نقل قول نوشته اصلی توسط مهندس نوآور
    بله، برای خالی شدن بافر سریال، یک روش مثلا این زیر روال به نام Flushbuf است:

    کد:
    Sub Flushbuf() 
     
      Waitms 100                        'give some time to get data if it is there
    
     Do
      B = Inkey()                       'Clean entire flush buffer
     Loop Until B = 0
     
    End Sub
    ممنونم ازتون
    میشه بگین متغیر B برای چی استفاده کردین؟؟
    دستور inkey داره چیرو میگیره از پورت سریال ؟؟؟
    یکم توضیح بدین لطفا؟؟
    *****عيب جامعه اين است که همه مي خواند آدم مهمي باشند ولي هيچ کس نمي خواهد فرد مفيدي باشد.*****
    http://electerodl.ir/forum
  5. #15
    2014/01/02
    اهر
    62
    11

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

    با سلام خدمت دوستان واساتید عزیز
    بنده برای ارتباط با ماژول سیم 800 از uart میکرو استفاده میکنم ولی متاسفانه بعد از اینکه وقفه سریال میاد برنامه داخل وقفه گیر میکنه و به جای قبلی برنمیگرده البته دستورات داخل وقفه رو انجام میده و وقتی هم وقفه تایمر میاد میره به اون ومجدد برمیگرده به وقفه سریال حتی بجای دستور retun از gotoهم استفاده کردم که کلا برنامه کار نکردالبته وقتی کل دستورات شرطی رو داخل وقفه سریال میزارم همشون درست عمل میکنه برنامه رو میزارم دوستان راهنمایی بفرمایید که اشکال کار کجاست پیشاپیش ممنون ازراهنمایی عزیزان
    کد:
    $regfile = "m16def.dat"
    $crystal = 8000000
    $hwstack = 256
    $swstack = 256
    $framesize = 256
    $baud = 9600
    Config Lcd = 16 * 2
    Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , _
    Db7 = Portc.7 , E = Portc.3 , Rs = Portc.2
    Enable Interrupts
    Enable Ovf1
    Enable Urxc
    On Urxc Data_received
    Config Timer1 = Timer , Prescale = 256
    On Timer1 Tm
    
    
    Dim C As Byte , D As Byte , V As Byte : D = 0 : V = 0
    Dim B As String * 2 , E As String * 5 , A As String * 30 : A = "" : B = ""
    
    
    Config Porta = Output
    Open "comD.5:9600,8,n,1" For Output As #1
    
    
    Declare Sub Gg
    Declare Sub Kh
    Declare Sub Al
    Declare Sub Bargasht
    Declare Sub Noant
    Declare Sub Data_received
    
    
    Deflcdchar 1 , 31 , 31 , 14 , 4 , 4 , 4 , 4 , 4
    Deflcdchar 2 , 32 , 32 , 32 , 32 , 32 , 32 , 3 , 15
    Deflcdchar 3 , 32 , 32 , 32 , 1 , 7 , 31 , 31 , 31
    Deflcdchar 4 , 32 , 3 , 15 , 31 , 31 , 31 , 31 , 31
    
    
    Cursor Off
    
    
    Locate 1 , 1
    Lcd Chr(1)
    
    
     Start Timer1
    
    
    Do
       If V > 10 Then
        V = 0
        Print "AT+CSQ"
       End If
    
    
      If A = "RING" Then
        Wait 4
        Print "ATA"
      End If
    
    
       If A = "+DTMF: 1" Then Print#1 , "ATD09145777345;"
       If A = "+DTMF: 2" Then Print#1 , "ATD09931669516;"
       If A = "+DTMF: 3" Then Print#1 , "ATH"
       If A = "+DTMF: 4" Then Print "ATH"
    
    
     E = Left(a , 4)
    
    
        If E = "+CSQ" Then
          B = Mid(a , 7 , 2)
          D = Val(b)
          If D < 10 Then Call Noant
          If D < 15 Or D > 9 Then Call Gg
          If D < 20 Or D > 14 Then Call Kh
          If D > 20 Then Call Al
          B = ""
        End If
         D = 0
         E = ""
    
    
    
    
    Loop
    
    
    End
    
    
     Data_received:
     A = ""
       Do
    
    
    
    
        C = Inkey()noecho
    
    
            Select Case C
    
    
             Case 0:
    
    
             Case 13 :
    
    
               If A <> "" Then Exit Do
    
    
             Case 10 :
    
    
               If A <> "" Then Exit Do
    
    
             Case Else
    
    
                A = A + Chr(c)
          End Select
    
    
       Loop
    
    
    
    
     Return
    
    
    
    
    
    
    Sub Gg:
     Locate 1 , 2
     Lcd Chr(2) ; "  "
    End Sub
    
    
    Sub Kh:
     Locate 1 , 2
     Lcd Chr(2) ; Chr(3) ; " "
    End Sub
    
    
    Sub Al
     Locate 1 , 2
     Lcd Chr(2) ; Chr(3) ; Chr(4)
    End Sub
    
    
    Sub Noant
     Locate 1 , 2
     Lcd "NO "
    End Sub
    
    
    Tm:
     V = V + 1
    Return
    ویرایش توسط AMIR987 : 2021/12/04 در ساعت 19:37
    در ارزويه روزي که تمام جوانان اين مملکت تمامي امکانات بروز را براي تحقق به ايده هاي خود در اختيار داشته باشند.....................
صفحه 2 از 2 نخست 12
نمایش نتایج: از 11 به 15 از 15

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

  1. ارتباط سریال با وقفه در بسکام
    توسط MARAL_7133 در انجمن میکروکنترلرهای AVR
    پاسخ: 36
    آخرين نوشته: 2017/11/11, 13:54
  2. مشکل با وقفه ارتباط سریال
    توسط ehsan2774 در انجمن میکروکنترلرهای AVR
    پاسخ: 2
    آخرين نوشته: 2015/08/30, 18:19
  3. مشکل ارتباط دو میکرو از طریق وقفه سریال
    توسط webyou در انجمن میکروکنترلرهای AVR
    پاسخ: 0
    آخرين نوشته: 2015/04/08, 19:37
  4. مشکل در وقفه ارتباط سریال
    توسط saeedazari در انجمن میکروکنترلرهای AVR
    پاسخ: 5
    آخرين نوشته: 2012/06/14, 00:35
  5. مشکل با وقفه ارتباط سریال
    توسط mohsen_ff در انجمن میکروکنترلرهای AVR
    پاسخ: 5
    آخرين نوشته: 2012/04/16, 17:56

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

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

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

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