Hi,
I am using my LPC2364 at 75Mhz and i am getting maximum i|O frequency upto 13MHz only. Even if i toggle just one bit.
I want upto 16MHz minimum frequency of I\O. Can i do it with Thumb instructions or 13Mhz is the max??
The ideal speed of 18MHz will be for something like this
LDR R0,=FIO2PIN0 MOV R1,#0x01 MOV R2,#0x02
STRB R1,[R0] STRB R2,[R0] STRB R1,[R0] STRB R2,[R0] ....
ANY data loading instructions in between the STRB will reduce the speed (say a mov instruction - 1 cycle which will be required in your case) will reduce the speed.
If your requirement is only that a limited sequence output should be fast, then you can hold the data in registers (say R1-R10)and store it to the IO in succession.
Suvidh
Hi Suvidh,
Thank you for the explanation. I have to increment the same from 0 to 1024(decimal). and i can not have that many registers. Even if i use the increment then it will waste one cyle.
I have got a way for it. i am using counters for the same. i am using commands
FIOPINSET=0x01; FIOPINCLR=0x01;
this usis the same method that u have written. 0x01 is stored in a register and it gives me 18MHz pulses. I am generating the rest from giving this signal to a counter.
Thank you for the replies.