Gast
#3202175
Hallo, könnte mir mal bitte jemand erklären, wie die Berechnung einer µs aus dem SystemCoreClock zu verstehen ist?
1 | |
2 | |
3 | |
4 | |
5 | |
Den Code-Ausschnitt habe ich aus der CMSIS lpc18xx_emc.c. Ich habe das bisher so verstanden, dass der SystemCoreClock, der aktuelle Systemtakt ist. Also angenommen ich habe in der Funktion CGU_Init(): SetPLL1(6) programmiert. Dann ist PLL1 nach dem Ausführen von CGU_Init() die aktuelle Taktquelle und berechnet sich aus 6*12MHz = 72MHz. Somit müsste SystemCoreClock jetzt auch 72MHz sein. Weiter in der Berechnung erhalte ich 72 / 3 = 24. aus us*= ... ergibt sich: 1µs = (SystemCoreClock / 1000000) / 3 Wo kommt die drei her? Ich würde vermuten, dass es so richtig ist: SystemCoreClock / 1000000 = 72 F_CPU / 72 = 1000000 Hz 1/1000000Hz = 1µs Wie kann ich die Formel aus der CMSIS verstehen? Oder ist das ein Fehler in der CMSIS Programmierung? Gruß Martin