EDIT: Actually, nevermind - I misread the diagram on page 13 of the 16F628 datasheet and mistook CLKout for OSC1, but I do have a question. If I understand correctly, in shockburst mode, the timing requirements are all “At least ___ns”. So the same PIC running at 4MHz should also work with no problems?
Original text:
I have a question about the example code for the RF-24G transmitter. As long as the execution pipeline is filled, the PIC16 architecture manages 1 instruction / cycle (if I understand correctly) At 8MHz, a clock period is only 125ns. In which case the following code:
BTFSS config_setup+2,7 ;RX_DATA = config_setup.23
BCF PORTA,1
BTFSC config_setup+2,7
BSF PORTA,1
BSF PORTA,4 ;RX_CLK1 = 1
BCF PORTA,4 ;RX_CLK1 = 0
doesn’t guarantee 500ns between data and clock, nor does it guarantee 500ns of minimum clock length (Thmin on page 22). Even if we take into account that jumps take 2 cycles, the maximum delay between our writing to the data port and toggling the clock is < 500ns. I’m having some trouble getting my RF-24G to work, an I wonder if this is a problem - or I’m missing something big.