PDA

View Full Version : does anyone have a better way for this



pyrogeek
- 12th September 2011, 03:04
i'm going to use a rotary encoder for RF channel selection, once the encoder is read for the channel number, i have to write 8 different bytes for each frequency to the tranceiver. they are sent with the MSSP, which i have never used:D. Just wondering if anyone has a better way? and if anyone can tell me how they make the code show up in the little window instead of with all this text that would be kool to!:confused:


SEND_TO_TRANS:

FOR CNT = 0 TO PACKETCOUNT
SSP1BUF = TRANSTXPACKET[CNT] ' TRANSFER TX DATA PACKET TO THE SSP1 BUFFER
IF SSP1CON1.7 = 1 THEN TXERROR ' CHECK SSP1CON1.7 TO SEE IF A WRITE COLLISION HAPPENED
WHILE SSP1STAT.0 = 0
PAUSEUS 2 ' LOOK TO SEE IF SSP1STAT.0 IS A 1 - 1 = RECEIVE COMPLETE 0 = RECEIVE NOT COMPLETE
WEND
TRANSRXPACKET[CNT] = SSP1BUF ' TRANSFER SSP1 BUFFER TO THE RX'ED DATA PACKET
NEXT
PACKETCOUNT = 0
GOTO MAIN1

FINDCHANNEL:
CHANNEL.0 = CHANNELPIN0
CHANNEL.1 = CHANNELPIN1
CHANNEL.2 = CHANNELPIN2
CHANNEL.3 = CHANNELPIN3
IF CHANNEL = STORED_CHANNEL THEN GOTO MAIN1

STORED_CHANNEL = CHANNEL

SET_CHANNEL:

FOR CNT = 0 TO 7
ON CHANNEL GOTO LOADCHNL0,LOADCHNL1,LOADCHNL2,LOADCHNL3,LOADCHNL4, LOADCHNL5,LOADCHNL6,LOADCHNL7,LOADCHNL8,LOADCHNL9
SET_CHANNELB:
NEXT
PACKETCOUNT = 7
GOTO DONE_LOADING

'************************************************* ******************************

LOADCHNL0:
LOOKUP CNT,[GCONREG,GCONREG_RXCH0TO4,R1CREG,R1CREG_CH0,P1CREG, P1CREG_CH0,S1CREG,S1CREG_CH0],TEMP
TRANSTXPACKET[CNT] = TEMP
GOTO SET_CHANNELB

'************************************************* ******************************

LOADCHNL1:
LOOKUP CNT,[GCONREG,GCONREG_RXCH0TO4,R1CREG,R1CREG_CH1,P1CREG, P1CREG_CH1,S1CREG,S1CREG_CH1],TEMP
TRANSTXPACKET[CNT] = TEMP
GOTO SET_CHANNELB

'************************************************* ******************************

LOADCHNL2:
LOOKUP CNT,[GCONREG,GCONREG_RXCH0TO4,R1CREG,R1CREG_CH2,P1CREG, P1CREG_CH2,S1CREG,S1CREG_CH2],TEMP
TRANSTXPACKET[CNT] = TEMP
GOTO SET_CHANNELB

'************************************************* ******************************

LOADCHNL3:
LOOKUP CNT,[GCONREG,GCONREG_RXCH0TO4,R1CREG,R1CREG_CH3,P1CREG, P1CREG_CH3,S1CREG,S1CREG_CH3],TEMP
TRANSTXPACKET[CNT] = TEMP
GOTO SET_CHANNELB

'************************************************* ******************************

LOADCHNL4:
LOOKUP CNT,[GCONREG,GCONREG_RXCH0TO4,R1CREG,R1CREG_CH4,P1CREG, P1CREG_CH4,S1CREG,S1CREG_CH4],TEMP
TRANSTXPACKET[CNT] = TEMP
GOTO SET_CHANNELB

'************************************************* ******************************

LOADCHNL5:
LOOKUP CNT,[GCONREG,GCONREG_RXCH5TO9,R1CREG,R1CREG_CH5,P1CREG, P1CREG_CH5,S1CREG,S1CREG_CH5],TEMP
TRANSTXPACKET[CNT] = TEMP
GOTO SET_CHANNELB

'************************************************* ******************************

LOADCHNL6:
LOOKUP CNT,[GCONREG,GCONREG_RXCH5TO9,R1CREG,R1CREG_CH6,P1CREG, P1CREG_CH6,S1CREG,S1CREG_CH6],TEMP
TRANSTXPACKET[CNT] = TEMP
GOTO SET_CHANNELB

'************************************************* ******************************

LOADCHNL7:
LOOKUP CNT,[GCONREG,GCONREG_RXCH5TO9,R1CREG,R1CREG_CH7,P1CREG, P1CREG_CH7,S1CREG,S1CREG_CH7],TEMP
TRANSTXPACKET[CNT] = TEMP
GOTO SET_CHANNELB

'************************************************* ******************************

LOADCHNL8:
LOOKUP CNT,[GCONREG,GCONREG_RXCH5TO9,R1CREG,R1CREG_CH8,P1CREG, P1CREG_CH8,S1CREG,S1CREG_CH8],TEMP
TRANSTXPACKET[CNT] = TEMP
GOTO SET_CHANNELB

'************************************************* ******************************

LOADCHNL9:
LOOKUP CNT,[GCONREG,GCONREG_RXCH5TO9,R1CREG,R1CREG_CH9,P1CREG, P1CREG_CH9,S1CREG,S1CREG_CH9],TEMP
TRANSTXPACKET[CNT] = TEMP
GOTO SET_CHANNELB

'************************************************* ******************************

DONE_LOADING:
CNT = 0
GOTO SEND_TO_TRANS

mackrackit
- 12th September 2011, 10:06
Not sure that I have a solution for the first question but the second..

Place your code in between:
[ code] code goes here [ /code]

Just remove the spaces in the tags.

pyrogeek
- 12th September 2011, 12:40
thanks code the code tags i will remember it from now on and at least no one is laughing at the code