уже недели 2 или 3 пытаюсь хоть что то получить из этих радио модулей. Ничего не выходит. Я прям совсем уже растроился :(. пробовал разное но в конце концов хочу хотябы из них device version: и device type: получить. вот пример кода и подключение. Может я чего не так делаю???
$regfile = "m8def.dat"
$hwstack = 32
$swstack = 10
$framesize = 40
$crystal = 12000000
$baud = 19200
Baud = 19200
Config Portd.2 = Input 'RFM23 nIRQ IN
Nirq Alias Pind.2
Config Portb.2 = Output 'RFM23 nSEL OUT
Nsel Alias Portb.2
Set Nsel
Declare Sub Rf23_write(byval Wr As Word) As Word
Declare Sub Rf23_read(byval Rd As Byte) As Byte
Dim Rf23_rd As Byte
Dim Cmd(2) As Byte
Config Spi = Hard , Interrupt = Off , Data Order = Msb , Master = Yes , Polarity = Low , Phase = 0 , Clockrate = 64 , Noss = 1 , Spiin = 0
Spiinit
Do
Waitms 100
Print "--------------------------------------------------------"
Print "Sbros SW: - "
Call Rf23_write(&H0780)
Print "________________________________________________________" 'SW Reset
Waitms 10
Print
Print "*************************"
Print "* *"
Call Rf23_read(&H00) 'Get device type
Print "device type: " ; Bin(rf23_rd)
Print "* *"
Print "*************************"
Print "* *"
Call Rf23_read(&H01) 'Get device version
Print "device version: " ; Bin(rf23_rd)
Print "* *"
Print "*************************"
Print
Print
Wait 5
Loop
'_________________________________________________________________________________
Sub Rf23_read(byval Rd As Byte) As Byte
Reset Nsel
Spiout Rd , 1
Print
Print "_ Rf23_read Zapros v RFM23: " ; Rd 'write register address
Spiin Rf23_rd , 1 'store register value in Rf23_rd
Print "_ Rf23_read Priem iz RFM23: " ; Rf23_rd
Print
Set Nsel
End Sub
Sub Rf23_write(byval Wr As Word) As Word
Cmd(2) = Low(wr) 'low byte
Cmd(1) = High(wr) 'high byte
Set Cmd(1).7 'set Write bit
Reset Nsel
Spiout Cmd(1) , 2
Print "! ..Rf23_write Zapros v RFM23 Cmd(1)-" ; Cmd(1) ; " Cmd(2)-" ; Cmd(2) ; " !"
Set Nsel
End Sub
http://Pepelgrad.narod.ru/dgadai/test.JPG скрин с терминала
http://pepelgrad.narod.ru/dgadai/RFM23B.JPG схемка. извените за качество некогда было нормально сделать.