logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Bascom rr3 odbiera bzdury pomocy

Kubaand 10 Kwi 2010 18:31 1049 1
REKLAMA
  • #1 7944322
    Kubaand
    Poziom 10  
    Witam zakupiłem nadajnik i odbiornik (rr3,rt14) podłączyłem pod atmegi poprzez rs-a(uarta).Jedna atmega to termometr króry wysyła temperature a druga atmega ma odbierać i wyświetlać na LCD. Testowałem programy przy połączeniu kabelkiem i wszystko było ok gdy mam podłączony nadajnik rt14 i odbiornik do drugiego układu to wyświetlacz pokazuje za każdym razem inne cyfry (śmieci) . Może któryś z kolegów budował może jakiś układ na tych modułach nadawczo odbiorczych i doradzi coś?
    oto program do nadajnika:
    
    $crystal = 7200000                                          'kwarc
    $baud = 1200                                                'predkosc transmisji
    Config Pinb.1 = Output                                      'dioda
    Config Pinb.2 = Output                                      'dioda
    Config Pinc.1 = Output                                      'dioda
    Config 1wire = Portd.7                                      '1wire
    'Config Serialout = Buffered , Size = 20
    'Enable Interrupts
    Dzielona Alias Portb.2
    Dczerwona Alias Portb.1
    Dzolta Alias Portc.1
    Declare Sub Odczyt_temp
    Dim Bd(9) As Byte
    Dim Tmp As Byte
    Dim T As Integer
    Dim T1 As Integer
    Wait 1
    Set Dzielona
    Wait 1
    Set Dczerwona
    Wait 1
    Set Dzolta
    Wait 1
    Do
    Call Odczyt_temp
    Print  T 
    Reset Dzielona
    Waitms 25
    Set Dzielona
    Wait 4
    Loop
    End
    Sub Odczyt_temp                                             'procedura odczytu temp
    1wreset
    1wwrite &HCC
    1wwrite &H44
    Waitms 750
    1wreset
    1wwrite &HCC
    1wwrite &HBE
    Bd(1) = 1wread(9)
    Tmp = Bd(1) And 1                                           ' 0.1C
    If Tmp = 1 Then Decr Bd(1)
    T = Makeint(bd(1) , Bd(2))
    T = T * 50 : T = T - 25 : T1 = Bd(8) - Bd(7) : T1 = T1 * 100
    T1 = T1 / Bd(8) : T = T + T1 : T = T / 10
    End Sub
    

    a to odbiornik:
    
    $regfile = "m8def.dat"
    $crystal = 12000000
    $baud = 1200
    Config Lcd = 16 * 1
    Config Lcdpin = Pin , Db4 = Portd.5 , Db5 = Portd.4 , Db6 = Portd.3 , Db7 = Portd.2 , E = Portd.6 , Rs = Portd.7
     'Config Serialin = Buffered , Size = 5
     'Enable Interrupts
    Dim I As Byte
    Dim Znak As integer
    'Dim A As Byte
    Cls
    Cursor Off
    'A = 1
    Do
     I = Ischarwaiting()
     If I = 1 Then
     Znak = Inkey()
     Print Znak
     Lcd Znak
    End If
    Waitms 500
    Cls
    Loop
    End
    

    przypuszczam ze błąd tkwi w którymś programie
    za pomoc dziekuje
  • REKLAMA
  • #2 8110908
    Kubaand
    Poziom 10  
    Bez modułów dodatkowych niestety nic nie idzie zdziałać pozdrawiam
REKLAMA