Hi,
I want to use the transceiver CC2500 for sending a byte of data. I configure the CC2500 for transmission, but does not take place. I am not able to get the cause of the problem? Can someone please help?
If you do not understand assembly language, I would be the solution to my problem in language C. Then I try to translate it.
This is the code I use to configure the CC2500:
bcf PORTB,CSn
wait
btfsc PORTB,1 ; waiting CHIP_RDYn = 0
goto wait
movlw 0x08
call SEND
movlw 0x44 ; Fixed Packet Length Mode
call SEND ; PKCTRL0=0x44
movlw 0x06
call SEND ; packet length --> 1 byte
movlw 0x01 ; PKTLEN=0x01
call SEND
movlw 0x02
call SEND
movlw 0x06 ; IOCFG0=0x06
call SEND
movlw 0x3F
call SEND
movlw 0xAA ; data 0xAA --> TX FIFO
call SEND
movlw 0x35
call SEND ; STROBE TX
start
btfss PORTA,4 ; checking GDO0 = 1
goto start
finish
btfsc PORTA,4 ; checking GDO0 = 0
goto finish
movlw 0x39
call SEND ; STROBE SLEEP
bsf PORTB,CS_C ; SLEEP MODE !
;;; ROUTINE SEND ;;;
SEND
movwf SSPBUF
waiting
bsf STATUS,RP0
btfss SSPSTAT,BF
goto waiting
bcf STATUS,RP0
movf SSPBUF,W
return