Gast
#325894
Hallo ! Ich sitze gerade mit dem Oszi an einem LPC2106 board (Eigenbau). In einer kleinen Schleife toggle ich einen Port Pin: ...<Intialisierung>... 1: str r0,[r1,#_IO0SET] str r0,[r1,#_IO0CLR] b 1b MAM auf maximale Beschleunigung, PLL auf 4-fach, Quarz 14.7456MHz. Mein Programm fuehre ich aus dem RAM aus. Prophylaktisch habe ich die Flash-Waitstates (unzulaessigerweise) auf 1 gesetzt. ABER: Am Port ergeben sich dann nur ca. 4Mhz. Erwarten wuerde ich etwa 60MHz/3 = 20MHz, da die 3*32bit Code-Sequenz in eine 128bit Cache-Line passt, un damit zu keinem fetch fuehren sollte. Da VPB-Teiler = 1 gesetzt und damit CCLK = PCLK = knapp 60Mhz frage ich mich, warum das so langsam ist. In welchem Manual kann ich lesen, welche Frequenz theoretisch herauskommen musste? Wo steht eigentlich, wie schnell ich PCLK laufen lassen darf? Teilt die GPIO-Einheit den PCLK nochmals herunter? Dauert der Befehl STR so lange?? Da die LPC2101..2103 ein 'fast IO' haben nehm ich mal an dass es am GPIO liegt.