Hallo , mijn eerste post hier.
Ik wil een pic data laten doorgeven aan een tweede pic via een rf verbinding.
Code zender:
code:
Device 16F648A
Config INTRC_OSC_NOCLKOUT,WDT_OFF, PWRTE_ON, LVP_OFF, MCLRE_OFF ;X
ALL_DIGITAL TRUE
PORTA = %00000000
TRISA = %11111011
PORTB_PULLUPS On
HSERIAL_BAUD = 2400 ;baudrate 2400
HSERIAL_TXSTA = %00100000 ;transmit enable
Symbol led PORTA.2
Dim teller As Byte
Cls
DelayMS 200
teller=1
While 1= 1
HRSOut "111","oke",teller ;zend een keer per seconde een volgende waarde van teller
Toggle led ;led geeft aan dat programma draait
DelayMS 1000
Inc teller
If teller>250 Then teller=1
Wend
Code ontvanger:
code:
Device 16F628A
Config INTRC_OSC_NOCLKOUT, WDT_OFF, PWRTE_ON, LVP_OFF, MCLRE_OFF
ALL_DIGITAL TRUE
PORTB_PULLUPS On
HSERIAL_BAUD = 2400 ;baudrate 2800
HSERIAL_RCSTA = %10010000 ;Enable serial port and continuous receive
HSERIAL_CLEAR=On ;hef eventule ontvangst buffer overflow op
Declare LCD_DTPIN PORTA.0 ;lcd net niet helemaal standaard aangesloten
Declare LCD_ENPIN PORTA.7
Declare LCD_RSPIN PORTA.6
Dim waarde As Byte
DelayMS 500
Cls
While 1=1
HRSin Wait("oke"),waarde ;nadat "oke" ontvangen is de volgende waarde doorgeven
Print At 1,1, DEC3 waarde ;en deze op lcd scherm laten zien
Wend
End
De zenderpic en ontvangerpic zijn op twee aparte breadboardjes opgebouwd met hun eigen voeding (trafo + standaard 7805 regeling). Zender
en ontvanger zijn RF Link - 2400bps - 434MHz van Sparkfun Electronics http://www.sparkfun.com/commerce/categories.php?cPath=16_79.
Als met een draad de tx uitgang met de rx ingang (en de massa's) verbonden zijn werkt alles zoals verwacht. Wordt de draad vervangen door
zender/ontvanger paar dan:
Zonder "111" en "oke" komt er continue rommel binnen.(geen "wait" statement)
Met alleen "oke" ( en uiteraard "wait" statement) komt er niets door en met iets voor "oke" komt ongeveer de helft door. Ik heb ergens gelezen
dat de ontvanger op het breadboard rare effecten kan geven, deze zit nu op een eigen printje, geen veranderring. Ik heb nog een tweede setje
zender/ontvanger, alles gewisseld, maakt niks uit. Ik heb weinig verstand van hf dacht misschien aan storing van computer, dimmer,
draadloos weerstation. Het één uitschakelen en wat meer afstand tot het ander heeft geen soelaas geboden. Verandering van de afstand tussen
zender en ontvanger doet het ontvangst percentage ook niet veranderen , evenals verlagen van de baudrate. Volgens de handleiding zou het
zender/ontvanger paar niets anders doen dan de gegevens doorgeven,dus geen codering. Wie weet hoe ik mijn ontvangst percentage omhoog
kan krijgen?
Vriendelijke groet, Ted